使用亞馬遜 CloudWatch 日誌監控 - AWS IoT Analytics

AWS IoT Analytics 不再提供給新客戶。的現有客戶 AWS IoT Analytics 可繼續正常使用此服務。進一步了解

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

使用亞馬遜 CloudWatch 日誌監控

AWS IoT Analytics支持使用亞馬遜記錄 CloudWatch。您可以使用 PutLoggingOptionsAPI 操作啟用和設定亞馬遜 CloudWatch 日誌記錄。AWS IoT Analytics本節說明如何使PutLoggingOptions用AWS Identity and Access Management (IAM) 來設定和啟用 Amazon CloudWatch 日誌記錄AWS IoT Analytics。

如需 CloudWatch 日誌的詳細資訊,請參閱《Amazon CloudWatch Logs 使用者指南》。如需AWS IAM 的詳細資訊,請參閱《AWS Identity and Access Management使用者指南》

注意

在啟用AWS IoT Analytics記錄功能前,請確保您了解 Lo CloudWatch gs 存取許可。具有 CloudWatch Logs 存取權限的使用者可以看到您的除錯資訊。如需詳細資訊,請參閱 Amazon CloudWatch Logs 的身分驗證和存取控制

建立 IAM 角色以啟用記錄

建立 IAM 角色以啟用 Amazon 的日誌記錄 CloudWatch

  1. 使用 AWSIAM 主控台或下列AWS IAM CLI 命令建立具有信任關係政策 (信任政策) 的新 IAM 角色。CreateRole信任政策會將採用該角色的許可授予 Amazon CloudWatch 之類的許可授予實體 (例如 Amazon)。

    aws iam create-role --role-name exampleRoleName --assume-role-policy-document exampleTrustPolicy.json

    exampleTrustPolicy.json文件包含以下內容。

    注意

    此範例包含全域條件內容金鑰,以防範混淆代理人安全問題。將 123456789012 取代為您的AWS帳戶識別碼和 aws-region,並以您的AWS資源所在AWS地區取代。如需詳細資訊,請參閱預防跨服務混淆代理人

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "iotanalytics.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "aws:SourceAccount": "123456789012" }, "ArnLike": { "aws:SourceArn": "arn:aws:iotanalytics:aws-region:123456789012:*" } } } ] }

    稍後當您呼叫AWS IoT AnalyticsPutLoggingOptions命令時,您可以使用此角色的 ARN。

  2. 使用AWS IAM PutRolePolicy將許可政策 (arole policy) 附加到您在步驟 1 中建立的角色。

    aws iam put-role-policy --role-name exampleRoleName --policy-name examplePolicyName --policy-document exampleRolePolicy.json

    exampleRolePolicy.json 檔案包含下列內容。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream" ], "Resource": [ "arn:aws:logs:*:*:*" ] } ] }
  3. 要AWS IoT Analytics授予將日誌記錄事件放到亞馬遜的權限 CloudWatch,請使用亞馬遜 CloudWatch 命令PutResourcePolicy

    注意

    為了避免混淆的副安全性問題,我們建議您aws:SourceArn在資源策略中指定。這會限制存取權限,只允許來自指定帳戶的要求。如需混淆代理人問題的更多資訊,請參閱預防跨服務混淆代理人

    aws logs put-resource-policy --policy-in-json exampleResourcePolicy.json

    exampleResourcePolicy.json檔案包含下列資源策略。

    { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "iotanalytics.amazonaws.com" }, "Action": "logs:PutLogEvents", "Resource": "*", "Condition":{ "ArnLike":{ "aws:SourceArn":"arn:aws:iotanalytics:us-east-1:123456789012:*/*" }, "StringEquals":{ "aws:SourceAccount":"123456789012" } } ] }

設定及啟用記錄

使用命PutLoggingOptions令設定和啟用 Amazon CloudWatch 日誌記錄AWS IoT Analytics。loggingOptions 欄位中的 roleArn,應為您在前一節所建立的角色 ARN。您也可以使用 DecribeLoggingOptions 命令來檢查記錄選項設定。

PutLoggingOptions

設定或更新記AWS IoT Analytics錄選項。如果您更新任何loggingOptions欄位的值,變更最多需要一分鐘才會生效。此外,如果您變更附加至roleArn欄位中指定角色的原則 (例如,要更正無效的策略),該變更最多可能需要五分鐘才會生效。如需詳細資訊,請參閱PutLoggingOptions

DescribeLoggingOptions

擷取AWS IoT Analytics記錄選項的目前設定。如需詳細資訊,請參閱 DescribeLoggingOptions

命名空間、量度和維度

AWS IoT Analytics將以下指標放入 Amazon CloudWatch 儲存庫中:

命名空間

AWS/物IoTAnalytics

指標 描述

ActionExecution

執行的動作數目。

ActionExecutionThrottled

調節的動作次數。

ActivityExecutionError

執行管道活動時產生的錯誤數量。

IncomingMessages

進入頻道的訊息數量。

PipelineConcurrentExecutionCount

已同時執行的管線活動數目。

維度 描述

ActionType

正在監控的動作類型。

ChannelName

正在監控的頻道名稱。

DatasetName

正在監控的資料集名稱。

DatastoreName

正在監控的資料存放區名稱。

PipelineActivityName

正在監控的管道活動名稱。

PipelineActivityType

正在監控的管道活動類型。

PipelineName

正在監控的管道名稱。