

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

# CloudWatch 记录 AWS IoT 日志条目
<a name="cwl-format"></a>

的每个组件 AWS IoT 都会生成自己的日志条目。每个日志条目都有一个 `eventType` 指定导致生成日志条目的操作。本部分介绍以下 AWS IoT 组件所生成的日志条目。

**Topics**
+ [消息代理日志条目](#message-broker-logs)
+ [服务器证书 OCSP 日志条目](#server-ocsp-logs)
+ [设备影子日志条目](#device-shadow-logs)
+ [规则引擎日志条目](#rule-engine-logs)
+ [任务日志条目](#job-logs)
+ [设备预调配日志条目](#provision-logs)
+ [动态事物组日志条目](#dynamic-group-logs)
+ [实例集索引日志条目](#fleet-indexing-logs)
+ [常见 CloudWatch 日志属性](#cwl-common-attributes)

## 消息代理日志条目
<a name="message-broker-logs"></a>

 AWS IoT 消息代理生成以下事件的日志条目：

**Topics**
+ [Connect 日志条目](#log-mb-connect)
+ [Disconnect 日志条目](#log-mb-disconnect)
+ [DeleteConnection 日志条目](#log-mb-delete-connection)
+ [GetRetainedMessage 日志条目](#log-mb-get-retain)
+ [ListRetainedMessage 日志条目](#log-mb-list-retain)
+ [Publish-In 日志条目](#log-mb-publish-in)
+ [Publish-Out 日志条目](#log-mb-publish-out)
+ [排队的日志条目](#log-mb-queued)
+ [Subscribe 日志条目](#log-mb-subscribe)
+ [取消订阅日志条目](#log-mb-unsubscribe)

### Connect 日志条目
<a name="log-mb-connect"></a>

当 MQTT 客户端连接`Connect`时， AWS IoT 消息代理会生成一个带有`eventType`的日志条目。

#### Connect 日志条目示例
<a name="log-mb-connect.example"></a>

```
{
    "timestamp": "2017-08-10 15:37:23.476",
    "logLevel": "INFO",
    "traceId": "20b23f3f-d7f1-feae-169f-82263394fbdb",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "Connect",
    "protocol": "MQTT",
    "clientId": "abf27092886e49a8a5c1922749736453",
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
    "sourceIp": "205.251.233.181",
    "sourcePort": 13490
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`Connect`日志条目还包含以下属性：

clientId  
发出请求的客户端的 ID。

principalId  
发出请求的委托人的 ID。

protocol  
用于提出请求的协议。有效值为 `MQTT` 或 `HTTP`。

sourceIp  
请求的源 IP 地址。

sourcePort  
请求的源端口。

### Disconnect 日志条目
<a name="log-mb-disconnect"></a>

当 MQTT 客户端断开连接`Disconnect`时， AWS IoT 消息代理会生成一个带有`eventType`的日志条目。

#### Disconnect 日志条目示例
<a name="log-mb-disconnect.example"></a>

```
{
    "timestamp": "2017-08-10 15:37:23.476",
    "logLevel": "INFO",
    "traceId": "20b23f3f-d7f1-feae-169f-82263394fbdb",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "Disconnect",
    "protocol": "MQTT",
    "clientId": "abf27092886e49a8a5c1922749736453",
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
    "sourceIp": "205.251.233.181",
    "sourcePort": 13490,
    "reason": "DUPLICATE_CLIENT_ID",
    "details": "A new connection was established with the same client ID",
    "disconnectReason": "CLIENT_INITIATED_DISCONNECT"
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`Disconnect`日志条目还包含以下属性：

clientId  
发出请求的客户端的 ID。

principalId  
发出请求的委托人的 ID。

protocol  
用于提出请求的协议。有效值为 `MQTT` 或 `HTTP`。

sourceIp  
请求的源 IP 地址。

sourcePort  
请求的源端口。

reason  
客户端断开连接的原因。

details  
错误的简要说明。

disconnectReason  
客户端断开连接的原因。

### DeleteConnection 日志条目
<a name="log-mb-delete-connection"></a>

删除 MQTT 客户端连接`DeleteConnection`时， AWS IoT 消息代理会生成一个带有`eventType`的日志条目。

#### DeleteConnection 日志条目示例
<a name="log-mb-delete-connection.example"></a>

```
{
    "timestamp": "2025-08-09 15:37:23.476",
    "logLevel": "INFO",
    "traceId": "20b23f3f-d7f1-feae-169f-82263394fbdb",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "DeleteConnection",
    "protocol": "HTTP",
    "clientId": "abf27092886e49a8a5c1922749736453",
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
    "sourceIp": "205.251.233.181",
    "sourcePort": 13490
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`DeleteConnection`日志条目还包含以下属性：

clientId  
将被断开连接的客户端的 ID。

principalId  
发出请求的委托人的 ID。有关如何使用主体 ID 识别主体的信息，请参阅*《IAM 用户指南》*中的[比较 IAM 身份和凭证](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_identity-management.html)。

protocol  
用于提出请求的协议。有效值为 `HTTP`。

sourceIp  
请求的源 IP 地址。

sourcePort  
请求的源端口。

### GetRetainedMessage 日志条目
<a name="log-mb-get-retain"></a>

 AWS IoT 消息代理生成一个日志条目，`eventType`其中包含`GetRetainedMessage`何时[https://docs.aws.amazon.com//iot/latest/developerguide/API_iotdata_GetRetainedMessage.html](https://docs.aws.amazon.com//iot/latest/developerguide/API_iotdata_GetRetainedMessage.html)被调用。

#### GetRetainedMessage 日志条目示例
<a name="log-mb-get-retain-example"></a>

```
{
    "timestamp": "2017-08-07 18:47:56.664", 
    "logLevel": "INFO", 
    "traceId": "1a60d02e-15b9-605b-7096-a9f584a6ad3f", 
    "accountId": "123456789012", 
    "status": "Success", 
    "eventType": "GetRetainedMessage", 
    "protocol": "HTTP",
    "topicName": "a/b/c",
    "qos": "1",
    "lastModifiedDate": "2017-08-07 18:47:56.664"
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`GetRetainedMessage`日志条目还包含以下属性：

lastModifiedDate  
存储保留消息的 Epoch 日期和时间（以毫秒为单位）。 AWS IoT

protocol  
用于提出请求的协议。有效值：`HTTP`。

qos  
发布请求中使用的服务质量（QoS）级别。有效值为 `0` 或 `1`。

topicName  
已订阅主题的名称。

### ListRetainedMessage 日志条目
<a name="log-mb-list-retain"></a>

 AWS IoT 消息代理生成一个日志条目，`eventType`其中包含`ListRetainedMessage`何时[/iot/latest/developerguide/API_iotdata_ListRetainedMessages.html](/iot/latest/developerguide/API_iotdata_ListRetainedMessages.html)被调用。

#### ListRetainedMessage 日志条目示例
<a name="log-mb-list-retain-example"></a>

```
{
    "timestamp": "2017-08-07 18:47:56.664", 
    "logLevel": "INFO", 
    "traceId": "1a60d02e-15b9-605b-7096-a9f584a6ad3f", 
    "accountId": "123456789012", 
    "status": "Success", 
    "eventType": "ListRetainedMessage", 
    "protocol": "HTTP"
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`ListRetainedMessage`日志条目还包含以下属性：

protocol  
用于提出请求的协议。有效值：`HTTP`。

### Publish-In 日志条目
<a name="log-mb-publish-in"></a>

当 AWS IoT 消息代理收到 MQTT 消息时，它会生成一个带有为`eventType`的`Publish-In`日志条目。

#### Publish-In 日志条目示例
<a name="log-mb-publish-in.example"></a>

```
{
        "timestamp": "2017-08-10 15:39:30.961",
        "logLevel": "INFO",
        "traceId": "672ec480-31ce-fd8b-b5fb-22e3ac420699",
        "accountId": "123456789012",
        "status": "Success",
        "eventType": "Publish-In",
        "protocol": "MQTT",
        "topicName": "$aws/things/MyThing/shadow/get",
        "clientId": "abf27092886e49a8a5c1922749736453",
        "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
        "sourceIp": "205.251.233.181",
        "sourcePort": 13490,
        "retain": "True"
    }
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`Publish-In`日志条目还包含以下属性：

clientId  
发出请求的客户端的 ID。

principalId  
发出请求的委托人的 ID。

protocol  
用于提出请求的协议。有效值为 `MQTT` 或 `HTTP`。

保留  
当消息的 REATIN 标志的值设置为 `True` 时使用的属性。如果消息未设置 REATIN 标志，则该属性不会显示在日志条目中。有关更多信息，请参阅 [MQTT 保留消息](mqtt.md#mqtt-retain)。

sourceIp  
请求的源 IP 地址。

sourcePort  
请求的源端口。

topicName  
已订阅主题的名称。

### Publish-Out 日志条目
<a name="log-mb-publish-out"></a>

当消息代理发布 MQTT 消息时，它会生成一个 `eventType` 为 `Publish-Out` 的日志条目 

#### Publish-Out 日志条目示例
<a name="log-mb-publish-out.example"></a>

```
{
    "timestamp": "2017-08-10 15:39:30.961",
    "logLevel": "INFO",
    "traceId": "672ec480-31ce-fd8b-b5fb-22e3ac420699",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "Publish-Out",
    "protocol": "MQTT",
    "topicName": "$aws/things/MyThing/shadow/get",
    "clientId": "abf27092886e49a8a5c1922749736453",
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
    "sourceIp": "205.251.233.181",
    "sourcePort": 13490
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`Publish-Out`日志条目还包含以下属性：

clientId  
接收有关该 MQTT 主题的消息的订阅客户端的 ID。

principalId  
发出请求的委托人的 ID。

protocol  
用于提出请求的协议。有效值为 `MQTT` 或 `HTTP`。

sourceIp  
请求的源 IP 地址。

sourcePort  
请求的源端口。

topicName  
已订阅主题的名称。

### 排队的日志条目
<a name="log-mb-queued"></a>

当具有持续会话的设备断开连接时，MQTT 消息代理会存储该设备的消息，并 AWS IoT 生成事件类型为 EventType 的日志条目。`Queued`有关 MQTT 持久会话的更多信息，请参阅[MQTT 持久会话](mqtt.md#mqtt-persistent-sessions)。

#### 排队的服务器错误日志条目示例
<a name="log-mb-queued.server-error.example"></a>

```
{
    "timestamp": "2022-08-10 15:39:30.961",
    "logLevel": "ERROR",
    "traceId": "672ec480-31ce-fd8b-b5fb-22e3ac420699",
    "accountId": "123456789012",
    "topicName": "$aws/things/MyThing/get",
    "clientId": "123123123",
    "qos": "1",
    "protocol": "MQTT",
    "eventType": "Queued",
    "status": "Failure",
    "details": "Server Error"
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`Queued`服务器错误日志条目还包含以下属性：

clientId  
消息排队的客户端的 ID。

details  
**`Server Error`**  
服务器错误导致无法存储消息。

protocol  
用于提出请求的协议。该值始终为 `MQTT`。

qos  
请求的服务质量（QoS）级别。该值将始终为 1，因为不存储 QoS 为 0 的消息。

topicName  
已订阅主题的名称。

#### 排队的成功日志条目示例
<a name="log-mb-queued.success.example"></a>

```
{
    "timestamp": "2022-08-10 15:39:30.961",
    "logLevel": "INFO",
    "traceId": "672ec480-31ce-fd8b-b5fb-22e3ac420699",
    "accountId": "123456789012",
    "topicName": "$aws/things/MyThing/get",
    "clientId": "123123123",
    "qos": "1",
    "protocol": "MQTT",
    "eventType": "Queued",
    "status": "Success"
}
```

除此之外[常见 CloudWatch 日志属性](#cwl-common-attributes)，`Queued`成功日志条目还包含以下属性：

clientId  
消息排队的客户端的 ID。

protocol  
用于提出请求的协议。该值始终为 `MQTT`。

qos  
请求的服务质量（QoS）级别。该值将始终为 1，因为不存储 QoS 为 0 的消息。

topicName  
已订阅主题的名称。

#### 排队的限制日志条目示例
<a name="log-mb-queued.throttled.example"></a>

```
{
    "timestamp": "2022-08-10 15:39:30.961",
    "logLevel": "ERROR",
    "traceId": "672ec480-31ce-fd8b-b5fb-22e3ac420699",
    "accountId": "123456789012",
    "topicName": "$aws/things/MyThing/get",
    "clientId": "123123123",
    "qos": "1",
    "protocol": "MQTT",
    "eventType": "Queued",
    "status": "Failure",
    "details": "Throttled while queueing offline message"
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，受`Queued`限制的日志条目还包含以下属性：

clientId  
消息排队的客户端的 ID。

details  
**`Throttled while queueing offline message`**  
客户端超出了 ` [Queued messages per second per account](https://docs.aws.amazon.com//general/latest/gr/iot-core.html#genref_queued_messages_per_second_per_account) ` 限制，因此未存储消息。

protocol  
用于提出请求的协议。该值始终为 `MQTT`。

qos  
请求的服务质量（QoS）级别。该值将始终为 1，因为不存储 QoS 为 0 的消息。

topicName  
已订阅主题的名称。

### Subscribe 日志条目
<a name="log-mb-subscribe"></a>

当 MQTT 客户端订阅主题`Subscribe`时， AWS IoT 消息代理会生成一个`eventType`带有的日志条目。

#### MQTT 3 订阅日志条目示例
<a name="log-mb-connect.example.subscribe"></a>

```
{
    "timestamp": "2017-08-10 15:39:04.413",
    "logLevel": "INFO",
    "traceId": "7aa5c38d-1b49-3753-15dc-513ce4ab9fa6",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "Subscribe",
    "protocol": "MQTT",
    "topicName": "$aws/things/MyThing/shadow/#",
    "clientId": "abf27092886e49a8a5c1922749736453",
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
    "sourceIp": "205.251.233.181",
    "sourcePort": 13490
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`Subscribe`日志条目还包含以下属性：

clientId  
发出请求的客户端的 ID。

principalId  
发出请求的委托人的 ID。

protocol  
用于提出请求的协议。该值始终为 `MQTT`。

sourceIp  
请求的源 IP 地址。

sourcePort  
请求的源端口。

topicName  
已订阅主题的名称。

#### MQTT 5 订阅日志条目示例
<a name="log-mb-connect.example.subscribe.mqtt5"></a>

```
{
	"timestamp": "2022-11-30 16:24:15.628",
	"logLevel": "INFO",
	"traceId": "7aa5c38d-1b49-3753-15dc-513ce4ab9fa6",
	"accountId": "123456789012",
	"status": "Success",
	"eventType": "Subscribe",
	"protocol": "MQTT",
	"topicName": "test/topic1,$invalid/reserved/topic",
	"subscriptions": [
		{
			"topicName": "test/topic1",
			"reasonCode": 1
		},
		{
			"topicName": "$invalid/reserved/topic",
			"reasonCode": 143
		}
	],
	"clientId": "abf27092886e49a8a5c1922749736453",
	"principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
	"sourceIp": "205.251.233.181",
	"sourcePort": 13490
}
```

对于 MQTT 5 订阅操作，除了 [常见 CloudWatch 日志属性](#cwl-common-attributes) 和 [MQTT 3 订阅日志条目属性](#log-mb-connect.example.subscribe)外，MQTT 5 `Subscribe` 日志条目还包含以下属性：

订阅  
订阅请求中的已请求主题与各个 MQTT 5 原因代码之间的映射列表。有关更多信息，请参阅 [MQTT 原因代码](https://docs.aws.amazon.com//iot/latest/developerguide/mqtt.html#mqtt5-reason-codes)。

### 取消订阅日志条目
<a name="log-mb-unsubscribe"></a>

当 MQTT 客户端取消订阅 MQTT `eventType` 主题`Unsubscribe`时， AWS IoT 消息代理会生成一个带有的日志条目。

#### MQTT 3 取消订阅日志条目示例
<a name="log-mb-connect.example.unsubscribe"></a>

```
{
    "timestamp": "2024-08-20 22:53:32.844",
    "logLevel": "INFO",
    "traceId": "db6bd09a-2c3f-1cd2-27cc-fd6b1ce03b58",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "Unsubscribe",
    "protocol": "MQTT",
    "clientId": "abf27092886e49a8a5c1922749736453",
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
    "sourceIp": "205.251.233.181",
    "sourcePort": 13490
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`Unsubscribe`日志条目还包含以下属性：

protocol  
用于提出请求的协议。该值始终为 `MQTT`。

clientId  
发出请求的客户端的 ID。

principalId  
发出请求的委托人的 ID。

sourceIp  
请求的源 IP 地址。

sourcePort  
请求的源端口。

## 服务器证书 OCSP 日志条目
<a name="server-ocsp-logs"></a>

AWS IoT Core 为以下事件生成日志条目：

**Topics**
+ [检索OCSPStaple数据记录条目](#log-retrieve-ocsp-staple)
+ [检索私有端点OCSPStaple的数据日志条目](#log-retrieve-ocsp-staple-private-endpoint)

### 检索OCSPStaple数据记录条目
<a name="log-retrieve-ocsp-staple"></a>

AWS IoT Core 当服务器检索 OCSP 装订数据`RetrieveOCSPStapleData`时，会生成一个`eventType`带有的日志条目。

#### 检索OCSPStaple数据记录条目示例
<a name="log-retrieve-ocsp-staple.example"></a>

以下是 `Success` 示例日志条目。

```
{
	"timestamp": "2024-01-30 15:39:30.961",
	"logLevel": "INFO",
	"traceId": "180532b7-0cc7-057b-687a-5ca1824838f5",
	"accountId": "123456789012",
	"status": "Success",
	"eventType": "RetrieveOCSPStapleData",
	"domainConfigName": "test-domain-config-name",
	"connectionDetails": {
		"httpStatusCode": "200",
		"ocspResponderUri": "http://ocsp.example.com",
		"sourceIp": "205.251.233.181",
		"targetIp": "250.15.5.3"
	},
	"ocspRequestDetails": {
		"requesterName": "iot.amazonaws.com",
		"requestCertId": "30:3A:30:09:06:05:2B:0E:03:02:1A:05:00:04:14:9C:FF:90:A1:97:B0:4D:6C:01:B9:69:96:D8:3E:E7:A2:51:7F:30:C4:04:14:7C:84:78:AE:12:58:71:38:0C:65:FC:17:77:7D:14:DD:69:73:71:46:02:01:01"
	},
	"ocspResponseDetails": {
		"responseCertId": "30:3A:30:09:06:05:2B:0E:03:02:1A:05:00:04:14:9C:FF:90:A1:97:B0:4D:6C:01:B9:69:96:D8:3E:E7:A2:51:7F:30:C4:04:14:7C:84:78:AE:12:58:71:38:0C:65:FC:17:77:7D:14:DD:69:73:71:46:02:01:01",
		"ocspResponseStatus": "successful",
		"certStatus": "good",
		"signature": "4C:6F:63:61:6C:20:52:65:73:70:6F:6E:64:65:72:20:53:69:67:6E:61:74:75:72:65",
		"thisUpdateTime": "Jan 31 01:21:02 2024 UTC",
		"nextUpdateTime": "Feb 02 00:21:02 2024 UTC",
		"producedAtTime": "Jan 31 01:37:03 2024 UTC",
		"stapledDataPayloadSize": "XXX"
	}
}
```

以下是 `Failure` 示例日志条目。

```
{
	"timestamp": "2024-01-30 15:39:30.961",
	"logLevel": "ERROR",
	"traceId": "180532b7-0cc7-057b-687a-5ca1824838f5",
	"accountId": "123456789012",
	"status": "Failure",
	"reason": "A non 2xx HTTP response was received from the OCSP responder.",
	"eventType": "RetrieveOCSPStapleData",
	"domainConfigName": "test-domain-config-name",
	"connectionDetails": {
		"httpStatusCode": "444",
		"ocspResponderUri": "http://ocsp.example.com",
		"sourceIp": "205.251.233.181",
		"targetIp": "250.15.5.3"
	},
	"ocspRequestDetails": {
		"requesterName": "iot.amazonaws.com",
		"requestCertId": "30:3A:30:09:06:05:2B:0E:03:02:1A:05:00:04:14:9C:FF:90:A1:97:B0:4D:6C:01:B9:69:96:D8:3E:E7:A2:51:7F:30:C4:04:14:7C:84:78:AE:12:58:71:38:0C:65:FC:17:77:7D:14:DD:69:73:71:46:02:01:01"
	}
}
```

对于该`RetrieveOCSPStaple`操作，除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，日志条目还包含以下属性：

reason  
操作失败的原因。

domainConfigName  
域配置的名称。

connectionDetails  
连接详情的简要说明。  
+ httpStatusCode

  OCSP 响应程序为响应客户端向服务器发出的请求而返回的 HTTP 状态码。
+ ocspResponderUri

  从服务器证书中 AWS IoT Core 获取的 OCSP 响应器 URI。
+ sourceIp

   AWS IoT Core 服务器的源 IP 地址。
+ targetIp

  OCSP 响应程序的目标 IP 地址。

ocspRequestDetails  
OCSP 请求的详细信息。  
+ requesterName

  向 OCSP 响应者发送请求的 AWS IoT Core 服务器的标识符。
+ requestCertId

  请求的证书 ID。这是正在请求 OCSP 响应的证书的 ID。

ocspResponseDetails  
OCSP 响应的详细信息。  
+ responseCertId

  OCSP 响应的证书 ID。
+ ocspResponseStatus

  OCSP 响应的状态。
+ certStatus

  证书的状态。
+ signature

  可信实体应用于响应的签名。
+ thisUpdateTime

  已知所指示状态正确的时间。
+ nextUpdateTime

  在此时间或此时间之前，将提供有关证书状态的更新的信息。
+ producedAtTime

  OCSP 响应程序签署此响应的时间。
+ stapledDataPayload大小

  已绑定数据的有效载荷大小。

### 检索私有端点OCSPStaple的数据日志条目
<a name="log-retrieve-ocsp-staple-private-endpoint"></a>

AWS IoT Core 当服务器检索 OCSP 装订数据`RetrieveOCSPStapleData`时，会生成一个`eventType`带有的日志条目。

#### 检索私有端点OCSPStaple的数据日志条目示例
<a name="log-retrieve-ocsp-staple-private-endpoint.example"></a>

以下是 `Success` 示例日志条目。

```
{
	"timestamp": "2024-01-30 15:39:30.961",
	"logLevel": "INFO",
	"traceId": "180532b7-0cc7-057b-687a-5ca1824838f5",
	"accountId": "123456789012",
	"status": "Success",
	"eventType": "RetrieveOCSPStapleData",
	"domainConfigName": "test-domain-config-name",
        "lambdaDetails": {
        "lambdaArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function",
        "sourceArn": "arn:aws:iot:us-west-2:123456789012:domainconfiguration/testDomainConfigure/6bzfg"
      },
        "authorizedResponderArn": "arn:aws:acm:us-west-2:123456789012:certificate/certificate_ID",
	"ocspRequestDetails": {
		"requesterName": "iot.amazonaws.com",
		"requestCertId": "30:3A:30:09:06:05:2B:0E:03:02:1A:05:00:04:14:9C:FF:90:A1:97:B0:4D:6C:01:B9:69:96:D8:3E:E7:A2:51:7F:30:C4:04:14:7C:84:78:AE:12:58:71:38:0C:65:FC:17:77:7D:14:DD:69:73:71:46:02:01:01"
	},
	"ocspResponseDetails": {
		"responderId": "04:C1:3F:8F:27:D6:49:13:F8:DE:B2:36:9D:85:8E:F8:31:3B:A6:D0"
               "responseCertId": "30:3A:30:09:06:05:2B:0E:03:02:1A:05:00:04:14:9C:FF:90:A1:97:B0:4D:6C:01:B9:69:96:D8:3E:E7:A2:51:7F:30:C4:04:14:7C:84:78:AE:12:58:71:38:0C:65:FC:17:77:7D:14:DD:69:73:71:46:02:01:01",
		"ocspResponseStatus": "successful",
		"certStatus": "good",
		"signature": "4C:6F:63:61:6C:20:52:65:73:70:6F:6E:64:65:72:20:53:69:67:6E:61:74:75:72:65",
		"thisUpdateTime": "Jan 31 01:21:02 2024 UTC",
		"nextUpdateTime": "Feb 02 00:21:02 2024 UTC",
		"producedAtTime": "Jan 31 01:37:03 2024 UTC",
		"stapledDataPayloadSize": "XXX"
	}
}
```

以下是 `Failure` 示例日志条目。

```
{
	"timestamp": "2024-01-30 15:39:30.961",
	"logLevel": "ERROR",
	"traceId": "180532b7-0cc7-057b-687a-5ca1824838f5",
	"accountId": "123456789012",
	"status": "Failure",
	"reason": "The payload returned by the Lambda function exceeds the maximum response size of 7 kilobytes.",
	"eventType": "RetrieveOCSPStapleData",
	"domainConfigName": "test-domain-config-name",
        "lambdaDetails": {
        "lambdaArn": "arn:aws:lambda:us-west-2:123456789012:function:my-function",
        "sourceArn": "arn:aws:iot:us-west-2:123456789012:domainconfiguration/testDomainConfigure/6bzfg"
      },
        "authorizedResponderArn": "arn:aws:acm:us-west-2:123456789012:certificate/certificate_ID",
	 "ocspRequestDetails": {
		"requesterName": "iot.amazonaws.com",
		"requestCertId": "30:3A:30:09:06:05:2B:0E:03:02:1A:05:00:04:14:9C:FF:90:A1:97:B0:4D:6C:01:B9:69:96:D8:3E:E7:A2:51:7F:30:C4:04:14:7C:84:78:AE:12:58:71:38:0C:65:FC:17:77:7D:14:DD:69:73:71:46:02:01:01"
	}
}
```

对于该`RetrieveOCSPStaple`操作，除了[检索OCSPStaple数据日志条目](https://docs.aws.amazon.com//iot/latest/developerguide/cwl-format.html#log-retrieve-ocsp-staple)中的[常见 CloudWatch 日志属性](#cwl-common-attributes)和属性外，私有终端节点的日志条目还包含以下属性：

lambdaDetails  
Lambda 函数的详细信息。  
+ lambdaArn

  Lambda 函数的 ARN。
+ sourceArn

  域配置的 ARN。

authorizedResponderArn  
如果在域配置中配置了授权响应者，则为其 ARN。

## 设备影子日志条目
<a name="device-shadow-logs"></a>

 AWS IoT Device Shadow 服务会为以下事件生成日志条目：

**Topics**
+ [DeleteThingShadow 日志条目](#log-shadow-delete-thing-shadow)
+ [GetThingShadow 日志条目](#log-shadow-get-thing-shadow)
+ [UpdateThingShadow 日志条目](#log-shadow-update-thing-shadow)

### DeleteThingShadow 日志条目
<a name="log-shadow-delete-thing-shadow"></a>

当收到删除设备影子的请求时，Device Shadow 服务会生成一个 `eventType` 为 `DeleteThingShadow` 的日志条目。

#### DeleteThingShadow 日志条目示例
<a name="log-shadow-delete-thing-shadow.example"></a>

```
{
    "timestamp": "2017-08-07 18:47:56.664",
    "logLevel": "INFO",
    "traceId": "1a60d02e-15b9-605b-7096-a9f584a6ad3f",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "DeleteThingShadow",
    "protocol": "MQTT",
    "deviceShadowName": "Jack",
    "topicName": "$aws/things/Jack/shadow/delete"
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`DeleteThingShadow`日志条目还包含以下属性：

deviceShadowName  
要更新的影子的名称。

protocol  
用于提出请求的协议。有效值为 `MQTT` 或 `HTTP`。

topicName  
发布请求时所基于的主题的名称。

### GetThingShadow 日志条目
<a name="log-shadow-get-thing-shadow"></a>

当收到影子的获取请求时，Device Shadow 服务会生成一个 `eventType` 为 `GetThingShadow` 的日志条目。

#### GetThingShadow 日志条目示例
<a name="log-shadow-get-thing-shadow.example"></a>

```
{
    "timestamp": "2017-08-09 17:56:30.941",
    "logLevel": "INFO",
    "traceId": "b575f19a-97a2-cf72-0ed0-c64a783a2504",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "GetThingShadow",
    "protocol": "MQTT",
    "deviceShadowName": "MyThing",
    "topicName": "$aws/things/MyThing/shadow/get"
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`GetThingShadow`日志条目还包含以下属性：

deviceShadowName  
所请求的影子的名称。

protocol  
用于提出请求的协议。有效值为 `MQTT` 或 `HTTP`。

topicName  
发布请求时所基于的主题的名称。

### UpdateThingShadow 日志条目
<a name="log-shadow-update-thing-shadow"></a>

当收到更新设备影子的请求时，Device Shadow 服务会生成一个 `eventType` 为 `UpdateThingShadow` 的日志条目。

#### UpdateThingShadow 日志条目示例
<a name="log-shadow-update-thing-shadow.example"></a>

```
{
    "timestamp": "2017-08-07 18:43:59.436",
    "logLevel": "INFO",
    "traceId": "d0074ba8-0c4b-a400-69df-76326d414c28",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "UpdateThingShadow",
    "protocol": "MQTT",
    "deviceShadowName": "Jack",
    "topicName": "$aws/things/Jack/shadow/update"
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`UpdateThingShadow`日志条目还包含以下属性：

deviceShadowName  
要更新的影子的名称。

protocol  
用于提出请求的协议。有效值为 `MQTT` 或 `HTTP`。

topicName  
发布请求时所基于的主题的名称。

## 规则引擎日志条目
<a name="rule-engine-logs"></a>

 AWS IoT 规则引擎为以下事件生成日志：

**Topics**
+ [FunctionExecution 日志条目](#log-rules-fn-exec)
+ [RuleExecution 日志条目](#log-rules-rule-ex)
+ [RuleMatch 日志条目](#log-rules-rule-match)
+ [RuleExecutionThrottled 日志条目](#log-rules-rule-msg-throttled)
+ [RuleNotFound 日志条目](#log-rules-rule-not-found)
+ [StartingRuleExecution 日志条目](#log-rules-start-rule-ex)

### FunctionExecution 日志条目
<a name="log-rules-fn-exec"></a>

当规则的 SQL 查询调用外部函数时，规则引擎会生成一个 `eventType` 为 `FunctionExecution` 的日志条目。当规则的操作向或其他 Web 服务发出 HTTP 请求（例如，调用 AWS IoT `get_thing_shadow`或`machinelearning_predict`）时，就会调用外部函数。

#### FunctionExecution 日志条目示例
<a name="log-rules-fn-exec.example"></a>

```
{
    "timestamp": "2017-07-13 18:33:51.903",
    "logLevel": "DEBUG",
    "traceId": "180532b7-0cc7-057b-687a-5ca1824838f5",
    "status": "Success",
    "eventType": "FunctionExecution",
    "clientId": "N/A",
    "topicName":"rules/test",
    "ruleName": "ruleTestPredict",
    "ruleAction": "MachinelearningPredict",
    "resources": {
        "ModelId": "predict-model"
    },
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167"
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`FunctionExecution`日志条目还包含以下属性：

clientId  
 `N/A`（针对 `FunctionExecution` 日志）。

principalId  
发出请求的委托人的 ID。

资源  
规则的操作所使用的资源的集合。

ruleName  
匹配规则的名称。

topicName  
已订阅主题的名称。

### RuleExecution 日志条目
<a name="log-rules-rule-ex"></a>

当 AWS IoT 规则引擎触发规则的操作时，它会生成一个`RuleExecution`日志条目。

#### RuleExecution 日志条目示例
<a name="log-rules-rule-ex.example"></a>

```
{
    "timestamp": "2017-08-10 16:32:46.070",
    "logLevel": "INFO",
    "traceId": "30aa7ccc-1d23-0b97-aa7b-76196d83537e",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "RuleExecution",
    "clientId": "abf27092886e49a8a5c1922749736453",
    "topicName": "rules/test",
    "ruleName": "JSONLogsRule",
    "ruleAction": "RepublishAction",
    "resources": {
        "RepublishTopic": "rules/republish"
    },
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167"
}
```

#### RuleExecution 带有批处理日志条目示例
<a name="log-rules-rule-ex-batching.example"></a>

```
{
    "logLevel": "INFO",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "RuleExecution",
    "ruleName": "rule_test",
    "ruleAction": "HttpAction",
    "resources": {
        "Url": "https://example.com",
        "ConfirmationUrl": "https://example.com"
    },
    "details": "HttpAction made a request to the specified endpoint",
    "batchDetails": {
        "timestamps": [
            "1234567890123",
            "1234567890123",
            "1234567890123"
        ],
        "traceIds": [
            "30aa7ccc-1d23-0b97-aa7b-76196d83537e",
            "30aa7ccc-1d23-0b97-aa7b-76196d83537c",
            "30aa7ccc-1d23-0b97-aa7b-76196d83537d"
        ],
        "clientIds": [
            "N/A",
            "N/A",
            "N/A"
        ],
        "topicNames": [
            "topic/ruletest",
            "topic/ruletest",
            "topic/ruletest"
        ],
        "principalIds": [
            "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
            "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
            "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167"
        ],
        "batchSize": 3,
        "batchSizeInBytes": 114
    }
}
```

除了 [常见 CloudWatch 日志属性](#cwl-common-attributes) 之外，`RuleExecution` 日志条目还包含以下属性：

clientId  
发出请求的客户端的 ID。

principalId  
发出请求的委托人的 ID。

资源  
规则的操作所使用的资源的集合。

ruleAction  
所触发的操作的名称。

ruleName  
匹配规则的名称。

topicName  
已订阅主题的名称。

### RuleMatch 日志条目
<a name="log-rules-rule-match"></a>

当消息代理收到与 AWS IoT 规则匹配`eventType`的消息`RuleMatch`时，规则引擎会生成一个带有的日志条目。

#### RuleMatch 日志条目示例
<a name="log-rules-rule-match.example"></a>

```
{
    "timestamp": "2017-08-10 16:32:46.002",
    "logLevel": "INFO",
    "traceId": "30aa7ccc-1d23-0b97-aa7b-76196d83537e",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "RuleMatch",
    "clientId": "abf27092886e49a8a5c1922749736453",
    "topicName": "rules/test",
    "ruleName": "JSONLogsRule",
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167"
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`RuleMatch`日志条目还包含以下属性：

clientId  
发出请求的客户端的 ID。

principalId  
发出请求的委托人的 ID。

ruleName  
匹配规则的名称。

topicName  
已订阅主题的名称。

### RuleExecutionThrottled 日志条目
<a name="log-rules-rule-msg-throttled"></a>

当执行受到限制时， AWS IoT 规则引擎会生成一个`eventType`带有为的日志条目。`RuleExecutionThrottled`

#### RuleExecutionThrottled 日志条目示例
<a name="log-rules-rule-msg-throttled.example"></a>

```
{
    "timestamp": "2017-10-04 19:25:46.070",
    "logLevel": "ERROR",
    "traceId": "30aa7ccc-1d23-0b97-aa7b-76196d83537e",
    "accountId": "123456789012",
    "status": "Failure",
    "eventType": "RuleExecutionThrottled",
    "clientId": "abf27092886e49a8a5c1922749736453",
    "topicName": "$aws/rules/example_rule",
    "ruleName": "example_rule",
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
    "reason": "RuleExecutionThrottled",
    "details": "Exection of Rule example_rule throttled"
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`RuleExecutionThrottled`日志条目还包含以下属性：

clientId  
发出请求的客户端的 ID。

details  
错误的简要说明。

principalId  
发出请求的委托人的 ID。

reason  
字符串 “RuleExecutionThrottled”。

ruleName  
要触发的规则的名称。

topicName  
已发布的主题的名称。

### RuleNotFound 日志条目
<a name="log-rules-rule-not-found"></a>

当 AWS IoT 规则引擎找不到具有给定名称的规则时，它会生成一个带有 of `eventType` 的日志条目`RuleNotFound`。

#### RuleNotFound 日志条目示例
<a name="log-rules-rule-not-found.example"></a>

```
{
    "timestamp": "2017-10-04 19:25:46.070",
    "logLevel": "ERROR",
    "traceId": "30aa7ccc-1d23-0b97-aa7b-76196d83537e",
    "accountId": "123456789012",
    "status": "Failure",
    "eventType": "RuleNotFound",
    "clientId": "abf27092886e49a8a5c1922749736453",
    "topicName": "$aws/rules/example_rule",
    "ruleName": "example_rule",
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167",
    "reason": "RuleNotFound",
    "details": "Rule example_rule not found"
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`RuleNotFound`日志条目还包含以下属性：

clientId  
发出请求的客户端的 ID。

details  
错误的简要说明。

principalId  
发出请求的委托人的 ID。

reason  
字符串 “RuleNotFound”。

ruleName  
找不到的规则的名称。

topicName  
已发布的主题的名称。

### StartingRuleExecution 日志条目
<a name="log-rules-start-rule-ex"></a>

当 AWS IoT 规则引擎开始触发规则的操作时，它会生成一个带为`eventType`的日志条目`StartingRuleExecution`。

#### StartingRuleExecution 日志条目示例
<a name="log-rules-start-rule-ex.example"></a>

```
{
    "timestamp": "2017-08-10 16:32:46.002",
    "logLevel": "DEBUG",
    "traceId": "30aa7ccc-1d23-0b97-aa7b-76196d83537e",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "StartingRuleExecution",
    "clientId": "abf27092886e49a8a5c1922749736453",
    "topicName": "rules/test",
    "ruleName": "JSONLogsRule",
    "ruleAction": "RepublishAction",
    "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167"
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`rule-`日志条目还包含以下属性：

clientId  
发出请求的客户端的 ID。

principalId  
发出请求的委托人的 ID。

ruleAction  
所触发的操作的名称。

ruleName  
匹配规则的名称。

topicName  
已订阅主题的名称。

## 任务日志条目
<a name="job-logs"></a>

 AWS IoT Job 服务为以下事件生成日志条目。当从设备收到 MQTT 或 HTTP 请求时，将生成日志条目。

**Topics**
+ [DescribeJobExecution 日志条目](#log-job-describe-job-ex)
+ [GetPendingJobExecution 日志条目](#log-job-get-pending-job-ex)
+ [ReportFinalJobExecutionCount 日志条目](#log-job-report-final-job-ex-count)
+ [StartNextPendingJobExecution 日志条目](#log-job-start-next-pending-job-ex)
+ [UpdateJobExecution 日志条目](#log-job-update-job-ex)

### DescribeJobExecution 日志条目
<a name="log-job-describe-job-ex"></a>

当服务收到描述 AWS IoT 任务执行`eventType`的请求`DescribeJobExecution`时，该服务会生成一个带有的日志条目。

#### DescribeJobExecution 日志条目示例
<a name="log-job-describe-job-ex.example"></a>

```
{
    "timestamp": "2017-08-10 19:13:22.841",
    "logLevel": "DEBUG",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "DescribeJobExecution",
    "protocol": "MQTT",
    "clientId": "thingOne",
    "jobId": "002",
    "topicName": "$aws/things/thingOne/jobs/002/get",
    "clientToken": "myToken",
    "details": "The request status is SUCCESS."
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`GetJobExecution`日志条目还包含以下属性：

clientId  
发出请求的客户端的 ID。

clientToken  
用于确保请求幂等性的唯一、区分大小写的标识符。有关更多信息，请参阅[如何确保幂等性](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html)。

details  
来自 Jobs 服务的其它信息。

 jobId  
任务执行的任务 ID。

protocol  
用于提出请求的协议。有效值为 `MQTT` 或 `HTTP`。

topicName  
发出请求所使用的主题。

### GetPendingJobExecution 日志条目
<a name="log-job-get-pending-job-ex"></a>

当服务收到 AWS IoT 任务执行请求`GetPendingJobExecution`时，该服务会生成一个`eventType`带有的日志条目。

#### GetPendingJobExecution 日志条目示例
<a name="log-job-get-pending-job-ex.example"></a>

```
{
    "timestamp": "2018-06-13 17:45:17.197",
    "logLevel": "DEBUG",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "GetPendingJobExecution",
    "protocol": "MQTT",
    "clientId": "299966ad-54de-40b4-99d3-4fc8b52da0c5",
    "topicName": "$aws/things/299966ad-54de-40b4-99d3-4fc8b52da0c5/jobs/get",
    "clientToken": "24b9a741-15a7-44fc-bd3c-1ff2e34e5e82",
    "details": "The request status is SUCCESS."
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`GetPendingJobExecution`日志条目还包含以下属性：

clientId  
发出请求的客户端的 ID。

clientToken  
用于确保请求幂等性的唯一、区分大小写的标识符。有关更多信息，请参阅[如何确保幂等性](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html)。

details  
来自 Jobs 服务的其它信息。

protocol  
用于提出请求的协议。有效值为 `MQTT` 或 `HTTP`。

topicName  
已订阅主题的名称。

### ReportFinalJobExecutionCount 日志条目
<a name="log-job-report-final-job-ex-count"></a>

 AWS IoT 作业完成`ReportFinalJobExecutionCount`后，作业服务会生成一个带有 “” `entryType` 的日志条目。

#### ReportFinalJobExecutionCount 日志条目示例
<a name="log-job-report-final-job-ex-count.example"></a>

```
{
    "timestamp": "2017-08-10 19:44:16.776",
    "logLevel": "INFO",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "ReportFinalJobExecutionCount",
    "jobId": "002",
    "details": "Job 002 completed. QUEUED job execution count: 0 IN_PROGRESS job execution count: 0 FAILED job execution count: 0 SUCCEEDED job execution count: 1 CANCELED job execution count: 0 REJECTED job execution count: 0 REMOVED job execution count: 0"
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`ReportFinalJobExecutionCount`日志条目还包含以下属性：

details  
来自 Jobs 服务的其它信息。

 jobId  
任务执行的任务 ID。

### StartNextPendingJobExecution 日志条目
<a name="log-job-start-next-pending-job-ex"></a>

当它收到开始下一个待处理的任务执行的请求时， AWS IoT 作业服务会生成一个带有为`eventType`的日志条目`StartNextPendingJobExecution`。

#### StartNextPendingJobExecution 日志条目示例
<a name="log-job-start-next-pending-job-ex.example"></a>

```
{
    "timestamp": "2018-06-13 17:49:51.036",
    "logLevel": "DEBUG",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "StartNextPendingJobExecution",
    "protocol": "MQTT",
    "clientId": "95c47808-b1ca-4794-bc68-a588d6d9216c",
    "topicName": "$aws/things/95c47808-b1ca-4794-bc68-a588d6d9216c/jobs/start-next",
    "clientToken": "bd7447c4-3a05-49f4-8517-dd89b2c68d94",
    "details": "The request status is SUCCESS."
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`StartNextPendingJobExecution`日志条目还包含以下属性：

clientId  
发出请求的客户端的 ID。

clientToken  
用于确保请求幂等性的唯一、区分大小写的标识符。有关更多信息，请参阅[如何确保幂等性](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html)。

details  
来自 Jobs 服务的其它信息。

protocol  
用于提出请求的协议。有效值为 `MQTT` 或 `HTTP`。

topicName  
发出请求所使用的主题。

### UpdateJobExecution 日志条目
<a name="log-job-update-job-ex"></a>

当服务收到更新 AWS IoT 任务执行`eventType`的请求`UpdateJobExecution`时，该服务会生成一个带有的日志条目。

#### UpdateJobExecution 日志条目示例
<a name="log-job-update-job-ex.example"></a>

```
{
    "timestamp": "2017-08-10 19:25:14.758",
    "logLevel": "DEBUG",
    "accountId": "123456789012",
    "status": "Success",
    "eventType": "UpdateJobExecution",
    "protocol": "MQTT",
    "clientId": "thingOne",
    "jobId": "002",
    "topicName": "$aws/things/thingOne/jobs/002/update",
    "clientToken": "myClientToken",
    "versionNumber": "1",
    "details": "The destination status is IN_PROGRESS. The request status is SUCCESS."
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`UpdateJobExecution`日志条目还包含以下属性：

clientId  
发出请求的客户端的 ID。

clientToken  
用于确保请求幂等性的唯一、区分大小写的标识符。有关更多信息，请参阅[如何确保幂等性](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html)。

details  
来自 Jobs 服务的其它信息。

 jobId  
任务执行的任务 ID。

protocol  
用于提出请求的协议。有效值为 `MQTT` 或 `HTTP`。

topicName  
发出请求所使用的主题。

versionNumber  
任务执行的版本。

## 设备预调配日志条目
<a name="provision-logs"></a>

 AWS IoT 设备配置服务会生成以下事件的日志。

**Topics**
+ [GetDeviceCredentials 日志条目](#log-provision-get-device-credentials)
+ [ProvisionDevice 日志条目](#log-provision-provision-device)

### GetDeviceCredentials 日志条目
<a name="log-provision-get-device-credentials"></a>

当客户端呼叫`GetDeviceCredential`时， AWS IoT 设备配置服务会生成一个带有 “” `eventType` 的日志条目`GetDeviceCredential`。



#### GetDeviceCredentials 日志条目示例
<a name="log-provision-get-device-credentials.example"></a>

```
{
  "timestamp" : "2019-02-20 20:31:22.932",
  "logLevel" : "INFO",
  "traceId" : "8d9c016f-6cc7-441e-8909-7ee3d5563405",
  "accountId" : "123456789101",
  "status" : "Success",
  "eventType" : "GetDeviceCredentials",
  "deviceCertificateId" : "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
  "details" : "Additional details about this log."
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`GetDeviceCredentials`日志条目还包含以下属性：

details  
错误的简要说明。

deviceCertificateId  
设备证书的 ID。

### ProvisionDevice 日志条目
<a name="log-provision-provision-device"></a>

当客户端呼叫`ProvisionDevice`时， AWS IoT 设备配置服务会生成一个带有 “” `eventType` 的日志条目`ProvisionDevice`。

#### ProvisionDevice 日志条目示例
<a name="log-provision-provision-device.example"></a>

```
{
  "timestamp" : "2019-02-20 20:31:22.932",
  "logLevel" : "INFO",
  "traceId" : "8d9c016f-6cc7-441e-8909-7ee3d5563405",
  "accountId" : "123456789101",
  "status" : "Success",
  "eventType" : "ProvisionDevice",
  "provisioningTemplateName" : "myTemplate",
  "deviceCertificateId" : "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",
  "details" : "Additional details about this log."
 }
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`ProvisionDevice`日志条目还包含以下属性：

details  
错误的简要说明。

deviceCertificateId  
设备证书的 ID。

provisioningTemplateName  
预配置模板的名称。

## 动态事物组日志条目
<a name="dynamic-group-logs"></a>

AWS IoT 动态事物组生成以下事件的日志。

**Topics**
+ [AddThingToDynamicThingGroupsFailed 日志条目](#log-dynthing-add-thing-to-dynamic-thing-groups-failed)

### AddThingToDynamicThingGroupsFailed 日志条目
<a name="log-dynthing-add-thing-to-dynamic-thing-groups-failed"></a>

 AWS IoT 当无法将事物添加到指定的动态组时，它会生成一个带有为`eventType`的日志条目`AddThingToDynamicThingGroupsFailed`。当事物满足要处于动态事物组中的条件时，就会发生此情况；但是，无法将其添加到动态组中，或者无法将其从动态组中删除。这可能是因为：
+ 事物已经属于最大数量的组数。
+ **--override-dynamic-groups** 选项用于将事物添加到静态事物组中。它已被从一个动态事物组中删除，以便可以再添加。

有关更多信息，请参阅[动态事物组限制和冲突](dynamic-thing-groups.md#dynamic-thing-group-limitations)。

#### AddThingToDynamicThingGroupsFailed 日志条目示例
<a name="log-dynthing-add-thing-to-dynamic-thing-groups-failed.example"></a>

此示例显示 `AddThingToDynamicThingGroupsFailed` 错误的日志条目。在此示例中，*TestThing*符合中列出的动态事物组的条件`dynamicThingGroupNames`，但无法添加到这些动态组中，如中所述`reason`。

```
{
 "timestamp": "2020-03-16 22:24:43.804",
 "logLevel": "ERROR",
 "traceId": "70b1f2f5-d95e-f897-9dcc-31e68c3e1a30",
 "accountId": "57EXAMPLE833",
 "status": "Failure",
 "eventType": "AddThingToDynamicThingGroupsFailed",
 "thingName": "TestThing",
 "dynamicThingGroupNames": [
  "DynamicThingGroup11",
  "DynamicThingGroup12",
  "DynamicThingGroup13",
  "DynamicThingGroup14"
 ],
 "reason": "The thing failed to be added to the given dynamic thing group(s) because the thing already belongs to the maximum allowed number of groups."
}
```

除了[常见 CloudWatch 日志属性](#cwl-common-attributes)，`AddThingToDynamicThingGroupsFailed`日志条目还包含以下属性：

dynamicThingGroup名字  
无法向其中添加该事物的动态事物组的数组。

reason  
事物无法添加到动态事物组的原因。

thingName  
无法添加到动态事物组的事物的名称。

## 实例集索引日志条目
<a name="fleet-indexing-logs"></a>

AWS IoT 舰队索引生成以下事件的日志条目。

**Topics**
+ [NamedShadowCountForDynamicGroupQueryLimitExceeded 日志条目](#log-named-shadow-dynamic-group)

### NamedShadowCountForDynamicGroupQueryLimitExceeded 日志条目
<a name="log-named-shadow-dynamic-group"></a>

对于动态组中不特定于数据来源的查询术语，每个对象最多处理 25 个命名影子。由于事件而违反该限制时，将发出 `NamedShadowCountForDynamicGroupQueryLimitExceeded` 事件类型。

#### NamedShadowCountForDynamicGroupQueryLimitExceeded 日志条目示例
<a name="log-named-shadow-dynamic-group.example"></a>

此示例显示 `NamedShadowCountForDynamicGroupQueryLimitExceeded` 错误的日志条目。在此示例中，所有基于值的 `DynamicGroup` 结果都可能不准确，如 `reason` 字段中所述。

```
{
"timestamp": "2020-03-16 22:24:43.804",
"logLevel": "ERROR",
"traceId": "70b1f2f5-d95e-f897-9dcc-31e68c3e1a30",
"accountId": "571032923833",
"status": "Failure",
"eventType": "NamedShadowCountForDynamicGroupQueryLimitExceeded",
"thingName": "TestThing",
"reason": "A maximum of 25 named shadows per thing are processed for non-data source specific query terms in dynamic groups."
}
```

## 常见 CloudWatch 日志属性
<a name="cwl-common-attributes"></a>

所有 Log CloudWatch s 日志条目都包含以下属性：

accountId  
你的 AWS 账户 身份证。

eventType  
已为其生成日志的事件类型。事件类型的值取决于生成日志条目的事件。每个日志条目描述都包括该日志条目的 `eventType` 的值。

logLevel  
所使用的日志级别。有关更多信息，请参阅 [日志级别](configure-logging.md#log-level)。

status  
请求的状态。

timestamp  
客户端连接到 AWS IoT 消息代理的时间的便于阅读的 UNIX 时间戳。

traceId  
一个随机生成的标识符，可用于将特定请求的所有日志关联起来。