终止支持通知: AWS 将于 2025 年 12 月 15 日终止对的支持 AWS IoT Analytics。2025 年 12 月 15 日之后,您将无法再访问 AWS IoT Analytics 控制台或 AWS IoT Analytics 资源。有关更多信息,请参阅AWS IoT Analytics 终止支持。
本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 Amazon CloudWatch 活动进行监控
AWS IoT Analytics 当活动期间发生运行时错误时,会自动将 CloudWatch 事件发布到 Amazon Event AWS Lambda s。此事件包含详细的错误消息以及存储未处理通道消息的 Amazon Simple Storage Service (Amazon S3)对象的密钥。您可使用 Amazon S3 密钥重新处理未处理的通道消息。有关更多信息重新处理通道消息,请参阅 StartPipelineReprocessingAPI 参考中的AWS IoT Analytics API 和《亚马逊 CloudWatch 活动用户指南》中的 “什么是亚马逊 CloudWatch 事件”。
您还可以配置目标,使 Amazon E CloudWatch vents 能够发送通知或采取进一步行动。例如,您可以发送通知到 Amazon Simple Queue Service (Amazon SQS) 队列中,然后调用 StartReprocessingMessage
API 来处理保存在 Amazon S3 对象中的通道消息。Amazon Ev CloudWatch ents 支持多种类型的目标,例如:
-
Amazon Kinesis 流
-
AWS Lambda 函数
-
Amazon Simple Notification Service(Amazon SNS)主题
-
Amazon Simple Queue Service(Amazon SQS)队列
有关支持的目标列表,请参阅《亚马逊 EventBridge 用户指南》中的亚马逊 EventBridge 目标。
您的 CloudWatch 活动资源和相关目标必须位于您创建 AWS IoT Analytics 资源的 AWS 区域。有关更多信息,请参阅 AWS 一般参考 中的服务端点和配额。
针对 CloudWatch 活动中的运行时错误发送给 Amazon Even AWS Lambda ts 的通知采用以下格式。
{ "version": "version-id", "id": "event-id", "detail-type": "IoT Analytics Pipeline Failure Notification", "source": "aws.iotanalytics", "account": "aws-account", "time": "timestamp", "region": "aws-region", "resources": [ "pipeline-arn" ], "detail": { "event-detail-version": "1.0", "pipeline-name": "pipeline-name", "error-code": "LAMBDA_FAILURE", "message": "error-message", "channel-messages": { "s3paths": [ "s3-keys" ] }, "activity-name": "lambda-activity-name", "lambda-function-arn": "lambda-function-arn" } }
示例通知:
{ "version": "0", "id": "204e672e-ef12-09af-4cfd-de3b53673ec6", "detail-type": "IoT Analytics Pipeline Failure Notification", "source": "aws.iotanalytics", "account": "123456789012", "time": "2020-10-15T23:47:02Z", "region": "ap-southeast-2", "resources": [ "arn:aws:iotanalytics:ap-southeast-2:123456789012:pipeline/test_pipeline_failure" ], "detail": { "event-detail-version": "1.0", "pipeline-name": "test_pipeline_failure", "error-code": "LAMBDA_FAILURE", "message": "Temp unavaliable", "channel-messages": { "s3paths": [ "test_pipeline_failure/channel/cmr_channel/__dt=2020-10-15 00:00:00/1602805530000_1602805560000_123456789012_cmr_channel_0_257.0.json.gz" ] }, "activity-name": "LambdaActivity_33", "lambda-function-arn": "arn:aws:lambda:ap-southeast-2:123456789012:function:lambda_activity" } }