View a markdown version of this page

CloudWatch Logs AWS IoT ログエントリ - AWS IoT Core

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

CloudWatch Logs AWS IoT ログエントリ

の各コンポーネントは、独自のログエントリ AWS IoT を生成します。各ログエントリには、ログエントリが生成される原因となった操作を示す eventType が含まれています。このセクションでは、次の AWS IoT コンポーネントによって生成されるログエントリについて説明します。

メッセージブローカーのログエントリ

AWS IoT メッセージブローカーは、次のイベントのログエントリを生成します。

Connect ログエントリ

AWS IoT メッセージブローカーは、MQTT クライアントが接続Connectすると、 eventType の でログエントリを生成します。

Connect 成功ログエントリの例

{ "timestamp": "2017-08-10 15:37:23.476", "logLevel": "INFO", "traceId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "accountId": "111122223333", "status": "Success", "eventType": "Connect", "protocol": "MQTT", "clientId": "abf27092886e49a8a5c1922749736453", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "sourceIp": "203.0.113.11", "sourcePort": 13490 }

接続失敗ログエントリの例

{ "timestamp": "2026-07-09 23:26:48.827", "logLevel": "ERROR", "traceId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "accountId": "111122223333", "status": "Failure", "eventType": "Connect", "protocol": "MQTT", "clientId": "device-12345", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "sourceIp": "203.0.113.1", "sourcePort": 11238, "reason": "throttled", "details": "Exceeded Connect requests per second per account limit" }

に加えてCloudWatch Logs の共通属性、Connectログエントリには次の属性が含まれます。

clientId

リクエストを実行するクライアントの ID。

principalId

リクエストを実行するプリンシパルの ID。

protocol

リクエストを行うために使用されるプロトコル。有効な値は MQTT または HTTP です。

sourceIp

リクエストが発生した IP アドレス。

sourcePort

リクエストが発生したポート。

理由

Connect オペレーションが失敗した理由。このフィールドは、 statusが の場合にのみ存在しますFailure。有効な値は throttled、client_id_throttled、または INTERNAL_SERVER_ERROR です。

details

エラーの簡単な説明。このフィールドは、 statusが の場合にのみ存在しますFailure。

理由コード

次の理由コードと詳細は、Connect障害ログエントリに表示されます。

Reason 詳細
throttled アカウントあたりの 1 秒あたりの Connect リクエスト数の制限を超えました
client_id_throttled クライアント ID あたりの 1 秒あたりの Connect リクエスト数の制限を超えました

Disconnect ログエントリ

AWS IoT メッセージブローカーは、MQTT クライアントが切断Disconnectされると、 が 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

リクエストを行うために使用されるプロトコル。有効な値は MQTT または HTTP です。

sourceIp

リクエストが発生した IP アドレス。

sourcePort

リクエストが発生したポート。

理由

クライアントが切断する理由。

details

エラーの簡単な説明。

disconnectReason

クライアントが切断する理由。

Ping ログエントリ

AWS IoT メッセージブローカーは、接続されたクライアントから MQTT PINGREQ を処理し、対応する PINGRESP を送信するPingときに、 eventTypeの を持つログエントリを生成します。Ping オペレーションごとに 1 つのログエントリが出力されます。

重要

Ping ログエントリはデフォルトでオプトインおよび無効になっています。放出しきい値はエントリごとの結果と一致します。成功エントリは DEBUG レベルで放出され、失敗エントリは ERRORレベルで放出されます。その結果、接続に適用されるイベントレベルまたはリソース固有のオーバーライドがよりERROR詳細なレベル (WARN、、または DEBUG) に設定されている場合、Ping 失敗エントリが表示されますがINFO、Ping 成功エントリは、そのレベルが に設定されている場合にのみ発行されますDEBUG。これらの設定を構成するには、アカウントとイベントレベルのログインを設定する AWS IoT (CLI)「」および「」を参照してくださいAWS IoT (CLI) でリソース固有のオーバーライドを設定する。

成功すると、 logLevelは DEBUGで、 statusは ですSuccess。失敗した場合 (たとえば、PINGRESP を送信する前にクライアント接続が終了した場合)、 logLevelは ERRORで、 は statusですFailure。

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

がクライアントから PINGREQ AWS IoT Core を受信したときのタイムスタンプ。

responseTimestamp

PINGRESP をクライアント AWS IoT Core に送信したときのタイムスタンプ。このフィールドは、 statusが の場合にのみ存在しますSuccess。

clientId

リクエストを実行するクライアントの ID。

principalId

リクエストを実行するプリンシパルの ID。

sourceIp

リクエストが発生した IP アドレス。

sourcePort

リクエストが発生したポート。

理由

Ping オペレーションが失敗した理由。このフィールドは、 statusが の場合にのみ存在しますFailure。

details

エラーの簡単な説明。このフィールドは、 statusが の場合にのみ存在しますFailure。

Connection.AuthNError ログエントリ

AWS IoT メッセージブローカーは、認証の失敗によりクライアント接続の試行が拒否されたConnection.AuthNErrorときに、 eventTypeの を持つログエントリを生成します。このログエントリlogLevelの は常に ERRORで、 は常に statusですFailure。このログエントリは Connection.AuthNError CloudWatch メトリクスに対応します。

重要

Connection.AuthNError ログエントリはデフォルトでオプトインおよび無効になっています。ログERRORレベルで出力されるため、Connection.AuthNErrorログエントリは、接続に適用されるイベントレベルまたはリソース固有のオーバーライドが ERRORまたはより詳細なレベル (WARN、INFO、または ) に設定されている場合にのみ発行されますDEBUG。これらの設定を構成するには、アカウントとイベントレベルのログインを設定する AWS IoT (CLI)「」および「」を参照してくださいAWS IoT (CLI) でリソース固有のオーバーライドを設定する。

注記

このログエントリは、TLS ハンドシェイクで提供されるサーバー名表示 (SNI) を所有 AWS アカウント する に発行されます。クライアントが 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

リクエストを行うために使用されるプロトコル。有効な値は MQTT または HTTP です。

authenticationType

接続試行に使用される認証のタイプ。有効な値は、AWS_X509、AWS_SIGV4、CUSTOM_AUTH、および CUSTOM_AUTH_X509 です。

clientId

利用可能な場合、リクエストを行うクライアントの ID。

principalId

利用可能な場合、リクエストを行うプリンシパルの ID。

sourceIp

リクエストが発生した IP アドレス。

sourcePort

リクエストが発生したポート。

targetIp

接続の送信先 IP アドレス。このフィールドは、すべてのログエントリに存在するとは限りません。

targetPort

接続の送信先ポート。

serverNameIndication

クライアントによって提供される TLS Server Name Indication (SNI) 拡張ホスト名。

理由

クライアント認証が失敗した理由。可能な値のリストConnection.AuthNError エラーコードについては、「」を参照してください。

details

認証失敗の簡単な説明。

Connection.AuthNError エラーコード

次の表に、Connection.AuthNErrorログエントリに表示される可能性のあるreasonエラーコードと対応する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 ID と認証情報を比較する」を参照してください。

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

保持されたメッセージが保存されたエポック日時をミリ秒単位で表します AWS IoT。

protocol

リクエストを行うために使用されるプロトコル。有効な値: HTTP。

qos

発行要求で使用されるサービス品質 (QoS) レベル。有効な値は 0 または 1 です。

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 メッセージブローカーは、クライアントサブスクリプションeventTypeを一覧表示するリクエストが受信ListSubscriptionsされると、 のログエントリを生成します。

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": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "accountId": "111122223333", "status": "Success", "eventType": "Publish-In", "protocol": "MQTT", "topicName": "$aws/things/MyThing/shadow/get", "clientId": "abf27092886e49a8a5c1922749736453", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "sourceIp": "203.0.113.12", "sourcePort": 13490, "retain": "True" }

パブリッシュイン失敗ログエントリの例

{ "timestamp": "2026-07-09 22:01:12.858", "logLevel": "ERROR", "traceId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "accountId": "111122223333", "status": "Failure", "eventType": "Publish-In", "protocol": "MQTT", "topicName": "testing/topic", "clientId": "device-12345", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "sourceIp": "203.0.113.4", "sourcePort": 10872, "reason": "throttled", "details": "Exceeded Inbound publish requests per second per account limit" }

に加えてCloudWatch Logs の共通属性、Publish-Inログエントリには次の属性が含まれます。

clientId

リクエストを実行するクライアントの ID。

principalId

リクエストを実行するプリンシパルの ID。

protocol

リクエストを行うために使用されるプロトコル。有効な値は MQTT または HTTP です。

保持

メッセージに RETAIN フラグが True の値で設定されている場合に使用される属性。メッセージに RETAIN フラグが設定されていない場合、この属性はログエントリに表示されません。詳細については、「保持された MQTT メッセージ」を参照してください。

sourceIp

リクエストが発生した IP アドレス。

sourcePort

リクエストが発生したポート。

topicName

サブスクライブされたトピックの名前。

理由

Publish-In オペレーションが失敗した理由。このフィールドは、 statusが の場合にのみ存在しますFailure。有効な値は throttled、connection_throttled、CLIENT_ERROR、または INTERNAL_SERVER_ERROR です。

details

エラーの簡単な説明。このフィールドは、 statusが の場合にのみ存在しますFailure。

理由コード

次の理由コードと詳細は、Publish-In障害ログエントリに表示されます。

Reason 詳細
throttled アカウントあたりの 1 秒あたりのインバウンドパブリッシュリクエスト数の制限を超えました
throttled アカウントあたりの 1 秒あたりのアウトバウンド発行リクエスト数の制限を超えました
throttled アカウントあたりの 1 秒あたりのルール評価の超過
throttled アカウントあたりの 1 秒あたりの保持メッセージのインバウンドパブリッシュリクエスト数の制限を超えました
throttled トピックあたりの 1 秒あたりの保持メッセージインバウンドパブリッシュリクエスト数の制限を超えました
throttled アカウントあたりの保持メッセージの最大数の制限を超えました
connection_throttled 接続あたりの 1 秒あたりの発行リクエスト数の制限を超えました
CLIENT_ERROR 未確認のインバウンド QoS 1 発行リクエストの最大制限を超えました

Publish-Out ログエントリ

メッセージブローカーは、MQTT メッセージを公開する際に、eventType という Publish-Out のログエントリを生成します。

Publish-Out 成功ログエントリの例

{ "timestamp": "2017-08-10 15:39:30.961", "logLevel": "INFO", "traceId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE33333", "accountId": "111122223333", "status": "Success", "eventType": "Publish-Out", "protocol": "MQTT", "topicName": "$aws/things/MyThing/shadow/get", "clientId": "abf27092886e49a8a5c1922749736453", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "sourceIp": "203.0.113.13", "sourcePort": 13490 }

パブリッシュアウト失敗ログエントリの例

{ "timestamp": "2026-07-14 21:12:33.026", "logLevel": "ERROR", "traceId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "accountId": "111122223333", "status": "Failure", "eventType": "Publish-Out", "protocol": "MQTT", "topicName": "testing/topic", "clientId": "subscriberClientThrottled", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "reason": "connection_throttled", "details": "Exceeded Publish requests per second per connection limit" }

に加えてCloudWatch Logs の共通属性、Publish-Outログエントリには次の属性が含まれます。

clientId

その MQTT トピックでメッセージを受信するサブスクライブクライアントの ID。

principalId

リクエストを実行するプリンシパルの ID。

protocol

リクエストを行うために使用されるプロトコル。有効な値は MQTT または HTTP です。

sourceIp

リクエストが発生した IP アドレス。

sourcePort

リクエストが発生したポート。

topicName

サブスクライブされたトピックの名前。

理由

Publish-Out オペレーションが失敗した理由。このフィールドは、 statusが の場合にのみ存在しますFailure。有効な値は throttled、connection_throttled、CLIENT_ERROR、または INTERNAL_SERVER_ERROR です。

details

エラーの簡単な説明。このフィールドは、 statusが の場合にのみ存在しますFailure。

理由コード

次の理由コードと詳細は、Publish-Out障害ログエントリに表示されます。

Reason 詳細
throttled アカウントあたりの 1 秒あたりのアウトバウンド発行リクエスト数の制限を超えました
connection_throttled 接続制限あたりの 1 秒あたりの発行リクエスト数を超えました
connection_throttled アウトバウンド未確認 QoS 1 パブリッシュリクエストの最大制限を超えました
CLIENT_ERROR クライアントエンドポイントが書き込み可能ではない
CLIENT_ERROR クライアントが接続されていない

キューに保存されたログエントリ

永続セッションを持つデバイスが切断されると、MQTT メッセージブローカーはデバイスのメッセージを保存し、eventType が のログエントリ AWS IoT を生成しますQueued。MQTT 永続セッションの詳細については、MQTT 永続的セッション「」を参照してください。

キューに保存されたサーバーエラーログエントリの例

{ "timestamp": "2022-08-10 15:39:30.961", "logLevel": "ERROR", "traceId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "accountId": "111122223333", "topicName": "$aws/things/MyThing/get", "clientId": "123123123", "qos": "1", "protocol": "MQTT", "eventType": "Queued", "status": "Failure", "details": "Server Error" }

に加えてCloudWatch Logs の共通属性、Queuedサーバーエラーログエントリには次の属性が含まれます。

clientId

メッセージがキューに保存されたクライアントの ID。

details
Server Error

サーバーエラーにより、メッセージの保存が妨げられました。

protocol

リクエストを行うために使用されるプロトコル。値は常に MQTT です。

qos

リクエストのサービス品質 (QoS) レベル。QoS が 0 のメッセージは保存されないため、値は常に 1 になります。

topicName

サブスクライブされたトピックの名前。

キューに保存された成功ログエントリの例

{ "timestamp": "2022-08-10 15:39:30.961", "logLevel": "INFO", "traceId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "accountId": "111122223333", "topicName": "$aws/things/MyThing/get", "clientId": "123123123", "qos": "1", "protocol": "MQTT", "eventType": "Queued", "status": "Success" }

に加えてCloudWatch Logs の共通属性、Queued成功ログエントリには次の属性が含まれます。

clientId

メッセージがキューに保存されたクライアントの ID。

protocol

リクエストを行うために使用されるプロトコル。値は常に MQTT です。

qos

リクエストのサービス品質 (QoS) レベル。QoS が 0 のメッセージは保存されないため、値は常に 1 になります。

topicName

サブスクライブされたトピックの名前。

キューに保存されているスロットリングされたログエントリの例

{ "timestamp": "2022-08-10 15:39:30.961", "logLevel": "ERROR", "traceId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE33333", "accountId": "111122223333", "topicName": "$aws/things/MyThing/get", "clientId": "123123123", "qos": "1", "protocol": "MQTT", "eventType": "Queued", "status": "Failure", "reason": "connection_throttled", "details": "Throttled while queueing offline message" }

に加えてCloudWatch Logs の共通属性、Queuedスロットリングされたログエントリには次の属性が含まれます。

clientId

メッセージがキューに保存されたクライアントの ID。

details

エラーの簡単な説明。status が の場合Failure、値は ですThrottled while queueing offline message。

protocol

リクエストを行うために使用されるプロトコル。値は常に MQTT です。

qos

リクエストのサービス品質 (QoS) レベル。QoS が 0 のメッセージは保存されないため、値は常に 1 になります。

理由
connection_throttled

クライアントが Publish requests per second per connection 制限を超えたため、メッセージは保存されませんでした。

throttled

アカウントが Queued messages per second per account 制限を超えたため、メッセージは保存されませんでした。

topicName

サブスクライブされたトピックの名前。

Subscribe ログエントリ

AWS IoT メッセージブローカーは、MQTT クライアントがトピックをサブスクライブSubscribeするときに、 eventTypeの を持つログエントリを生成します。

MQTT 3 Subscribe 成功ログエントリの例

{ "timestamp": "2017-08-10 15:39:04.413", "logLevel": "INFO", "traceId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111", "accountId": "111122223333", "status": "Success", "eventType": "Subscribe", "protocol": "MQTT", "topicName": "$aws/things/MyThing/shadow/#", "clientId": "abf27092886e49a8a5c1922749736453", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "sourceIp": "203.0.113.14", "sourcePort": 13490 }

サブスクライブ失敗ログエントリの例

{ "timestamp": "2026-07-09 23:07:45.633", "logLevel": "ERROR", "traceId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "accountId": "111122223333", "status": "Failure", "eventType": "Subscribe", "protocol": "MQTT", "topicName": "subscribe/test", "clientId": "device-12345", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "sourceIp": "203.0.113.2", "sourcePort": 10494, "reason": "throttled", "details": "Exceeded Subscriptions per second per account limit" }

に加えてCloudWatch Logs の共通属性、Subscribeログエントリには次の属性が含まれます。

clientId

リクエストを実行するクライアントの ID。

principalId

リクエストを実行するプリンシパルの ID。

protocol

リクエストを行うために使用されるプロトコル。値は常に MQTT です。

sourceIp

リクエストが発生した IP アドレス。

sourcePort

リクエストが発生したポート。

topicName

サブスクライブされたトピックの名前。

理由

Subscribe オペレーションが失敗した理由。このフィールドは、 statusが の場合にのみ存在しますFailure。有効な値は throttled、CLIENT_ERROR、または INTERNAL_SERVER_ERROR です。

details

エラーの簡単な説明。このフィールドは、 statusが の場合にのみ存在しますFailure。

MQTT 5 Subscribe ログエントリの例

{ "timestamp": "2022-11-30 16:24:15.628", "logLevel": "INFO", "traceId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE22222", "accountId": "111122223333", "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": "203.0.113.15", "sourcePort": 13490 }

MQTT 5 Subscribe オペレーションの場合、 CloudWatch Logs の共通属性および Subscribe ログエントリ属性に加えて、MQTT 5 Subscribeログエントリには次の属性が含まれます。

サブスクリプション

Subscribe リクエストでリクエストされたトピックと個々の MQTT 5 理由コード間のマッピングのリスト。詳細については、「MQTT 理由コード」を参照してください。

理由コード

次の理由コードと詳細は、Subscribe障害ログエントリに表示されます。

Reason 詳細
throttled アカウントあたりの 1 秒あたりのサブスクリプション数の制限を超えました
throttled アカウントあたりのサブスクリプション制限を超えました
throttled 接続あたりのサブスクリプション制限を超えました
throttled グループあたりの共有サブスクリプションの制限を超えました
throttled グループあたりの 1 秒あたりのサブスクライブリクエストとサブスクライブ解除リクエストの制限を超えました
CLIENT_ERROR サブスクライブパケットは、以前の未確認リクエストのパケット ID を再利用します
CLIENT_ERROR クライアントが接続されていない
CLIENT_ERROR サブスクライブリクエストあたりの最大サブスクリプション数の制限を超えました
CLIENT_ERROR 無効なトピックフィルター

Unsubscribe ログエントリ

AWS IoT メッセージブローカーは、MQTT クライアントが MQTT トピックへのサブスクライブを解除eventTypeUnsubscribeすると、 のログエントリを生成します。

成功ログエントリのサブスクリプション解除の例

{ "timestamp": "2024-08-20 22:53:32.844", "logLevel": "INFO", "traceId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE33333", "accountId": "111122223333", "status": "Success", "eventType": "Unsubscribe", "protocol": "MQTT", "clientId": "abf27092886e49a8a5c1922749736453", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "sourceIp": "203.0.113.16", "sourcePort": 13490 }

サブスクリプション解除失敗ログエントリの例

{ "timestamp": "2026-01-07 15:37:23.476", "logLevel": "ERROR", "traceId": "a1b2c3d4-5678-90ab-cdef-EXAMPLE33333", "accountId": "111122223333", "status": "Failure", "eventType": "Unsubscribe", "protocol": "MQTT", "clientId": "device-12345", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "sourceIp": "203.0.113.3", "sourcePort": 26051, "reason": "throttled", "details": "Exceeded Unsubscribe requests per second per account limit" }

に加えてCloudWatch Logs の共通属性、Unsubscribeログエントリには次の属性が含まれます。

protocol

リクエストを行うために使用されるプロトコル。値は常に MQTT です。

clientId

リクエストを実行するクライアントの ID。

principalId

リクエストを実行するプリンシパルの ID。

sourceIp

リクエストが発生した IP アドレス。

sourcePort

リクエストが発生したポート。

理由

Unsubscribe オペレーションが失敗した理由。このフィールドは、 statusが の場合にのみ存在しますFailure。有効な値は throttled、CLIENT_ERROR、または INTERNAL_SERVER_ERROR です。

details

エラーの簡単な説明。このフィールドは、 statusが の場合にのみ存在しますFailure。

理由コード

次の理由コードと詳細は、Unsubscribe障害ログエントリに表示されます。

Reason 詳細
throttled アカウントあたりの 1 秒あたりのサブスクリプション解除リクエスト数の制限を超えました
throttled グループあたりの 1 秒あたりのサブスクライブリクエストとサブスクライブ解除リクエストの制限を超えました
CLIENT_ERROR サブスクリプション解除パケットは、以前の未確認リクエストのパケット ID を再利用します
CLIENT_ERROR クライアントが接続されていない

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。

確認

配信確認がリクエストされたかどうか。有効な値は true または false です。

タイムアウト

受信側クライアントからの配信確認を待機する秒単位の最大時間。confirmation が の場合にのみ存在しますtrue。

理由

失敗の理由コード。

details

エラーの簡単な説明。

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 リクエストレートが接続あたりの 1 秒あたりのアウトバウンド発行リクエストを超えたため、リクエストが拒否されました
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 ステープルデータを取得するeventTypeRetrieveOCSPStapleDataと、 は のログエントリを生成します。

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 の共通属性 に加えて、ログエントリには次の属性が含まれます。

理由

オペレーションが失敗する理由。

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

    証明書のステータス。

  • 署名

    信頼されたエンティティによるレスポンスに適用される署名。

  • thisUpdateTime

    表示されるステータスが正しいことがわかっている時刻。

  • nextUpdateTime

    証明書のステータスに関する新しい情報が利用可能になる時刻またはそれ以前。

  • producedAtTime

    OCSP レスポンダーがこのレスポンスに署名した時刻。

  • stapledDataPayloadSize

    ステープルデータのペイロードサイズ。

プライベートエンドポイントの RetrieveOCSPStapleData ログエントリ

AWS IoT Core サーバーが OCSP ステープルデータを取得するeventTypeRetrieveOCSPStapleDataと、 は のログエントリを生成します。

プライベートエンドポイントの 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 オペレーションでは、CloudWatch Logs の共通属性および RetrieveOCSPStapleData ログエントリの属性に加えて、プライベートエンドポイントのログエントリには次の属性が含まれます。

lambdaDetails

Lambda 関数の詳細。

  • LambdaArn

    Lambda 関数の ARN。

  • sourceArn

    ドメイン設定の ARN。

authorizedResponderArn

ドメイン設定で設定されている場合、オーソライザーレスポンダーの ARN。

Device Shadow のログエントリ

AWS IoT Device Shadow サービスは、次のイベントのログエントリを生成します。

DeleteThingShadow ログエントリ

Device Shadow サービスは、デバイスのシャドウ削除リクエストを受信すると、eventType という DeleteThingShadow のログエントリを生成します。

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

更新する Shadow の名前。

protocol

リクエストを行うために使用されるプロトコル。有効な値は MQTT または HTTP です。

topicName

公開されたリクエストのトピックの名前。

GetThingShadow ログエントリ

デバイスシャドウサービスは、シャドウの取得リクエストを受信すると、eventType という GetThingShadow のログエントリを生成します。

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

リクエストした Shadow の名前。

protocol

リクエストを行うために使用されるプロトコル。有効な値は MQTT または HTTP です。

topicName

公開されたリクエストのトピックの名前。

UpdateThingShadow ログエントリ

Device Shadow サービスは、デバイスのシャドウ更新リクエストを受信すると、eventType という UpdateThingShadow のログエントリを生成します。

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

更新する Shadow の名前。

protocol

リクエストを行うために使用されるプロトコル。有効な値は MQTT または HTTP です。

topicName

公開されたリクエストのトピックの名前。

ルールエンジンのログエントリ

AWS IoT ルールエンジンは、次のイベントのログを生成します。

FunctionExecution ログエントリ

ルールエンジンは、ルールの SQL クエリが外部関数を呼び出すと、eventType という FunctionExecution のログエントリを生成します。外部関数は、ルールのアクションが AWS IoT または他のウェブサービスに対して HTTP リクエストを行うときに呼び出されます ( の呼び出しなどget_thing_shadow)。

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。

リソース

ルールのアクションによって使用されるリソースの集合。

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。

リソース

ルールのアクションによって使用されるリソースの集合。

ruleAction

トリガーされるアクションの名前。

ruleName

一致ルールの名前。

topicName

サブスクライブされたトピックの名前。

RuleMatch ログエントリ

AWS IoT ルールエンジンは、メッセージブローカーがルールに一致するメッセージを受信するRuleMatchと、 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

サブスクライブされたトピックの名前。

RuleEvaluation スロットリングログエントリ

AWS IoT ルールエンジンは、アカウントあたりの 1 秒あたりのルール評価でルール評価を調整するRuleEvaluationと、 eventType が で理由が のログエントリを生成しますThrottled。

RuleEvaluation スロットリングログエントリの例

{ "timestamp": "2024-11-13 07:32:27.856", "logLevel": "ERROR", "traceId": "82995222-049b-ee5c-0cd4-15635f052ed3", "accountId": "123456789012", "status": "Failure", "eventType": "RuleEvaluation", "clientId": "57b3b41a-c726-44ab-bcd4-2cc1c2cc4295", "topicName": "N/A", "ruleName": "N/A", "principalId": "N/A", "reason": "Throttled", "details": "Exceeded Rule Evaluations per second per account limit" }

CloudWatch Logs の共通属性 に加えて、RuleEvaluation ログ項目には次の属性が含まれています。

clientId

リクエストを実行するクライアントの ID。

details

エラーの簡単な説明。

principalId

リクエストを実行するプリンシパルの ID。このログエントリは常に N/A です。

理由

文字列「スロットル済み」。

ruleName

ルールの名前。このログエントリは常に N/A です。

topicName

公開されたトピックの名前。このログエントリは常に N/A です。

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。

details

エラーの簡単な説明。

principalId

リクエストを実行するプリンシパルの ID。

理由

文字列「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。

details

エラーの簡単な説明。

principalId

リクエストを実行するプリンシパルの ID。

理由

文字列 "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

リクエストのべき等のための一意の識別子 (大文字と小文字を区別)。詳細については、べき等を確実にする方法のページを参照してください。

details

Jobs サービスからの追加情報。

jobId

ジョブ実行のジョブ ID。

protocol

リクエストを行うために使用されるプロトコル。有効な値は MQTT または HTTP です。

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

リクエストのべき等のための一意の識別子 (大文字と小文字を区別)。詳細については、べき等を確実にする方法のページを参照してください。

details

Jobs サービスからの追加情報。

protocol

リクエストを行うために使用されるプロトコル。有効な値は MQTT または HTTP です。

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ログエントリには次の属性が含まれます。

details

Jobs サービスからの追加情報。

jobId

ジョブ実行のジョブ ID。

StartNextPendingJobExecution ログエントリ

次の保留中のジョブ実行を開始するリクエストを受信すると、 AWS IoT ジョブサービスは 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

リクエストのべき等のための一意の識別子 (大文字と小文字を区別)。詳細については、べき等を確実にする方法のページを参照してください。

details

Jobs サービスからの追加情報。

protocol

リクエストを行うために使用されるプロトコル。有効な値は MQTT または HTTP です。

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

リクエストのべき等のための一意の識別子 (大文字と小文字を区別)。詳細については、べき等を確実にする方法のページを参照してください。

details

Jobs サービスからの追加情報。

jobId

ジョブ実行のジョブ ID。

protocol

リクエストを行うために使用されるプロトコル。有効な値は MQTT または HTTP です。

topicName

リクエストを行うために使用されるトピック。

versionNumber

ジョブ実行のバージョン。

デバイスプロビジョニングのログエントリ

AWS IoT Device Provisioning サービスは、次のイベントのログを生成します。

GetDeviceCredentials ログエントリ

AWS IoT Device Provisioning サービスは、クライアントが を呼び出すeventTypeGetDeviceCredentialときに のログエントリを生成します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ログエントリには次の属性が含まれます。

details

エラーの簡単な説明。

deviceCertificateId

デバイス証明書の ID。

ProvisionDevice ログエントリ

AWS IoT Device Provisioning サービスは、クライアントが を呼び出すeventTypeProvisionDeviceときに、 のログエントリを生成します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ログエントリには次の属性が含まれます。

details

エラーの簡単な説明。

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

モノを追加できなかったモノの動的グループの配列。

理由

モノをモノの動的グループに追加できなかった理由。

thingName

モノの動的グループに追加できなかったモノの名前。

フリートのインデックス作成ログエントリ

AWS IoT フリートインデックス作成は、次のイベントのログエントリを生成します。

NamedShadowCountForDynamicGroupQueryLimitExceeded ログエントリ

動的グループ内のデータソース固有ではないクエリ条件では、モノごとに最大 25 の名前付きシャドウが処理されます。モノに対してこの制限に違反すると、NamedShadowCountForDynamicGroupQueryLimitExceeded イベントタイプが出力されます。

NamedShadowCountForDynamicGroupQueryLimitExceeded ログエントリの例

この例は、NamedShadowCountForDynamicGroupQueryLimitExceeded エラーのログエントリを示しています。この例では、reason フィールドに示されているように、すべての値に基づいた DynamicGroup の結果は不正確である可能性があります。

{ "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 メッセージブローカーに接続した時刻のクライアントの、人間が読み取り可能な UNIX タイムスタンプ。

traceId

特定のリクエストのすべてのログを関連付けるために使用できる、ランダムに生成された識別子。