

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 将设备端日志上传到 Amazon CloudWatch
<a name="upload-device-logs-to-cloudwatch"></a>

您可以将设备端的历史日志上传到 Amazon CloudWatch ，以监控和分析设备在现场的活动。设备端日志可以包括系统、应用程序和设备日志文件。[此过程使用 CloudWatch Logs rules 操作参数将设备端日志发布到客户定义的日志组中。](https://docs.amazonaws.cn/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html)

## 工作原理
<a name="upload-process-overview"></a>

当 Amazon IoT 设备向 Amazon IoT 主题发送包含格式化日志文件的 MQTT 消息时，该过程就开始了。 Amazon IoT 规则监控消息主题并将日志文件发送到您定义的 CloudWatch 日志组。然后，您可以查看和分析信息。

**Topics**
+ [MQTT 主题](#upload-mqtt-topics-overview)
+ [规则操作](#upload-rule-action-overview)

### MQTT 主题
<a name="upload-mqtt-topics-overview"></a>

选择要用于发布日志的 MQTT 主题命名空间。我们建议将此格式用于公共主题空间 `$aws/rules/things/thing_name/logs`，并将此格式用于错误主题 `$aws/rules/things/thing_name/logs/errors`。建议使用日志和错误主题的命名结构，但不是必需要求。有关更多信息，请参阅[为 Amazon IoT Core设计 MQTT 主题](https://docs.amazonaws.cn/whitepapers/latest/designing-mqtt-topics-aws-iot-core/designing-mqtt-topics-aws-iot-core.html)。

通过使用推荐的公共主题空间，您可以使用 B Amazon IoT asic Ingest 保留主题。 Amazon IoT Basic Ingest 可以安全地将设备数据发送到 Amazon IoT 规则操作支持的 Amazon 服务。它会将 publish/subscribe 消息代理从摄取路径中移除，从而使其更具成本效益。有关更多信息，请参阅[借助基本摄取功能降低消息收发成本](https://docs.amazonaws.cn/iot/latest/developerguide/iot-basic-ingest.html)。

如果您使用 batchMode 上载日志文件，则您的消息必须遵循包括 UNIX 时间戳和消息的特定格式。有关更多信息，请参阅[CloudWatch 日志](https://docs.amazonaws.cn/iot/latest/developerguide/cloudwatch-logs-rule-action.html)规则操作中的 [BatchMode 的 MQTT 消息格式要求](https://docs.amazonaws.cn/iot/latest/developerguide/cloudwatch-logs-rule-action.html#cloudwatch-logs-rule-action-message-format)主题。

### 规则操作
<a name="upload-rule-action-overview"></a>

当 Amazon IoT 收到来自客户端设备的 MQTT 消息时， Amazon IoT 规则会监控客户定义的主题并将内容发布到您定义的 CloudWatch 日志组中。此过程使用 CloudWatch 日志规则操作来监控 MQTT 中是否有批量日志文件。有关更多信息，请参阅[CloudWatch 日志](https://docs.amazonaws.cn/iot/latest/developerguide/cloudwatch-logs-rule-action.html) Amazon IoT 规则操作。

#### 批量模式
<a name="upload-batch-mode-overview"></a>

 `batchMode`是 “ Amazon IoT CloudWatch 日志” 规则操作中的一个布尔参数。此参数是可选的，默认情况下处于关闭状态 (`false`)。要批量上传设备端日志文件，必须在创建规则时启用此参数 (`true`)。 Amazon IoT 有关更多信息，请参阅[Amazon IoT 规则操作](https://docs.amazonaws.cn/iot/latest/developerguide/iot-rule-actions.html)部分中的[CloudWatch 日志](https://docs.amazonaws.cn/iot/latest/developerguide/cloudwatch-logs-rule-action.html)。