Amazon IoT SiteWise使用亚马逊 CloudWatch 日志进行监控 - Amazon IoT SiteWise
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

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

Amazon IoT SiteWise使用亚马逊 CloudWatch 日志进行监控

您可以配置为Amazon IoT SiteWise将信息记录到日志中, CloudWatch 以监控服务并对其进行故障排除。

在使用 Amazon IoT SiteWise 控制台时,Amazon IoT SiteWise 会创建一个服务相关角色来允许服务代表您记录信息。如果不使用 Amazon IoT SiteWise 控制台,则必须手动创建一个服务相关角色来接收日志。有关更多信息,请参阅为 Amazon IoT SiteWise 创建服务相关角色

您必须有资源策略,Amazon IoT SiteWise允许将日志事件放入 CloudWatch 数据流。要为 CloudWatch Logs 创建和更新资源策略,请运行以下命令。logging-policy-name替换为要创建的策略的名称。

aws logs put-resource-policy --policy-name logging-policy-name --policy-document "{ \"Version\": \"2012-10-17\", \"Statement\": [ { \"Sid\": \"IoTSiteWiseToCloudWatchLogs\", \"Effect\": \"Allow\", \"Principal\": { \"Service\": [ \"iotsitewise.amazonaws.com\" ] }, \"Action\":\"logs:PutLogEvents\", \"Resource\": \"*\" } ] }"

CloudWatch 日志还支持 a ws:SourceArn 和 a ws:SourceAccount 条件上下文密钥。这些条件上下文键是可选的。

要创建或更新只Amazon IoT SiteWise允许将与指定资源关联的日志放入 CloudWatch 流中的Amazon IoT SiteWise资源策略,请运行命令并执行以下操作:

aws logs put-resource-policy --policy-name logging-policy-name --policy-document "{ \"Version\": \"2012-10-17\", \"Statement\": [ { \"Sid\": \"IoTSiteWiseToCloudWatchLogs\", \"Effect\": \"Allow\", \"Principal\": { \"Service\": [ \"iotsitewise.amazonaws.com\" ] }, \"Action\":\"logs:PutLogEvents\", \"Resource\": \"*\", \"Condition\":{\"StringLike\":{\"aws:SourceArn\":[\"source-ARN\"],\"aws:SourceAccount\":[\"account-ID\"]}}}]}"

默认情况下,Amazon IoT SiteWise不将信息 CloudWatch 记录到 Logs。要激活日志记录,请选择除禁用之外的其他日志记录级别(OFF)。 Amazon IoT SiteWise支持以下日志级别:

  • OFF— 日志记录已关闭。

  • ERROR— 记录错误。

  • INFO— 记录错误和信息性消息。

您可以将网关配置为通过将信息 CloudWatch 记录到 LogsAmazon IoT Greengrass。有关更多信息,请参阅监控网关日志

如果Amazon IoT Core要对Amazon IoT SiteWise规则操作进行故障排除,也可以配置为将信息 CloudWatch 记录到日志中。有关更多信息,请参阅Amazon IoT SiteWise 规则操作故障排除

管理 Amazon IoT SiteWise 中的日志记录(控制台)

可以将 Amazon IoT SiteWise 控制台用于以下日志记录配置任务。

查找日志记录级别(控制台)

使用以下过程可在 Amazon IoT SiteWise 控制台中查找当前的日志记录级别。

查找当前的 Amazon IoT SiteWise 日志记录级别
  1. 导航到 Amazon IoT SiteWise 控制台

  2. 在左侧导航窗格中,选择日志记录选项

    当前日志记录状态显示在日志记录状态下。如果激活了日志记录,则当前的日志级别将显示在 “详细级别” 下

更改日志记录级别(控制台)

使用以下过程可在 Amazon IoT SiteWise 控制台中更改日志记录级别。

更改 Amazon IoT SiteWise 日志记录级别
  1. 导航到 Amazon IoT SiteWise 控制台

  2. 在左侧导航窗格中,选择日志记录选项

  3. 选择 Edit(编辑)。

  4. 选择要激活的详细程度

  5. 选择 Save(保存)。

管理 Amazon IoT SiteWise 中的日志记录 (CLI)

可以将 Amazon Command Line Interface (Amazon CLI) 用于以下日志记录配置任务。

查找日志记录级别 (CLI)

运行以下命令可使用 Amazon CLI 查找当前 Amazon IoT SiteWise 日志记录级别。

aws iotsitewise describe-logging-options

此操作将采用以下格式返回包含日志记录级别的响应。

{ "loggingOptions": { "level": "String" } }

更改日志记录级别 (CLI)

运行以下 Amazon CLI 命令可更改 Amazon IoT SiteWise 日志记录级别。将 logging-level 替换为所需的日志记录级别。

aws iotsitewise put-logging-options --logging-options level=logging-level

示例:Amazon IoT SiteWise 日志文件条目

每个Amazon IoT SiteWise日志条目都包含事件信息和该事件的相关资源,因此您可以理解和分析日志数据。

以下示例显示了成功创建资产模型时Amazon IoT SiteWise记录的 Logs 条目。 CloudWatch

{ "eventTime": "2020-05-05T00:10:22.902Z", "logLevel": "INFO", "eventType": "AssetModelCreationSuccess", "message": "Successfully created asset model.", "resources": { "assetModelId": "a1b2c3d4-5678-90ab-cdef-11111EXAMPLE" } }