

终止支持通知： Amazon 将于 2025 年 12 月 15 日终止对的支持 Amazon IoT Analytics。2025 年 12 月 15 日之后，您将无法再访问 Amazon IoT Analytics 控制台或 Amazon IoT Analytics 资源。有关更多信息，请参阅[Amazon IoT Analytics 终止支持](https://docs.amazonaws.cn/iotanalytics/latest/userguide/iotanalytics-end-of-support.html)。

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

# 登录和监控 Amazon IoT Analytics
日志记录和监控

Amazon 提供了可用于监控的工具 Amazon IoT Analytics。您可以配置其中的一些工具以便进行监控。一些工具需要手动干预。建议您尽可能实现监控任务自动化。

## 自动监控工具


您可以使用以下自动监控工具来监视 Amazon IoT 和报告何时出现问题：
+ **Amazon CloudWatch Logs**-监控、存储和访问来自 Amazon CloudTrail 或其他来源的日志文件。有关更多信息，请参阅 *Amazon CloudWatch 用户指南*中的[什么是 Amazon CloudTrail](https://docs.amazonaws.cn/awscloudtrail/latest/userguide/cloudtrail-user-guide.html)监控日志文件。
+ **Amazon CloudTrail 日志监控**-在账户之间共享日志文件，通过将 CloudTrail 日志文件发送到 “日志” 来实时监控 CloudWatch 日志文件，用 Java 编写日志处理应用程序，并验证您的日志文件在传送后是否未更改。 CloudTrail有关更多信息，请参阅《*Amazon CloudTrail 用户指南》*中的[使用 CloudTrail 日志文件](https://docs.amazonaws.cn/awscloudtrail/latest/userguide/cloudtrail-working-with-log-files.html)。

## 手动监控工具


监控 Amazon IoT 的另一个重要部分是手动监控 CloudWatch 警报未涵盖的项目。 Amazon IoT CloudWatch、和其他 Amazon 服务控制台仪表板提供了 Amazon 环境状态的 at-a-glance视图。我们建议您同时查看日志文件 Amazon IoT Analytics。
+ 控制 Amazon IoT Analytics 台显示：
  + 渠道
  + Pipelines
  + 数据存储
  + 数据集
  + 笔记本
  + 设置
  + 学习
+  CloudWatch 主页显示：
  + 当前告警和状态
  + 告警和资源图表
  + 服务运行状况

  此外，您还可以使用 CloudWatch 执行以下操作：
  + 创建[自定义控制面板](https://docs.amazonaws.cn/AmazonCloudWatch/latest/monitoring/CloudWatch_Dashboards.html)以监控您关心的服务
  + 绘制指标数据图，以排除问题并弄清楚趋势
  + 搜索和浏览您的所有 Amazon 资源指标
  + 创建和编辑告警以接收问题通知

# 使用 Amazon CloudWatch 日志进行监控
使用 CloudWatch 日志进行监控

Amazon IoT Analytics 支持使用 Amazon 登录 CloudWatch。您可以使用 [`PutLoggingOptions`API 操作](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_PutLoggingOptions.html)为 Amazon IoT Analytics 启用和配置 Amazon CloudWatch 日志记录。本节介绍如何`PutLoggingOptions`与 Amazon Identity and Access Management (IAM) 配合使用来配置和启用 Amazon CloudWatch 日志记录 Amazon IoT Analytics。

有关 CloudWatch 日志的更多信息，请参阅 [Amazon CloudWatch 日志用户指南](https://docs.amazonaws.cn/AmazonCloudWatch/latest/logs/WhatIsCloudWatchLogs.html)。有关 Amazon IAM 的更多信息，请参阅[Amazon Identity and Access Management 用户指南](https://docs.amazonaws.cn/IAM/latest/UserGuide/introduction.html)。

**注意**  
在启用 Amazon IoT Analytics 日志记录之前，请确保您了解 CloudWatch 日志访问权限。有权访问 CloudWatch 日志的用户可以看到您的调试信息。有关更多信息，请参阅 [Amazon CloudWatch 日志的身份验证和访问控制](https://docs.amazonaws.cn/AmazonCloudWatch/latest/monitoring/auth-and-access-control-cw.html)。

## 创建 IAM 角色以启用日志记录


创建 IAM 角色以启用 Amazon 的日志记录 CloudWatch 

1. 使用 [Amazon IAM 控制台](https://console.amazonaws.cn/iam/)或以下 Amazon IAM CLI 命令创建具有信任关系策略（信任策略）的新 IAM 角色。[CreateRole](https://docs.amazonaws.cn/cli/latest/reference/iam/create-role.html)信任策略向实体（例如 Amazon CloudWatch）授予担任该角色的权限。

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

   `exampleTrustPolicy.json` 文件包含以下内容。
**注意**  
此示例包括一个全局条件上下文密钥，用于防止混淆代理安全问题。*123456789012*替换为您的 Amazon 账户 ID *aws-region* 和您的 Amazon 资源 Amazon 区域。有关更多信息，请参阅 [防止跨服务混淆座席](cross-service-confused-deputy-prevention.md)。

------
#### [ JSON ]

****  

   ```
   {
       "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:us-east-1:123456789012:*"
                   }
               }
           }
       ]
   }
   ```

------

   稍后在调用命令时，您将使用此角色的 ARN。 Amazon IoT Analytics `PutLoggingOptions`

1. 使用 Amazon IAM [PutRolePolicy](https://docs.amazonaws.cn/cli/latest/reference/iam/put-role-policy.html)将权限策略 (a`role policy`) 附加到您在步骤 1 中创建的角色。

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

    exampleRolePolicy.json 文件包含以下内容。

------
#### [ JSON ]

****  

   ```
   {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
       {
        "Effect": "Allow",
        "Action": [
        	"logs:CreateLogGroup",
        	"logs:CreateLogStream"
        ],
        "Resource": [
        	"arn:aws:logs:*:*:*"
        ]
       }
      ]
   }
   ```

------

1. 要 Amazon IoT Analytics 授予向亚马逊发布日志事件的权限 CloudWatch，请使用 Amazon CloudWatch 命令[PutResourcePolicy](https://docs.amazonaws.cn/cli/latest/reference/logs/put-resource-policy.html)。
**注意**  
为防范混淆代理安全问题，我们建议在资源策略中指定 `aws:SourceArn`。这限制了访问权限，仅接受来自指定账户的请求。有关混淆代理问题的更多信息，请参阅[防止跨服务混淆座席](cross-service-confused-deputy-prevention.md)。

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

   `exampleResourcePolicy.json` 文件包含以下资源策略。

------
#### [ 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 日志记录 Amazon IoT Analytics。`loggingOptions` 字段中的 `roleArn` 应为您在上一节中创建的角色的 ARN。还可以使用 `DecribeLoggingOptions` 命令来检查您的日志记录选项设置。

### PutLoggingOptions


设置或更新 Amazon IoT Analytics 日志选项。如果您更新任何 `loggingOptions` 字段的值，则最多需要一分钟，更改才能生效。此外，如果您更改附加到您在 `roleArn` 字段中所指定角色的策略（例如，更正无效策略），则最多需要五分钟，更改才能生效。有关更多信息，请参阅 [https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_PutLoggingOptions.html](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_PutLoggingOptions.html)。

### DescribeLoggingOptions


检索 Amazon IoT Analytics 日志选项的当前设置。有关更多信息，请参阅 [https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_DescribeLoggingOptions.html](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_DescribeLoggingOptions.html)。

### 命名空间、指标和维度


Amazon IoT Analytics 将以下指标放入 Amazon CloudWatch 存储库：


| 命名空间 | 
| --- | 
|  Amazon/Io TAnalytics  | 


| 指标 | 描述 | 
| --- | --- | 
|  ActionExecution  |  已执行的操作的数量。  | 
|  ActionExecutionThrottled  |  受限制的操作数。  | 
|  ActivityExecutionError  |  执行管道活动时生成的错误数。  | 
|  IncomingMessages  |  进入通道的消息数量。  | 
|  PipelineConcurrentExecutionCount  |  并发执行的管道活动数量。  | 


| 维度 | 描述 | 
| --- | --- | 
|  ActionType  |  正在监视的操作类型。  | 
|  ChannelName  |  正在监视的通道的名称。  | 
|  DatasetName  |  正在监视的数据集的名称。  | 
|  DatastoreName  |  正在监视的数据存储的名称。  | 
|  PipelineActivityName  |  正在监视的管道活动的名称。  | 
|  PipelineActivityType  |  正在监视的管道活动的类型。  | 
|  PipelineName  |  正在监视的管道的名称。  | 

# 使用 Amazon CloudWatch 活动进行监控
使用 CloudWatch 事件进行监控使用 CloudWatch 事件进行监控[https://docs.amazonaws.cn/iotanalytics/latest/userguide/cloudwatch-events.html](https://docs.amazonaws.cn/iotanalytics/latest/userguide/cloudwatch-events.html)

Amazon IoT Analytics 当活动期间发生运行时错误时，会自动将 CloudWatch 事件发布到 Amazon Event Amazon Lambda s。

Amazon IoT Analytics 当活动期间发生运行时错误时，会自动将 CloudWatch 事件发布到 Amazon Event Amazon Lambda s。此事件包含详细的错误消息以及存储未处理通道消息的 Amazon Simple Storage Service (Amazon S3)对象的密钥。您可使用 Amazon S3 密钥重新处理未处理的通道消息。有关更多信息[重新处理通道消息](reprocessing.md)，请参阅 [StartPipelineReprocessing](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_StartPipelineReprocessing.html)API *参考中的Amazon IoT Analytics API* 和《[亚马逊 CloudWatch 活动用户指南》中的 “什么是](https://docs.amazonaws.cn/AmazonCloudWatch/latest/events/WhatIsCloudWatchEvents.html)*亚马逊 CloudWatch 事件*”。

您还可以配置目标，使 Amazon E CloudWatch vents 能够发送通知或采取进一步行动。例如，您可以发送通知到 Amazon Simple Queue Service (Amazon SQS) 队列中，然后调用 `StartReprocessingMessage` API 来处理保存在 Amazon S3 对象中的通道消息。Amazon Ev CloudWatch ents 支持多种类型的目标，例如：
+  Amazon Kinesis 流
+ Amazon Lambda 函数
+ Amazon Simple Notification Service（Amazon SNS）主题
+ Amazon Simple Queue Service（Amazon SQS）队列

有关支持的目标列表，请参阅《[亚马逊* EventBridge 用户指南》中的亚马逊 EventBridge *目标](https://docs.amazonaws.cn/eventbridge/latest/userguide/eventbridge-targets.html)。

您的 CloudWatch 活动资源和相关目标必须位于您创建 Amazon IoT Analytics 资源的 Amazon 区域。有关更多信息，请参阅 *Amazon Web Services 一般参考* 中的[服务端点和配额](https://docs.amazonaws.cn/general/latest/gr/aws-service-information.html)。

针对 CloudWatch 活动中的运行时错误发送给 Amazon Even Amazon 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"
    }
}
```

# 通过 Amazon Ev CloudWatch ents 获取延迟数据通知
获取延迟数据通知延迟数据通知[https://docs.amazonaws.cn/iotanalytics/latest/userguide/late-data-notification.html](https://docs.amazonaws.cn/iotanalytics/latest/userguide/late-data-notification.html)

当延迟数据到达时，您可以使用此功能通过 Amazon Ev CloudWatch ents 接收通知。

当您使用来自指定时间段的数据创建数据集时，有些消息数据可能无法及时送达处理。为了允许延迟，您可以通过应用`queryAction`（SQL 查询）来指定[创建数据集`QueryFilter`](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_CreateDataset.html)时的`deltaTime`偏移量。 Amazon IoT Analytics 仍会处理在 delta 时间内到达的数据，并且您的数据集内容存在时间延迟。数据延迟通知功能 Amazon IoT Analytics 允许在增量时间之后数据到达时通过 [Amazon Ev CloudWatch en](https://docs.amazonaws.cn/AmazonCloudWatch/latest/events/WhatIsCloudWatchEvents.html) ts 发送通知。

您可以使用 Amazon IoT Analytics 控制台、[API](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/)、[Amazon Command Line Interface (Amazon CLI)](https://docs.amazonaws.cn/cli/latest/reference/iotanalytics/index.html) 或 [Amazon SDK](https://docs.amazonaws.cn/iot/latest/developerguide/iot-sdks.html) 为数据集指定延迟数据规则。

在 Amazon IoT Analytics API 中，`LateDataRuleConfiguration`对象表示数据集的后期数据规则设置。此对象是与 `CreateDataset` 和 `UpdateDataset` API 操作关联的 `Dataset` 对象的一部分。

## 参数


使用为数据集创建延迟数据规则时 Amazon IoT Analytics，必须指定以下信息：

**`ruleConfiguration` (`LateDataRuleConfiguration`)**  
包含延迟数据规则配置信息的结构。    
**`deltaTimeSessionWindowConfiguration`**  
包含增量时间会话窗口的配置信息的结构。  
[DeltaTime](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_DeltaTime.html) 指定时间间隔。您可以通过 `DeltaTime` 使用上次执行后到达数据存储的数据创建数据集内容。有关 `DeltaTime` 的示例，请参阅[使用增量窗口（CLI）创建 SQL 数据集](https://docs.amazonaws.cn/iotanalytics/latest/userguide/automate-create-dataset.html#automate-example6)。    
**`timeoutInMinutes`**  
一个时间间隔。你可以使用 `timeoutInMinutes` soh 来 Amazon IoT Analytics 批量处理自上次执行以来生成的延迟数据通知。 Amazon IoT Analytics 一次向 CloudWatch 事件发送一批通知。  
类型：整数  
有效范围：1-60

**`ruleName`**  
延迟数据规则的名称。  
类型：字符串

**重要**  
要指定 `lateDataRules`，数据集必须使用 `DeltaTime` 筛选器。

## 配置延迟数据规则(控制台)


以下步骤介绍了如何使用 Amazon IoT Analytics 控制台配置数据集的延迟数据规则。

**要配置延迟数据规则**

1. 登录 [Amazon IoT Analytics 控制台](https://console.amazonaws.cn/iotanalytics/)。

1. 在导航窗格中，选择 **数据集**。

1. 在**数据集**下，选择目标数据集。

1. 在导航窗格中，选择 **详细信息**。

1. 在 **增量窗口**部分中，选择**编辑**。

1. 在**配置数据选择筛选条件**下，执行以下操作：

   1. 对于**数据选择窗口**，选择**增量时间**。

   1. 对于**偏移**，输入一个时间段，然后选择一个单位。

   1. 对于**时间戳表达式**，输入一个表达式。这可以是时间戳字段的名称，也可以是可以推导时间的 SQL 表达式，例如*from\$1unixtime(time)*。

      有关如何编写时间戳表达式的更多信息，请参阅*《Presto 0.172 文档》*中的[日期与时间函数和运算符](https://prestodb.io/docs/0.172/functions/datetime.html)。

   1. 对于**延迟数据通知**，请选择**激活**。

   1. 对于**增量时间**，请输入一个整数。有效范围为 1-60。

   1. 选择**保存**。  
![\[在 Amazon IoT Analytics 控制台中配置数据选择过滤器。\]](http://docs.amazonaws.cn/iotanalytics/latest/userguide/images/late-data-notification-1.png)

## 配置延迟数据规则(CLI)


在 Amazon IoT Analytics API 中，`LateDataRuleConfiguration`对象表示数据集的后期数据规则设置。此对象是与 `CreateDataset` 和 `UpdateDataset` 关联的 `Dataset` 对象的一部分。您可以使用 [API](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/)、[Amazon CLI](https://docs.amazonaws.cn/cli/latest/reference/iotanalytics/index.html)、或 [Amazon SDK](https://docs.amazonaws.cn/iot/latest/developerguide/iot-sdks.html) 为数据集指定延迟数据规则。下面的示例使用了 Amazon CLI。

要使用指定的延迟数据规则创建数据集，请运行以下命令。以下命令假定该 `dataset.json` 文件位于当前目录中。

**注意**  
您可以使用 [UpdateDataset](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_UpdateDataset.html)API 更新现有数据集。

```
aws iotanalytics create-dataset --cli-input-json file://dataset.json
```

该`dataset.json`文件应包含以下内容：
+ *demo\$1dataset*替换为目标数据集名称。
+ *demo\$1datastore*替换为目标数据存储名称。
+ *from\$1unixtime(time)*替换为可以推导时间的时间戳字段或 SQL 表达式的名称。

  有关如何编写时间戳表达式的更多信息，请参阅*《Presto 0.172 文档》*中的[日期与时间函数和运算符](https://prestodb.io/docs/0.172/functions/datetime.html)。
+ *timeout*替换为 1—60 之间的整数。
+ *demo\$1rule*用任意名称替换。

```
{
    "datasetName": "demo_dataset",
    "actions": [
        {
            "actionName": "myDatasetAction",
            "queryAction": {
                "filters": [
                    {
                        "deltaTime": {
                            "offsetSeconds": -180,
                            "timeExpression": "from_unixtime(time)"
                        }
                    }
                ],
                "sqlQuery": "SELECT * FROM demo_datastore"
            }
        }
    ],
    "retentionPeriod": {
        "unlimited": false,
        "numberOfDays": 90
    },
    "lateDataRules": [
        {
            "ruleConfiguration": {
                "deltaTimeSessionWindowConfiguration": {
                    "timeoutInMinutes": timeout
                }
            },
            "ruleName": "demo_rule"
        }
    ]
}
```

## 订阅接收延迟数据通知


您可以在 “ CloudWatch 事件” 中创建规则，定义如何处理从中发送的延迟数据通知 Amazon IoT Analytics。当 Ev CloudWatch ents 收到通知时，它会调用规则中定义的指定目标操作。

### 创建 CloudWatch 事件规则的先决条件


在为创建 CloudWatch 事件规则之前 Amazon IoT Analytics，应执行以下操作：
+ 熟悉事件中的事件、规则和目标。 CloudWatch 
+ 创建和配置您的 CloudWatch 事件规则调用的[目标](https://docs.amazonaws.cn/eventbridge/latest/userguide/eventbridge-targets.html)。规则可调用多类目标，例如：
  +  Amazon Kinesis 流
  + Amazon Lambda 函数
  + Amazon Simple Notification Service（Amazon SNS）主题
  + Amazon Simple Queue Service（Amazon SQS）队列

  您的 CloudWatch 事件规则和关联目标必须位于您创建 Amazon IoT Analytics 资源的 Amazon 区域。有关更多信息，请参阅 *Amazon Web Services 一般参考* 中的[服务端点和配额](https://docs.amazonaws.cn/general/latest/gr/aws-service-information.html)。

有关更多信息，请参阅[什么是 CloudWatch 事件？](https://docs.amazonaws.cn/AmazonCloudWatch/latest/events/WhatIsCloudWatchEvents.html) 以及《[亚马逊 CloudWatch 活动*用户指南》中的 “亚马逊 CloudWatch 活动*入门](https://docs.amazonaws.cn/AmazonCloudWatch/latest/events/CWE_GettingStarted.html)”。

### 延迟数据通知事件


延迟数据通知的事件使用以下格式。

```
{
	"version": "0",
	"id": "7f51dfa7-ffef-97a5-c625-abddbac5eadd",
	"detail-type": "IoT Analytics Dataset Lifecycle Notification",
	"source": "aws.iotanalytics",
	"account": "123456789012",
	"time": "2020-05-14T02:38:46Z",
	"region": "us-east-2",
	"resources": ["arn:aws:iotanalytics:us-east-2:123456789012:dataset/demo_dataset"],
	"detail": {
		"event-detail-version": "1.0",
		"dataset-name": "demo_dataset",
		"late-data-rule-name": "demo_rule",
		"version-ids": ["78244852-8737-4650-aa4d-3071a01338fa"],
		"message": null
	}
}
```

### 创建 CloudWatch 事件规则以接收延迟的数据通知


以下过程向您展示如何创建向 Amazon SQS 队列发送 Amazon IoT Analytics 延迟数据通知的规则。

**创建 CloudWatch 事件规则**

1. 登录 [Amazon CloudWatch 控制台](https://console.amazonaws.cn/cloudwatch/)。

1. 在导航窗格中的 **Events**（事件）下，选择 **Rules**（规则）。

1. 在 **规则** 页面，选择 **创建规则**。

1. 在**事件源**下，选择**事件模式**。

1. 在**生成事件模式以按服务匹配事件**部分，执行以下操作：

   1. 对于**服务名称**，请选择 **IoT Analytics**

   1. 对于**事件类型**，请选择 **IoT Analytics 数据集生命周期通知**。

   1. 选择**特定数据集名称**，然后输入目标数据集的名称。

1. 在**目标**下，选择**添加目标\$1**。

1. 选择 **SQS 队列**，然后执行以下操作：

   1. 对于**队列\$1**，选择目标队列。

1. 选择 **Configure details（配置详细信息）**。

1. 在 **步骤 2：配置规则详细信息** 页面上，输入名称和描述。

1. 选择**创建规则**。

# 使用记录 Amazon IoT Analytics API 调用 Amazon CloudTrail
使用 记录 CloudTrail API 调用

Amazon IoT Analytics 与 Amazon CloudTrail一项服务集成，该服务提供用户、角色或 Amazon 服务在中执行的操作的记录 Amazon IoT Analytics。 CloudTrail 捕获一部分 API 调用 Amazon IoT Analytics 作为事件，包括来自 Amazon IoT Analytics 控制台的调用和对的代码调用 Amazon IoT Analytics APIs。如果您创建了跟踪，则可以允许将 CloudTrail 事件持续传输到 Amazon S3 存储桶，包括的事件 Amazon IoT Analytics。如果您未配置跟踪，您仍然可以在 CloudTrail 控制台的 “事件**历史记录” 中查看最新的事件**。使用收集的信息 CloudTrail，您可以确定向哪个请求发出 Amazon IoT Analytics、发出请求的 IP 地址、谁发出了请求、何时发出请求以及其他详细信息。

要了解更多信息 CloudTrail，请参阅[Amazon CloudTrail 用户指南](https://docs.amazonaws.cn/awscloudtrail/latest/userguide/cloudtrail-user-guide.html)。

## Amazon IoT Analytics 信息在 Amazon CloudTrail


CloudTrail 在您创建 Amazon 账户时已在您的账户上启用。当活动发生在中时 Amazon IoT Analytics，该活动会与其他 Amazon 服务 CloudTrail 事件一起记录在**事件历史**记录中。您可以在自己的 Amazon 账户中查看、搜索和下载最近发生的事件。有关更多信息，请参阅[使用事件历史查看 CloudTrail 事件](https://docs.amazonaws.cn/awscloudtrail/latest/userguide/view-cloudtrail-events.html)。

要持续记录您 Amazon 账户中的事件，包括的事件 Amazon IoT Analytics，请创建跟踪。跟踪允许 CloudTrail 将日志文件传输到 Amazon S3 存储桶。预设情况下，在控制台中创建跟踪时，此跟踪应用于所有 区域。跟踪记录 Amazon 分区中所有区域的事件，并将日志文件传送到您指定的 Amazon S3 存储桶。此外，您可以配置其他 Amazon 服务，以进一步分析和处理 CloudTrail 日志中收集的事件数据。有关更多信息，请参阅:
+ [创建跟踪概览](https://docs.amazonaws.cn/awscloudtrail/latest/userguide/cloudtrail-create-and-update-a-trail.html)
+ [ CloudTrail 支持的服务和集成](https://docs.amazonaws.cn/awscloudtrail/latest/userguide/cloudtrail-aws-service-specific-topics.html#cloudtrail-aws-service-specific-topics-integrations)
+ [配置 Amazon SNS 通知 CloudTrail](https://docs.amazonaws.cn/awscloudtrail/latest/userguide/configure-sns-notifications-for-cloudtrail.html)
+ [接收来自多个地区的 CloudTrail 日志文件](https://docs.amazonaws.cn/awscloudtrail/latest/userguide/receive-cloudtrail-log-files-from-multiple-regions.html)和[接收来自多个账户的 CloudTrail 日志文件](https://docs.amazonaws.cn/awscloudtrail/latest/userguide/cloudtrail-receive-logs-from-multiple-accounts.html)

Amazon IoT Analytics 支持将以下操作作为事件记录在 CloudTrail 日志文件中：
+ [CancelPipelineReprocessing](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_CancelPipelineReprocessing.html)
+ [CreateChannel](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_CreateChannel.html)
+ [CreateDataset](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_CreateDataset.html)
+ [CreateDatasetContent](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_CreateDatasetContent.html)
+ [CreateDatastore](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_CreateDatastore.html)
+ [CreatePipeline](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_CreatePipeline.html)
+ [DeleteChannel](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_DeleteChannel.html)
+ [DeleteDataset](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_DeleteDataset.html)
+ [DeleteDatasetContent](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_DeleteDatasetContent.html)
+ [DeleteDatastore](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_DeleteDatastore.html)
+ [DeletePipeline](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_DeletePipeline.html)
+ [DescribeChannel](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_DescribeChannel.html)
+ [DescribeDataset](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_DescribeDataset.html)
+ [DescribeDatastore](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_DescribeDatastore.html)
+ [DescribeLoggingOptions](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_DescribeLoggingOptions.html)
+ [DescribePipeline](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_DescribePipeline.html)
+ [GetDatasetContent](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_GetDatasetContent.html)
+ [ListChannels](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_ListChannels.html)
+ [ListDatasets](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_ListDatasets.html)
+ [ListDatastores](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_ListDatastores.html)
+ [ListPipelines](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_ListPipelines.html)
+ [PutLoggingOptions](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_PutLoggingOptions.html)
+ [RunPipelineActivity](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_RunPipelineActivity.html)
+ [SampleChannelData](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_SampleChannelData.html)
+ [StartPipelineReprocessing](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_StartPipelineReprocessing.html)
+ [UpdateChannel](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_UpdateChannel.html)
+ [UpdateDataset](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_UpdateDataset.html)
+ [UpdateDatastore](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_UpdateDatastore.html)
+ [UpdatePipeline](https://docs.amazonaws.cn/iotanalytics/latest/APIReference/API_UpdatePipeline.html)

每个事件或日志条目都包含有关生成请求的人员信息。身份信息有助于您确定以下内容：
+ 请求是使用根凭证还是 Amazon Identity and Access Management 用户凭证发出的。
+ 请求是使用角色还是联合用户的临时安全凭证发出的。
+ 请求是否由其他 Amazon 服务发出。

有关更多信息，请参阅 [CloudTrail userIdentity 元素](https://docs.amazonaws.cn/awscloudtrail/latest/userguide/cloudtrail-event-reference-user-identity.html)。

## 了解 Amazon IoT Analytics 日志文件条目


跟踪是一种配置，允许将事件作为日志文件传输到您指定的 S3 存储桶。 CloudTrail 日志文件包含一个或多个日志条目。事件代表来自任何来源的单个请求，包括有关请求的操作、操作的日期和时间、请求参数等的信息。 CloudTrail 日志文件不是公共 API 调用的有序堆栈跟踪，因此它们不会按任何特定的顺序出现。

以下示例显示了演示该`CreateChannel`操作的 CloudTrail 日志条目。

```
{
"eventVersion": "1.05",
"userIdentity": {
"type": "AssumedRole",
"principalId": "ABCDE12345FGHIJ67890B:AnalyticsChannelTestFunction",
"arn": "arn:aws:sts::123456789012:assumed-role/AnalyticsRole/AnalyticsChannelTestFunction",
"accountId": "123456789012",
"accessKeyId": "ABCDE12345FGHIJ67890B",
"sessionContext": {
"attributes": {
	"mfaAuthenticated": "false",
	"creationDate": "2018-02-14T23:43:12Z"
},
"sessionIssuer": {
	"type": "Role",
	"principalId": "ABCDE12345FGHIJ67890B",
	"arn": "arn:aws:iam::123456789012:role/AnalyticsRole",
	"accountId": "123456789012",
	"userName": "AnalyticsRole"
}
}
},
"eventTime": "2018-02-14T23:55:14Z",
"eventSource": "iotanalytics.amazonaws.com",
"eventName": "CreateChannel",
"awsRegion": "us-east-1",
"sourceIPAddress": "198.162.1.0",
"userAgent": "aws-internal/3 exec-env/AWS_Lambda_java8",
"requestParameters": {
"channelName": "channel_channeltest"
},
"responseElements": {
"retentionPeriod": {
"unlimited": true
},
"channelName": "channel_channeltest",
"channelArn": "arn:aws:iotanalytics:us-east-1:123456789012:channel/channel_channeltest"
},
"requestID": "7f871429-11e2-11e8-9eee-0781b5c0ac59",
"eventID": "17885899-6977-41be-a6a0-74bb95a78294",
"eventType": "AwsApiCall",
"recipientAccountId": "123456789012"
}
```

以下示例显示了演示该`CreateDataset`操作的 CloudTrail 日志条目。

```
{
"eventVersion": "1.05",
"userIdentity": {
"type": "AssumedRole",
"principalId": "ABCDE12345FGHIJ67890B:AnalyticsDatasetTestFunction",
"arn": "arn:aws:sts::123456789012:assumed-role/AnalyticsRole/AnalyticsDatasetTestFunction",
"accountId": "123456789012",
"accessKeyId": "ABCDE12345FGHIJ67890B",
"sessionContext": {
"attributes": {
	"mfaAuthenticated": "false",
	"creationDate": "2018-02-14T23:41:36Z"
},
"sessionIssuer": {
	"type": "Role",
	"principalId": "ABCDE12345FGHIJ67890B",
	"arn": "arn:aws:iam::123456789012:role/AnalyticsRole",
	"accountId": "123456789012",
	"userName": "AnalyticsRole"
}
}
},
"eventTime": "2018-02-14T23:53:39Z",
"eventSource": "iotanalytics.amazonaws.com",
"eventName": "CreateDataset",
"awsRegion": "us-east-1",
"sourceIPAddress": "198.162.1.0",
"userAgent": "aws-internal/3 exec-env/AWS_Lambda_java8",
"requestParameters": {
"datasetName": "dataset_datasettest"
},
"responseElements": {
"datasetArn": "arn:aws:iotanalytics:us-east-1:123456789012:dataset/dataset_datasettest",
"datasetName": "dataset_datasettest"
},
"requestID": "46ee8dd9-11e2-11e8-979a-6198b668c3f0",
"eventID": "5abe21f6-ee1a-48ef-afc5-c77211235303",
"eventType": "AwsApiCall",
"recipientAccountId": "123456789012"
}
```