本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
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资源策略,请运行命令并执行以下操作:
-
logging-policy-name
替换为要创建的策略的名称。 -
将 s
ource-AR
N 替换为Amazon IoT SiteWise资源的 ARN,例如资产模型或资产。要查找每种Amazon IoT SiteWise资源类型的 ARN,请参阅服务授权参考Amazon IoT SiteWise中定义的资源类型。 -
将
账户 ID
替换为与指定Amazon IoT SiteWise资源关联的Amazon账户 ID。
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 日志记录级别
更改日志记录级别(控制台)
使用以下过程可在 Amazon IoT SiteWise 控制台中更改日志记录级别。
管理 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" } }