View a markdown version of this page

CloudWatch Logs AWS IoT 日誌項目 - AWS IoT Core

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

CloudWatch Logs AWS IoT 日誌項目

的每個元件都會 AWS IoT 產生自己的日誌項目。每個日誌項目都有 eventType 指定造成日誌項目產生的作業。本節旨在說明下列 AWS IoT 元件所產生的記錄項目。

Message broker 日誌項目

AWS IoT 訊息中介裝置會產生下列事件的日誌項目:

Connect 記錄項目

當 MQTT 用戶端連線Connect時, AWS IoT 訊息中介裝置會使用 eventType 的 產生日誌項目。

Connect 日誌項目範例

{ "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 Logs 屬性 之外,Connect日誌項目還包含下列屬性:

clientId

提出請求的用戶端 ID。

principalId

提出請求的委託人 ID。

protocol

用來提出要求的協定。有效值為 MQTTHTTP

sourceIp

請求來源所在的 IP 地址。

sourcePort

請求來源所在的埠口。

Disconnect 日誌輸入項

當 MQTT 用戶端中斷連線Disconnect時, AWS IoT 訊息中介裝置會使用 eventType 的 產生日誌項目。

Disconnect 日誌項目的連線範例

{ "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 Logs 屬性 之外,Disconnect日誌項目還包含下列屬性:

clientId

提出請求的用戶端 ID。

principalId

提出請求的委託人 ID。

protocol

用來提出要求的協定。有效值為 MQTTHTTP

sourceIp

請求來源所在的 IP 地址。

sourcePort

請求來源所在的埠口。

reason

用戶端中斷連線的原因。

詳細資訊

錯誤的簡要說明。

disconnectReason

用戶端中斷連線的原因。

Ping 日誌項目

AWS IoT 當訊息中介裝置從連線用戶端處理 MQTT PINGREQ 並傳送對應的 PINGRESP Ping時,會產生具有 eventType 的 日誌項目。每個 Ping 操作都會發出單一日誌項目。

重要

Ping 日誌項目為選擇加入,預設為停用。發射閾值符合每個項目的結果:成功項目會在DEBUG關卡發出,失敗項目則會在ERROR關卡發出。因此,每當套用至連線的事件層級或資源特定覆寫設定為 ERROR或更詳細層級 (INFO、 或 DEBUG) 時,您就會看到 Ping 失敗項目WARN,但只有在該層級設定為 時才會發佈 Ping 成功項目DEBUG。若要設定這些設定,請參閱 在 AWS IoT (CLI) 中設定帳戶和事件層級登入在 AWS IoT (CLI) 中設定資源特定的覆寫

成功時, logLevelDEBUG,而 statusSuccess。失敗時 (例如,當用戶端連線在傳送 PINGRESP 之前終止時), logLevelERROR,而 statusFailure

Ping 日誌項目範例 (成功)

{ "timestamp": "2025-10-31 15:37:23.476", "logLevel": "DEBUG", "traceId": "20b23f3f-d7f1-feae-169f-82263394fbdb", "accountId": "123456789012", "status": "Success", "eventType": "Ping", "protocol": "MQTT", "latency": 128, "requestTimestamp": "2025-10-31 15:37:23.348", "responseTimestamp": "2025-10-31 15:37:23.476", "clientId": "abf27092886e49a8a5c1922749736453", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "sourceIp": "205.251.233.181", "sourcePort": 13490 }

Ping 日誌項目範例 (失敗)

{ "timestamp": "2025-10-31 15:37:23.476", "logLevel": "ERROR", "traceId": "20b23f3f-d7f1-feae-169f-82263394fbdb", "accountId": "123456789012", "status": "Failure", "eventType": "Ping", "protocol": "MQTT", "requestTimestamp": "2025-10-31 15:37:23.476", "clientId": "abf27092886e49a8a5c1922749736453", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "sourceIp": "205.251.233.181", "sourcePort": 13490, "reason": "CONNECTION_ALREADY_CLOSED", "details": "Connection has already closed" }

除了 常用 CloudWatch Logs 屬性Ping 記錄項目包含下列屬性:

protocol

用來提出要求的協定。值一律為 MQTT

延遲

從接收 PINGREQ 到傳送 PINGRESP 之間的時間,以毫秒為單位。只有在 status為 時,才會出現此欄位Success

requestTimestamp

從用戶端 AWS IoT Core 接收 PINGREQ 時的時間戳記。

responseTimestamp

將 PINGRESP AWS IoT Core 傳送到用戶端時的時間戳記。只有在 status為 時,才會出現此欄位Success

clientId

提出請求的用戶端 ID。

principalId

提出請求的委託人 ID。

sourceIp

請求來源所在的 IP 地址。

sourcePort

請求來源所在的埠口。

reason

Ping 操作失敗的原因。只有在 status為 時,才會出現此欄位Failure

詳細資訊

錯誤的簡要說明。只有在 status為 時,才會出現此欄位Failure

Connection.AuthNError 日誌項目

當用戶端連線嘗試因身分驗證失敗而遭到拒絕Connection.AuthNError時, AWS IoT 訊息中介裝置會產生具有 eventType 的 日誌項目。此日誌項目logLevel的 一律為 ERROR,而 一律statusFailure。此日誌項目對應至 Connection.AuthNError CloudWatch 指標。

重要

Connection.AuthNError 日誌項目為選擇加入,預設為停用。它們會在ERROR日誌層級發出,因此只有在套用至連線的事件層級或資源特定覆寫設定為 ERROR或更詳細的層級 (WARN、 或 ) 時INFO,才會發佈Connection.AuthNError日誌項目DEBUG。若要設定這些設定,請參閱 在 AWS IoT (CLI) 中設定帳戶和事件層級登入在 AWS IoT (CLI) 中設定資源特定的覆寫

注意

此日誌項目會發佈到 AWS 帳戶 擁有 TLS 交握中提供的伺服器名稱指示 (SNI) 的 。如果用戶端未提供 SNI,或 SNI 無法解析至帳戶,則不會發出日誌項目或指標。

Connection.AuthNError 日誌項目範例

{ "timestamp": "2025-10-31 15:37:23.476", "logLevel": "ERROR", "traceId": "20b23f3f-d7f1-feae-169f-82263394fbdb", "accountId": "123456789012", "status": "Failure", "eventType": "Connection.AuthNError", "protocol": "MQTT", "authenticationType": "AWS_X509", "clientId": "abf27092886e49a8a5c1922749736453", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "sourceIp": "205.251.233.181", "sourcePort": 13490, "targetIp": "52.94.236.10", "targetPort": 8883, "serverNameIndication": "a1b2c3d4e5f6g7-ats.iot.us-east-1.amazonaws.com", "reason": "DEVICE_CERTIFICATE_NOT_REGISTERED", "details": "Device certificate is not registered" }

除了 常用 CloudWatch Logs 屬性Connection.AuthNError 記錄項目包含下列屬性:

protocol

用來提出要求的協定。有效值為 MQTTHTTP

authenticationType

用於連線嘗試的身分驗證類型。有效值為 AWS_X509AWS_SIGV4CUSTOM_AUTHCUSTOM_AUTH_X509

clientId

提出請求的用戶端 ID,如果有的話。

principalId

提出請求的委託人 ID,如果有的話。

sourceIp

請求來源所在的 IP 地址。

sourcePort

請求來源所在的埠口。

targetIp

連線的目的地 IP 地址。此欄位可能不會出現在所有日誌項目中。

targetPort

連線的目的地連接埠。

serverNameIndication

用戶端提供的 TLS 伺服器名稱指示 (SNI) 延伸主機名稱。

reason

用戶端身分驗證失敗的原因。Connection.AuthNError 錯誤代碼 如需可能值的清單,請參閱 。

詳細資訊

身分驗證失敗的簡短描述。

Connection.AuthNError 錯誤代碼

下表列出reason錯誤代碼,以及可針對Connection.AuthNError日誌項目顯示的對應details訊息。未來可能會新增其他錯誤代碼。

錯誤碼 錯誤訊息
CUSTOM_AUTHORIZER_LAMBDA_EXECUTION_ERROR 自訂授權方 Lambda 調用失敗
CUSTOM_AUTHORIZER_NOT_FOUND 找不到自訂授權方
CUSTOM_AUTHORIZER_PARAMETER_INVALID 自訂身分驗證參數無效
DEVICE_CERTIFICATE_INACTIVE 裝置憑證未處於作用中狀態
DEVICE_CERTIFICATE_NOT_REGISTERED 裝置憑證未註冊
DEVICE_CERTIFICATE_REVOKED 裝置憑證已撤銷
DOMAIN_CONFIGURATION_DISABLED 提供的伺服器名稱指示 (SNI) 的網域組態已停用
DOMAIN_CONFIGURATION_INVALID 網域組態中的端點類型無效
INTERNAL_SERVER_ERROR 內部伺服器錯誤
NOT_AUTHENTICATED 提供的登入資料無法驗證
SECURITY_TOKEN_EXPIRED 安全性字符已過期
SECURITY_TOKEN_INVALID 請求中包含的安全字符無效
SECURITY_TOKEN_SIGNATURE_MISMATCH 請求簽章不符合提供的簽章
SNI_MISUSED 用戶端使用未與此帳戶關聯的 SNI

DeleteConnection 日誌項目

訊息 AWS IoT 中介裝置會在刪除 MQTT 用戶端連線DeleteConnection時,使用 eventType 的 產生日誌項目。

DeleteConnection 日誌項目範例

{ "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 Logs 屬性 之外,DeleteConnection日誌項目還包含下列屬性:

clientId

將中斷連線的用戶端 ID。

principalId

提出請求的委託人 ID。如需有關如何使用委託人 ID 識別委託人的資訊,請參閱《IAM 使用者指南》中的比較 IAM 身分和憑證

protocol

用來提出要求的協定。有效值為 HTTP

sourceIp

請求來源所在的 IP 地址。

sourcePort

請求來源所在的埠口。

GetRetainedMessage 日誌項目

AWS IoT 訊息中介裝置會在GetRetainedMessage呼叫 GetRetainedMessage時產生具有 eventType 的日誌項目。

GetRetainedMessage 日誌項目範例

{ "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 Logs 屬性 之外,GetRetainedMessage日誌項目還包含下列屬性:

lastModifiedDate

儲存保留訊息的 Epoch 日期和時間,以毫秒為單位 AWS IoT。

protocol

用來提出要求的協定。有效值:HTTP

qos

發佈請求中使用的服務品質 (QoS) 等級。有效值為 01

topicName

訂閱主題的名稱。

ListRetainedMessage 日誌項目

AWS IoT 訊息中介裝置會在ListRetainedMessages呼叫 ListRetainedMessage時產生具有 eventType 的日誌項目。

ListRetainedMessage 日誌項目範例

{ "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 Logs 屬性 之外,ListRetainedMessage日誌項目還包含下列屬性:

protocol

用來提出要求的協定。有效值:HTTP

ListSubscriptions 日誌項目

AWS IoT 訊息中介裝置會在收到列出用戶端訂閱的請求ListSubscriptions時,使用 eventType 的 產生日誌項目。

ListSubscriptions 日誌項目範例

{ "timestamp": "2025-08-22 19:57:46.587", "logLevel": "INFO", "traceId": "5bea658a-0752-bf20-770f-ad17c8dabb95", "accountId": "987654321", "status": "Success", "eventType": "ListSubscriptions", "protocol": "HTTP", "clientId": "abc", "principalId": "AIDAZPOK3C3545MCMYATF", "sourceIp": "52.94.133.137", "sourcePort": 13490, "maxResults": 100 }

除了 常用 CloudWatch Logs 屬性ListSubscriptions 記錄項目包含下列屬性:

clientId

提出請求的用戶端 ID。

principalId

提出請求的委託人 ID。

protocol

用來提出要求的協定。有效值:HTTP

sourceIp

請求來源所在的 IP 地址。

sourcePort

請求來源所在的埠口。

maxResults

請求的結果數量上限。

GetConnection 日誌項目

AWS IoT 訊息中介裝置會在收到取得連線資訊的請求GetConnection時,使用 eventType 的 產生日誌項目。

GetConnection 日誌項目範例

{ "timestamp": "2025-08-22 19:19:50.679", "logLevel": "INFO", "traceId": "7a04de1a-d1a3-50bc-3ca5-96b1ee293dae", "accountId": "987654321", "status": "Success", "eventType": "GetConnection", "protocol": "HTTP", "clientId": "aClient", "principalId": "AIDAZPOK3C3545MCMYATF", "sourceIp": "52.94.133.137", "sourcePort": 31983 }

除了 常用 CloudWatch Logs 屬性GetConnection 記錄項目包含下列屬性:

clientId

提出請求的用戶端 ID。

principalId

提出請求的委託人 ID。

protocol

用來提出要求的協定。有效值:HTTP

sourceIp

API 請求產生所在的 IP 地址。

sourcePort

API 請求產生所在的連接埠。

Publish-In 日誌項目

當 AWS IoT 訊息中介裝置收到 MQTT 訊息時,會產生具有 之 eventType的日誌項目Publish-In

Publish-In 日誌項目範例

{ "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 Logs 屬性 之外,Publish-In日誌項目還包含下列屬性:

clientId

提出請求的用戶端 ID。

principalId

提出請求的委託人 ID。

protocol

用來提出要求的協定。有效值為 MQTTHTTP

保留

當「保留」旗標訊息的值設定為 True 時所使用的屬性。如果訊息沒有設定「保留」旗標,則此屬性不會顯示在日誌條目中。如需詳細資訊,請參閱 MQTT 保留訊息

sourceIp

請求來源所在的 IP 地址。

sourcePort

請求來源所在的埠口。

topicName

訂閱主題的名稱。

Publish-Out 日誌項目

當訊息代理程式發佈 MQTT 訊息時,會產生 eventTypePublish-Out 的日誌項目。

Publish-Out 日誌項目範例

{ "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 Logs 屬性 之外,Publish-Out日誌項目還包含下列屬性:

clientId

接收有關該 MQTT 主題之訊息的訂閱用戶端的 ID。

principalId

提出請求的委託人 ID。

protocol

用來提出要求的協定。有效值為 MQTTHTTP

sourceIp

請求來源所在的 IP 地址。

sourcePort

請求來源所在的埠口。

topicName

訂閱主題的名稱。

佇列日誌項目

當具有持久性工作階段的裝置中斷連線時,MQTT 訊息代理程式會儲存裝置的訊息,並 AWS IoT 產生 eventType 為 的日誌項目Queued。如需 MQTT 持久性工作階段的詳細資訊,請參閱 MQTT 持久性工作階段

佇列的伺服器錯誤日誌項目範例

{ "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 Logs 屬性 之外,Queued伺服器錯誤日誌項目還包含下列屬性:

clientId

訊息排入佇列的用戶端 ID。

詳細資訊
Server Error

伺服器錯誤會造成訊息無法儲存。

protocol

用來提出要求的協定。這個值將永遠為 MQTT

qos

請求的服務品質 (QoS) 等級。該值將始終為 1,因為具有 QoS 為 0 的訊息不會儲存。

topicName

訂閱主題的名稱。

佇列成功日誌項目範例

{ "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 Logs 屬性 之外,Queued成功日誌項目還包含下列屬性:

clientId

訊息排入佇列的用戶端 ID。

protocol

用來提出要求的協定。這個值將永遠為 MQTT

qos

請求的服務品質 (QoS) 等級。該值將始終為 1,因為具有 QoS 為 0 的訊息不會儲存。

topicName

訂閱主題的名稱。

佇列限流日誌項目範例

{ "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 Logs 屬性 之外,Queued限流日誌項目還包含下列屬性:

clientId

訊息排入佇列的用戶端 ID。

詳細資訊
Throttled while queueing offline message

用戶端超出 Queued messages per second per account 限制,因此訊息不會儲存。

protocol

用來提出要求的協定。這個值將永遠為 MQTT

qos

請求的服務品質 (QoS) 等級。該值將始終為 1,因為具有 QoS 為 0 的訊息不會儲存。

topicName

訂閱主題的名稱。

訂閱日誌項目

當 MQTT 用戶端訂閱主題Subscribe時, AWS IoT 訊息中介裝置會產生具有 eventType 之 的日誌項目。

MQTT 3 訂閱日誌項目範例

{ "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 Logs 屬性 之外,Subscribe日誌項目還包含下列屬性:

clientId

提出請求的用戶端 ID。

principalId

提出請求的委託人 ID。

protocol

用來提出要求的協定。這個值將永遠為 MQTT

sourceIp

請求來源所在的 IP 地址。

sourcePort

請求來源所在的埠口。

topicName

訂閱主題的名稱。

MQTT 5 訂閱日誌項目範例

{ "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 Logs 屬性MQTT 3 訂閱日誌項目屬性之外,MQTT 5 Subscribe 日誌項目還包含下列屬性:

訂閱

「訂閱」請求中所要求主題與個別 MQTT 5 原因代碼之間的對應清單。如需更多詳細資訊,請參閱 MQTT 原因代碼

取消訂閱日誌項目

當 MQTT 用戶端取消訂閱 MQTT 主題Unsubscribe時, AWS IoT 訊息中介裝置會產生具有 eventType 之 的日誌項目。

MQTT 取消訂閱日誌項目範例

{ "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 Logs 屬性 之外,Unsubscribe日誌項目還包含下列屬性:

protocol

用來提出要求的協定。這個值將永遠為 MQTT

clientId

提出請求的用戶端 ID。

principalId

提出請求的委託人 ID。

sourceIp

請求來源所在的 IP 地址。

sourcePort

請求來源所在的埠口。

SendDirectMessage 日誌項目

AWS IoT 訊息中介裝置會在發出 SendDirectMessage API 請求SendDirectMessage時,使用 eventType 的 產生日誌項目。

AWS IoT Core 當您啟用 IoT 記錄時, 會將 SendDirectMessage 事件記錄到 CloudWatch Logs。如需設定記錄的詳細資訊,請參閱 設定 AWS IoT 記錄

SendDirectMessage 成功日誌項目範例

{ "timestamp": "2026-01-20 20:44:00.123", "logLevel": "INFO", "traceId": "1a2b3c4d-1234-3214-abcd-1a2b3c4d5e6f", "accountId": "123456789012", "status": "Success", "eventType": "SendDirectMessage", "protocol": "HTTP", "topicName": "commands/reboot", "clientId": "mydevice-002", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "confirmation": true, "sourceIp": "203.0.113.45", "sourcePort": 52847, "timeout": 3 }

SendDirectMessage 失敗日誌項目範例

{ "timestamp": "2026-01-15 20:30:00.123", "logLevel": "ERROR", "traceId": "1a2b3c4d-1234-5678-abcd-1a2b3c4d5e6f", "accountId": "123456789012", "status": "Failure", "eventType": "SendDirectMessage", "protocol": "HTTP", "topicName": "commands/reboot", "clientId": "myDevice", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "confirmation": true, "sourceIp": "203.0.113.45", "sourcePort": 52847, "reason": "DELIVERY_CONFIRMATION_TIMEOUT", "details": "The delivery confirmation was not received within the specified timeout period", "timeout": 2 }

除了 常用 CloudWatch Logs 屬性SendDirectMessage 記錄項目包含下列屬性:

clientId

接收直接訊息的用戶端 ID。

topicName

傳送訊息的主題。

protocol

用來提出要求的協定。有效值:HTTP

確認

是否請求交付確認。有效值為 truefalse

timeout

等待接收用戶端傳送確認的時間上限,以秒為單位。只有在 confirmation為 時才會出現true

reason

失敗的原因代碼。

詳細資訊

錯誤的簡要說明。

principalId

提出請求的委託人 ID。

sourceIp

請求來源所在的 IP 地址。

sourcePort

請求來源所在的埠口。

原因代碼

下列原因代碼和詳細資訊會出現在失敗日誌項目中:

SendDirectMessage 原因代碼
Reason 詳細資訊
MALFORMED_CLIENTID 此用戶端 ID 無效。客戶 IDs 不得超過 128 個字元,且開頭不得為貨幣符號 ($)。輸入不同的用戶端 ID
INVALID_TOPIC 此主題無效。主題大小必須在 256 個位元組內,應包含少於 9 個部分,且不應以貨幣符號 ($) 開頭
INVALID_TIMEOUT_PARAMETER 無效的逾時值。必須是介於 1 到 15 之間的整數
INVALID_CONFIRMATION_PARAMETER 無效的確認值。必須是 'true' 或 'false'
RECEIVE_AUTHORIZATION_FAILURE 目標用戶端的授權失敗。確認您的政策授予必要的許可
TARGET_CLIENT_ID_NOT_FOUND 找不到用戶端 ID。請確認用戶端已連線,然後再試一次
TARGET_CLIENT_NOT_CONNECTED 目標用戶端 ID 未連線,但具有作用中的持久性工作階段
SEND_DIRECT_MESSAGE_THROTTLED 由於超過傳送直接訊息請求率,請求遭拒
RECEIVE_SESSION_THROTTLED 請求遭拒,因為請求率超過每個連線每秒的傳出發佈請求
RECEIVER_MAX_UNACKED_QOS1_EXCEEDED 接收者用戶端已達到未確認的 QoS 1 訊息數量上限
DELIVERY_CONFIRMATION_TIMEOUT 未在指定的逾時期間內收到交付確認
DELIVERY_CONFIRMATION_SENDER_DISCONNECT 寄件者在收到交付確認之前中斷連線
CLIENT_ENDPOINT_NOT_WRITABLE 接收器用戶端端點不可寫入
INTERNAL_SERVER_ERROR 內部伺服器錯誤

伺服器憑證 OCSP 日誌項目

AWS IoT Core 會為下列事件產生日誌項目:

RetrieveOCSPStapleData 日誌項目

AWS IoT Core 當伺服器擷取 OCSP 基本資料RetrieveOCSPStapleData時, 會產生具有 eventType 的 日誌項目。

RetrieveOCSPStapleData 日誌項目範例

以下是 的日誌項目範例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 Logs 屬性 之外,日誌項目還包含下列屬性:

reason

操作失敗的原因。

domainConfigName

網域組態的名稱。

connectionDetails

連線詳細資訊的簡短說明。

  • httpStatusCode

    OCSP 回應程式傳回的 HTTP 狀態碼,以回應用戶端對伺服器提出的請求。

  • ocspResponderUri

    從伺服器憑證擷取的 OCSP AWS IoT Core 回應程式 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 回應者簽署此回應的時間。

  • stapledDataPayloadSize

    主控資料的承載大小。

私有端點的 RetrieveOCSPStapleData 日誌項目

AWS IoT Core 當伺服器擷取 OCSP 基本資料RetrieveOCSPStapleData時, 會產生具有 eventType 的 日誌項目。

私有端點的 RetrieveOCSPStapleData 日誌項目範例

以下是 的日誌項目範例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操作,除了 RetrieveOCSPStapleData 日誌項目中的 常用 CloudWatch Logs 屬性和 屬性之外,私有端點的日誌項目還包含下列屬性:

lambdaDetails

Lambda 函數的詳細資訊。

  • lambdaArn

    Lambda 函數的 ARN。

  • sourceArn

    網域組態的 ARN。

authorizedResponderArn

如果在網域組態中設定了授權方回應程式的 ARN。

Device Shadow 日誌項目

AWS IoT Device Shadow 服務會產生下列事件的日誌項目:

DeleteThingShadow 日誌項目

當收到刪除 Device Shadow 的要求時,Device Shadow 服務會產生 eventTypeDeleteThingShadow 的日誌項目。

DeleteThingShadow 日誌項目範例

{ "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 Logs 屬性 之外,DeleteThingShadow日誌項目還包含下列屬性:

deviceShadowName

要更新的影子名稱。

protocol

用來提出要求的協定。有效值為 MQTTHTTP

topicName

請求所發布的主題名稱。

GetThingShadow 日誌項目

當收到影子的 get 要求時,Device Shadow 服務會產生 eventTypeGetThingShadow 的日誌項目。

GetThingShadow 日誌項目範例

{ "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 Logs 屬性 之外,GetThingShadow日誌項目還包含下列屬性:

deviceShadowName

所要求影子的名稱。

protocol

用來提出要求的協定。有效值為 MQTTHTTP

topicName

請求所發布的主題名稱。

UpdateThingShadow 日誌項目

當收到更新 Device Shadow 的要求時,Device Shadow 服務會產生 eventTypeUpdateThingShadow 的日誌項目。

UpdateThingShadow 日誌項目範例

{ "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 Logs 屬性 之外,UpdateThingShadow日誌項目還包含下列屬性:

deviceShadowName

要更新的影子名稱。

protocol

用來提出要求的協定。有效值為 MQTTHTTP

topicName

請求所發布的主題名稱。

Rules engine 日誌項目

AWS IoT 規則引擎會產生下列事件的日誌:

FunctionExecution 日誌項目

當規則的 SQL 查詢呼叫外部函數時,規則引擎會產生 eventTypeFunctionExecution 的日誌項目。當規則的動作向 AWS IoT 或其他 Web 服務提出 HTTP 請求 (例如呼叫 get_thing_shadowmachinelearning_predict) 時,會呼叫外部 函數。

FunctionExecution 日誌項目範例

{ "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 Logs 屬性 之外,FunctionExecution日誌項目還包含下列屬性:

clientId

N/A 適用於 FunctionExecution 日誌。

principalId

提出請求的委託人 ID。

resources

該規則動作所使用的資源集合。

ruleName

符合的規則名稱。

topicName

訂閱主題的名稱。

RuleExecution 日誌項目

當 AWS IoT 規則引擎觸發規則的動作時,會產生RuleExecution日誌項目。

RuleExecution 日誌項目範例

{ "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 搭配批次處理日誌項目範例

{ "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 Logs 屬性RuleExecution 記錄項目包含下列屬性:

clientId

提出請求的用戶端 ID。

principalId

提出請求的委託人 ID。

resources

該規則動作所使用的資源集合。

ruleAction

受到觸發的動作名稱。

ruleName

符合的規則名稱。

topicName

訂閱主題的名稱。

RuleMatch 日誌項目

當訊息中介裝置收到符合規則的訊息RuleMatch時, AWS IoT 規則引擎會產生具有 eventType 的 日誌項目。

RuleMatch 日誌項目範例

{ "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 Logs 屬性 之外,RuleMatch日誌項目還包含下列屬性:

clientId

提出請求的用戶端 ID。

principalId

提出請求的委託人 ID。

ruleName

符合的規則名稱。

topicName

訂閱主題的名稱。

RuleExecutionThrottled 日誌項目

調節執行時, AWS IoT 規則引擎會產生具有 之 eventType的日誌項目RuleExecutionThrottled

RuleExecutionThrottled 日誌項目範例

{ "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 Logs 屬性 之外,RuleExecutionThrottled日誌項目還包含下列屬性:

clientId

提出請求的用戶端 ID。

詳細資訊

錯誤的簡要說明。

principalId

提出請求的委託人 ID。

reason

字串「RuleExecutionThrottled」。

ruleName

欲觸發的規則名稱。

topicName

已發佈的主題名稱。

RuleNotFound 日誌項目

當 AWS IoT 規則引擎找不到具有指定名稱的規則時,會產生具有 之 eventType的日誌項目RuleNotFound

RuleNotFound 日誌項目範例

{ "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 Logs 屬性 之外,RuleNotFound日誌項目還包含下列屬性:

clientId

提出請求的用戶端 ID。

詳細資訊

錯誤的簡要說明。

principalId

提出請求的委託人 ID。

reason

"RuleNotFound" 字串。

ruleName

找不到的規則名稱。

topicName

已發佈的主題名稱。

StartingRuleExecution 日誌項目

當 AWS IoT 規則引擎開始觸發規則的動作時,會產生具有 之 eventType的日誌項目StartingRuleExecution

StartingRuleExecution 日誌項目範例

{ "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 Logs 屬性 之外,rule-日誌項目還包含下列屬性:

clientId

提出請求的用戶端 ID。

principalId

提出請求的委託人 ID。

ruleAction

受到觸發的動作名稱。

ruleName

符合的規則名稱。

topicName

訂閱主題的名稱。

任務日誌項目

AWS IoT 任務服務會產生下列事件的日誌項目。從裝置收到 MQTT 或 HTTP 請求時系統會產生日誌項目。

DescribeJobExecution 日誌項目

AWS IoT Jobs 服務會在服務收到描述任務執行的請求DescribeJobExecution時,使用 eventType 的 產生日誌項目。

DescribeJobExecution 日誌項目範例

{ "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 Logs 屬性 之外,GetJobExecution日誌項目還包含下列屬性:

clientId

提出請求的用戶端 ID。

clientToken

用來確保請求冪等的,是一個唯一、區分大小寫的識別符。如需詳細資訊,請參閱如何確保冪等

詳細資訊

任務裝置的其他資訊。

jobId

任務執行的任務 ID。

protocol

用來提出要求的協定。有效值為 MQTTHTTP

topicName

用來提出請求的主題。

GetPendingJobExecution 日誌項目

AWS IoT Jobs 服務會在服務收到任務執行請求GetPendingJobExecution時,使用 eventType 的 產生日誌項目。

GetPendingJobExecution 日誌項目範例

{ "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 Logs 屬性 之外,GetPendingJobExecution日誌項目還包含下列屬性:

clientId

提出請求的用戶端 ID。

clientToken

用以確保請求冪等的,是一個唯一、區分大小寫的識別符。如需詳細資訊,請參閱如何確保冪等

詳細資訊

任務裝置的其他資訊。

protocol

用來提出要求的協定。有效值為 MQTTHTTP

topicName

訂閱主題的名稱。

ReportFinalJobExecutionCount 日誌項目

AWS IoT Jobs 服務會在任務完成ReportFinalJobExecutionCount時,使用 entryType 的 產生日誌項目。

ReportFinalJobExecutionCount 日誌項目範例

{ "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 Logs 屬性 之外,ReportFinalJobExecutionCount日誌項目還包含下列屬性:

詳細資訊

任務裝置的其他資訊。

jobId

任務執行的任務 ID。

StartNextPendingJobExecution 日誌項目

當它收到啟動下一個待定任務執行的請求時, AWS IoT Jobs 服務會產生具有 之 eventType的日誌項目StartNextPendingJobExecution

StartNextPendingJobExecution 日誌項目範例

{ "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 Logs 屬性 之外,StartNextPendingJobExecution日誌項目還包含下列屬性:

clientId

提出請求的用戶端 ID。

clientToken

用以確保請求冪等的,是一個唯一、區分大小寫的識別符。如需詳細資訊,請參閱如何確保冪等

詳細資訊

任務裝置的其他資訊。

protocol

用來提出要求的協定。有效值為 MQTTHTTP

topicName

用來提出請求的主題。

UpdateJobExecution 日誌項目

AWS IoT Jobs 服務會在服務收到更新任務執行的請求UpdateJobExecution時,使用 eventType 的 產生日誌項目。

UpdateJobExecution 日誌項目範例

{ "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 Logs 屬性 之外,UpdateJobExecution日誌項目還包含下列屬性:

clientId

提出請求的用戶端 ID。

clientToken

用以確保請求冪等的,是一個唯一、區分大小寫的識別符。如需詳細資訊,請參閱如何確保冪等

詳細資訊

任務裝置的其他資訊。

jobId

任務執行的任務 ID。

protocol

用來提出要求的協定。有效值為 MQTTHTTP

topicName

用來提出請求的主題。

versionNumber

任務執行的版本。

裝置佈建日誌項目

AWS IoT 裝置佈建服務會產生下列事件的日誌。

GetDeviceCredentials 日誌項目

AWS IoT 裝置佈建服務會在用戶端呼叫 GetDeviceCredential時,使用 eventType 的 產生日誌項目GetDeviceCredential

GetDeviceCredentials 日誌項目範例

{ "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 Logs 屬性 之外,GetDeviceCredentials日誌項目還包含下列屬性:

詳細資訊

錯誤的簡要說明。

deviceCertificateId

裝置憑證的 ID。

ProvisionDevice 日誌項目

AWS IoT 裝置佈建服務會在用戶端呼叫 ProvisionDevice時,使用 eventType 的 產生日誌項目ProvisionDevice

ProvisionDevice 日誌項目範例

{ "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 Logs 屬性 之外,ProvisionDevice日誌項目還包含下列屬性:

詳細資訊

錯誤的簡要說明。

deviceCertificateId

裝置憑證的 ID。

provisioningTemplateName

佈建範本的名稱。

動態物件群組日誌項目

AWS IoT 動態物件群組會為下列事件產生日誌。

AddThingToDynamicThingGroupsFailed 日誌項目

當 AWS IoT 無法將物件新增至指定的動態群組時,會產生具有 之 eventType的日誌項目AddThingToDynamicThingGroupsFailed。這會在物件符合要在動態物件群組中的準則時發生;不過,它無法加入至動態群組,或從動態群組中移除。發生這種情況的原因是:

  • 事情已經屬於群組的最大數量。

  • --override-dynamic-groups 選項用於將物件新增到靜態物件群組。它已經從動態物件群組中移除,使之成為可能。

如需詳細資訊,請參閱動態物件群組限制與衝突

AddThingToDynamicThingGroupsFailed 日誌項目範例

此範例顯示 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 Logs 屬性 之外,AddThingToDynamicThingGroupsFailed日誌項目還包含下列屬性:

dynamicThingGroupNames

無法新增物件的動態物件群組的陣列。

reason

物件無法新增到動態物件群組的原因。

thingName

無法新增至動態物件群組的物件名稱。

機群索引日誌項目

AWS IoT 機群索引會為下列事件產生日誌項目。

NamedShadowCountForDynamicGroupQueryLimitExceeded 日誌項目

對於動態群組中並非特定於資料來源的查詢術語,每個物件最多處理 25 個已命名影子。當物件違反此限制時,會發出 NamedShadowCountForDynamicGroupQueryLimitExceeded 事件類型。

NamedShadowCountForDynamicGroupQueryLimitExceeded 日誌項目範例

此範例顯示 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 Logs 屬性

所有 CloudWatch Logs 記錄項目皆包含下列這些屬性:

accountId

您的 AWS 帳戶 ID。

eventType

產生日誌的事件類型。事件類型的值會根據產生該日誌項目的事件而定。每個日誌項目說明都包含該 eventType 日誌項目的值。

logLevel

使用的日誌層級。如需詳細資訊,請參閱 日誌層級

status

請求的狀態。

timestamp

用戶端連線至 AWS IoT 訊息代理程式時,人類看得懂的 UTC 時間戳記。

traceId

隨機產生的識別符,可用於建立某個特定請求的所有日誌的關聯性。