View a markdown version of this page

CloudWatch Logs AWS IoT Einträge protokollieren - AWS IoT Core

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

CloudWatch Logs AWS IoT Einträge protokollieren

Jede Komponente von AWS IoT generiert ihre eigenen Protokolleinträge. Jeder Protokolleintrag besitzt einen eventType, der die Operation angibt, die den Protokolleintrag generiert hat. In diesem Abschnitt werden die Protokolleinträge beschrieben, die von den folgenden AWS IoT -Komponenten generiert werden.

Message Broker-Protokolleinträge

Der AWS IoT Message Broker generiert Protokolleinträge für die folgenden Ereignisse:

Protokolleintrag „Connect“

Der AWS IoT Message Broker generiert einen Logeintrag mit einem eventType of, Connect wenn ein MQTT-Client eine Verbindung herstellt.

Beispiel für den Protokolleintrag „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 }

Zusätzlich zu den enthalten Allgemeine CloudWatch Log-Attribute die Connect Protokolleinträge die folgenden Attribute:

clientId

Die ID des Clients, der die Anforderung stellt.

principalId

Die ID des Prinzipals, der die Anforderung stellt.

Protokoll

Das für die Anforderung verwendete Protokoll. Gültige Werte sind MQTT oder HTTP.

sourceIp

Die IP-Adresse, von der die Anforderung stammt.

sourcePort

Der Port, von dem die Anforderung stammt.

Protokolleintrag „Disconnect“

Der AWS IoT Message Broker generiert einen Logeintrag mit einem eventType of, Disconnect wenn ein MQTT-Client die Verbindung trennt.

Beispiel für den Protokolleintrag „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" }

Zusätzlich zu den enthalten Allgemeine CloudWatch Log-Attribute die Disconnect Protokolleinträge die folgenden Attribute:

clientId

Die ID des Clients, der die Anforderung stellt.

principalId

Die ID des Prinzipals, der die Anforderung stellt.

Protokoll

Das für die Anforderung verwendete Protokoll. Gültige Werte sind MQTT oder HTTP.

sourceIp

Die IP-Adresse, von der die Anforderung stammt.

sourcePort

Der Port, von dem die Anforderung stammt.

Grund

Der Grund, warum der Client die Verbindung trennt.

Details

Eine kurze Erläuterung des Fehlers.

disconnectReason

Der Grund, warum der Client die Verbindung trennt.

Ping-Protokolleintrag

Der AWS IoT Message Broker generiert einen Logeintrag mit einem eventType of, Ping wenn er einen MQTT-PINGREQ von einem verbundenen Client verarbeitet und den entsprechenden PINGRESP sendet. Pro Ping-Vorgang wird ein einziger Protokolleintrag ausgegeben.

Wichtig

Ping-Protokolleinträge sind optional und standardmäßig deaktiviert. Der Emissionsschwellenwert entspricht dem Ergebnis pro Eintrag: Erfolgseinträge werden auf der DEBUG Ebene ausgegeben und Einträge für Fehler werden auf der ERROR Ebene ausgegeben. Daher werden immer dann Einträge für Ping-Fehler angezeigt, wenn die für die Verbindung geltende Ereignis- oder Resource-specific Überschreibungsebene auf eine ERROR oder eine ausführlichere Stufe (WARN,INFO, oderDEBUG) gesetzt ist. Erfolgseinträge für Ping-Versuche werden jedoch nur veröffentlicht, wenn diese Stufe auf eingestellt ist. DEBUG Informationen zur Konfiguration dieser Einstellungen finden Sie unter und. Konto konfigurieren und Event-level anmelden AWS IoT (CLI) Konfigurieren Sie Resource-specific Überschreibungen in AWS IoT (CLI)

Bei Erfolg logLevel ist DEBUG und status istSuccess. Bei einem Fehler (z. B. wenn die Client-Verbindung beendet wird, bevor der PINGRESP gesendet werden kann), logLevel ist ERROR und ist. status Failure

Beispiel für einen Ping-Protokolleintrag (erfolgreich)

{ "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 }

Beispiel für einen Ping-Protokolleintrag (Fehler)

{ "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" }

Neben Allgemeine CloudWatch Log-Attribute enthalten Ping-Protokolleinträge die folgenden Attribute:

Protokoll

Das für die Anforderung verwendete Protokoll. Dieser Wert ist immer MQTT.

latency

Die Zeit in Millisekunden zwischen dem Empfangen des PINGREQ und dem Senden des PINGRESP. Dieses Feld ist nur vorhanden, wenn status Success

RequestTimestamp

Der Zeitstempel, als der AWS IoT Core PINGREQ vom Client empfangen wurde.

Zeitstempel der Antwort

Der Zeitstempel, als der PINGRESP AWS IoT Core an den Client gesendet wurde. Dieses Feld ist nur vorhanden, wenn status Success

clientId

Die ID des Clients, der die Anforderung stellt.

principalId

Die ID des Prinzipals, der die Anforderung stellt.

sourceIp

Die IP-Adresse, von der die Anforderung stammt.

sourcePort

Der Port, von dem die Anforderung stammt.

Grund

Der Grund für das Fehlschlagen des Ping-Vorgangs. Dieses Feld ist nur vorhanden, wenn der status istFailure.

Details

Eine kurze Erläuterung des Fehlers. Dieses Feld ist nur vorhanden, wenn der status istFailure.

Connection.AuthNError Eintrag protokollieren

Der AWS IoT Message Broker generiert einen Protokolleintrag mit dem Zeichen eventType vonConnection.AuthNError, wenn ein Verbindungsversuch eines Clients aufgrund eines Authentifizierungsfehlers abgewiesen wird. Das logLevel für diesen Protokolleintrag ist immer ERROR und das status ist immerFailure. Dieser Protokolleintrag entspricht der Connection.AuthNError CloudWatchMetrik.

Wichtig

Connection.AuthNErrorProtokolleinträge sind optional und standardmäßig deaktiviert. Sie werden auf ERROR Protokollebene ausgegeben, sodass ein Connection.AuthNError Protokolleintrag nur veröffentlicht wird, wenn die für die Verbindung geltende Ereignisebene oder Resource-specific Überschreibung auf ERROR oder eine ausführlichere Ebene (WARN, INFO oder) gesetzt ist. DEBUG Informationen zur Konfiguration dieser Einstellungen finden Sie unter und. Konto konfigurieren und Event-level anmelden AWS IoT (CLI) Konfigurieren Sie Resource-specific Überschreibungen in AWS IoT (CLI)

Anmerkung

Dieser Protokolleintrag wird in der Datenbank veröffentlicht AWS-Konto , die Eigentümer der Server Name Indication (SNI) ist, die im TLS-Handshake bereitgestellt wird. Wenn der Client kein SNI bereitstellt oder das SNI nicht einem Konto zugeordnet werden kann, wird kein Protokolleintrag oder keine Metrik ausgegeben.

Connection.AuthNError Beispiel für einen Protokolleintrag

{ "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" }

Neben Allgemeine CloudWatch Log-Attribute enthalten Connection.AuthNError-Protokolleinträge die folgenden Attribute:

Protokoll

Das für die Anforderung verwendete Protokoll. Gültige Werte sind MQTT oder HTTP.

Authentifizierungstyp

Der Authentifizierungstyp, der für den Verbindungsversuch verwendet wurde. Gültige Werte sind AWS_X509, AWS_SIGV4, CUSTOM_AUTH und CUSTOM_AUTH_X509.

clientId

Die ID des Clients, der die Anfrage stellt, falls verfügbar.

principalId

Die ID des Prinzipals, der die Anfrage stellt, falls verfügbar.

sourceIp

Die IP-Adresse, von der die Anforderung stammt.

sourcePort

Der Port, von dem die Anforderung stammt.

Ziel-IP

Die Ziel-IP-Adresse der Verbindung. Dieses Feld ist möglicherweise nicht in allen Protokolleinträgen vorhanden.

TargetPort

Der Zielport der Verbindung.

Server NameIndication

Der vom Client bereitgestellte Hostname der Erweiterung TSL Server Name Indication (SNI).

Grund

Der Grund, warum die Client-Authentifizierung fehlgeschlagen ist. Eine Liste möglicher Werte finden Sie unterConnection.AuthNError Fehlercodes.

Details

Eine kurze Beschreibung des Authentifizierungsfehlers.

Connection.AuthNError Fehlercodes

In der folgenden Tabelle sind die reason Fehlercodes und die entsprechenden details Meldungen aufgeführt, die für einen Connection.AuthNError Protokolleintrag auftreten können. In future können weitere Fehlercodes hinzugefügt werden.

Fehlercode Fehlermeldung
CUSTOM_AUTHORIZER_LAMBDA_EXECUTION_ERROR Lambda-Aufruf des benutzerdefinierten Autorisierers ist fehlgeschlagen
CUSTOM_AUTHORIZER_NOT_FOUND Benutzerdefinierter Autorisierer konnte nicht gefunden werden
CUSTOM_AUTHORIZER_PARAMETER_INVALID Der benutzerdefinierte Authentifizierungsparameter ist ungültig
DEVICE_CERTIFICATE_INACTIVE Das Gerätezertifikat ist nicht aktiv
DEVICE_CERTIFICATE_NOT_REGISTERED Das Gerätezertifikat ist nicht registriert
DEVICE_CERTIFICATE_REVOKED Das Gerätezertifikat wurde gesperrt
DOMAIN_CONFIGURATION_DISABLED Die Domänenkonfiguration für die bereitgestellte Server Name Indication (SNI) ist deaktiviert
DOMAIN_CONFIGURATION_INVALID Der Endpunkttyp in der Domänenkonfiguration ist ungültig
INTERNAL_SERVER_ERROR Interner Serverfehler
NOT_AUTHENTICATED Die angegebenen Anmeldeinformationen konnten nicht authentifiziert werden
SECURITY_TOKEN_EXPIRED Das Sicherheitstoken ist abgelaufen
SECURITY_TOKEN_INVALID Das in der Anfrage enthaltene Sicherheitstoken ist ungültig
SECURITY_TOKEN_SIGNATURE_MISMATCH Die Anforderungssignatur stimmt nicht mit der angegebenen Signatur überein
SNI_MISUSED Der Client hat ein SNI verwendet, das nicht mit diesem Konto verknüpft ist

DeleteConnection Eintrag protokollieren

Der AWS IoT Message Broker generiert einen Logeintrag mit einem eventType of, DeleteConnection wenn eine MQTT-Client-Verbindung gelöscht wird.

DeleteConnection Beispiel für einen Logeintrag

{ "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 }

Zusätzlich zu den Allgemeine CloudWatch Log-Attribute enthalten DeleteConnection Protokolleinträge die folgenden Attribute:

clientId

Die ID des Clients, zu dem die Verbindung unterbrochen wird.

principalId

Die ID des Prinzipals, der die Anforderung stellt. Informationen zur Identifizierung des Prinzipals anhand der Prinzipal-ID finden Sie unter Vergleichen von IAM-Identitäten und Anmeldeinformationen im IAM-Benutzerhandbuch.

Protokoll

Das für die Anforderung verwendete Protokoll. Der gültige Wert lautet HTTP.

sourceIp

Die IP-Adresse, von der die Anforderung stammt.

sourcePort

Der Port, von dem die Anforderung stammt.

GetRetainedMessage Protokolleintrag

Der AWS IoT Message Broker generiert einen Logeintrag mit der Angabe eventTypeGetRetainedMessage, wann er aufgerufen GetRetainedMessagewird.

GetRetainedMessage Beispiel für einen Protokolleintrag

{ "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" }

Zusätzlich zu den Allgemeine CloudWatch Log-Attribute enthalten GetRetainedMessage Protokolleinträge die folgenden Attribute:

zuletzt ModifiedDate

Das Datum und die Uhrzeit der Epoche in Millisekunden, von der die gespeicherte Nachricht gespeichert wurde. AWS IoT

Protokoll

Das für die Anforderung verwendete Protokoll. Zulässiger Wert: HTTP.

qos

Das QoS (Quality of Service)-Niveau, das in der Veröffentlichungsanforderung verwendet wird. Gültige Werte sind 0 oder 1.

topicName

Der Name des abonnierten Themas.

ListRetainedMessage Eintrag protokollieren

Der AWS IoT Message Broker generiert einen Logeintrag mit der Angabe eventTypeListRetainedMessage, wann er aufgerufen ListRetainedMessageswird.

ListRetainedMessage Beispiel für einen Protokolleintrag

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

Zusätzlich zu dem Allgemeine CloudWatch Log-Attribute enthalten ListRetainedMessage Protokolleinträge das folgende Attribut:

Protokoll

Das für die Anforderung verwendete Protokoll. Zulässiger Wert: HTTP.

ListSubscriptions Protokolleintrag

Der AWS IoT Message Broker generiert einen Protokolleintrag mit dem Zeichen eventType vonListSubscriptions, wenn eine Anfrage zur Auflistung von Clientabonnements eingeht.

ListSubscriptions Beispiel für einen Protokolleintrag

{ "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 }

Neben Allgemeine CloudWatch Log-Attribute enthalten ListSubscriptions-Protokolleinträge die folgenden Attribute:

clientId

Die ID des Clients, der die Anforderung stellt.

principalId

Die ID des Prinzipals, der die Anforderung stellt.

Protokoll

Das für die Anforderung verwendete Protokoll. Zulässiger Wert: HTTP.

sourceIp

Die IP-Adresse, von der die Anforderung stammt.

sourcePort

Der Port, von dem die Anforderung stammt.

maxResults

Die maximale Anzahl angeforderter Ergebnisse.

GetConnection Eintrag protokollieren

Der AWS IoT Message Broker generiert einen Protokolleintrag mit dem Zeichen eventType vonGetConnection, wenn eine Anfrage zum Abrufen von Verbindungsinformationen eingeht.

GetConnection Beispiel für einen Protokolleintrag

{ "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 }

Neben Allgemeine CloudWatch Log-Attribute enthalten GetConnection-Protokolleinträge die folgenden Attribute:

clientId

Die ID des Clients, der die Anforderung stellt.

principalId

Die ID des Prinzipals, der die Anforderung stellt.

Protokoll

Das für die Anforderung verwendete Protokoll. Zulässiger Wert: HTTP.

sourceIp

Die IP-Adresse, von der die API-Anfrage stammt.

sourcePort

Der Port, von dem die API-Anfrage stammt.

Publish-In Protokolleintrag

Wenn der AWS IoT Message Broker eine MQTT-Nachricht empfängt, generiert er einen Logeintrag mit einem eventType ofPublish-In.

Publish-In Beispiel für einen Logeintrag

{ "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" }

Zusätzlich zu den Allgemeine CloudWatch Log-Attribute enthalten Publish-In Protokolleinträge die folgenden Attribute:

clientId

Die ID des Clients, der die Anforderung stellt.

principalId

Die ID des Prinzipals, der die Anforderung stellt.

Protokoll

Das für die Anforderung verwendete Protokoll. Gültige Werte sind MQTT oder HTTP.

Beibehaltung

Das Attribut, das verwendet wird, wenn für eine Nachricht das RETAIN-Flag auf den Wert True festgelegt ist. Wenn für die Nachricht das RETAIN-Flag nicht festgelegt ist, erscheint dieses Attribut nicht im Protokolleintrag. Weitere Informationen finden Sie unter Beibehaltene MQTT-Meldungen.

sourceIp

Die IP-Adresse, von der die Anforderung stammt.

sourcePort

Der Port, von dem die Anforderung stammt.

topicName

Der Name des abonnierten Themas.

Publish-Out Protokolleintrag

Wenn der Message Broker eine MQTT-Nachricht veröffentlicht, generiert er einen Protokolleintrag mit dem eventType Publish-Out

Publish-Out Beispiel für einen Protokolleintrag

{ "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 }

Zusätzlich zu den Allgemeine CloudWatch Log-Attribute enthalten Publish-Out Protokolleinträge die folgenden Attribute:

clientId

Die ID des abonnierten Clients, der Nachrichten zu diesem MQTT-Thema empfängt.

principalId

Die ID des Prinzipals, der die Anforderung stellt.

Protokoll

Das für die Anforderung verwendete Protokoll. Gültige Werte sind MQTT oder HTTP.

sourceIp

Die IP-Adresse, von der die Anforderung stammt.

sourcePort

Der Port, von dem die Anforderung stammt.

topicName

Der Name des abonnierten Themas.

Protokolleintrag in der Warteschlange

Wenn ein Gerät mit einer persistenten Sitzung getrennt wird, speichert der MQTT-Nachrichtenbroker die Nachrichten des Geräts und AWS IoT generiert Protokolleinträge mit einem EventType von. Queued Weitere Hinweise zu persistenten MQTT-Sitzungen finden Sie unter. Persistente MQTT-Sitzungen

Beispiel für einen Eintrag in das Fehlerprotokoll eines Servers in der Warteschlange

{ "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" }

Zusätzlich zu den enthalten Allgemeine CloudWatch Log-Attribute die Einträge im Queued Serverfehlerprotokoll die folgenden Attribute:

clientId

Die ID des Clients, für den sich die Nachricht in der Warteschlange befindet.

Details
Serverfehler

Aufgrund eines Serverfehlers konnte die Nachricht nicht gespeichert werden.

Protokoll

Das für die Anforderung verwendete Protokoll. Dieser Wert ist immer MQTT.

qos

Die QoS (Quality of Service)-Ebene der Anforderung. Der Wert ist immer 1, da die Nachrichten mit QoS von 0 nicht gespeichert werden.

topicName

Der Name des abonnierten Themas.

Beispiel für einen Eintrag in einem Erfolgsprotokoll in der Warteschlange

{ "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" }

Zusätzlich zu den enthalten Allgemeine CloudWatch Log-Attribute die Einträge im Queued Erfolgsprotokoll die folgenden Attribute:

clientId

Die ID des Clients, für den sich die Nachricht in der Warteschlange befindet.

Protokoll

Das für die Anforderung verwendete Protokoll. Dieser Wert ist immer MQTT.

qos

Die QoS (Quality of Service)-Ebene der Anforderung. Der Wert ist immer 1, da die Nachrichten mit QoS von 0 nicht gespeichert werden.

topicName

Der Name des abonnierten Themas.

Beispiel für einen gedrosselten Protokolleintrag in der Warteschlange

{ "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" }

Zusätzlich zu den enthalten Allgemeine CloudWatch Log-Attribute Queued gedrosselte Protokolleinträge die folgenden Attribute:

clientId

Die ID des Clients, für den sich die Nachricht in der Warteschlange befindet.

Details
Beim Einreihen von Offline-Nachrichten in die Warteschlange gedrosselt

Der Client hat das Queued messages per second per account Limit überschritten, sodass die Nachricht nicht gespeichert wurde.

Protokoll

Das für die Anforderung verwendete Protokoll. Dieser Wert ist immer MQTT.

qos

Die QoS (Quality of Service)-Ebene der Anforderung. Der Wert ist immer 1, da die Nachrichten mit QoS von 0 nicht gespeichert werden.

topicName

Der Name des abonnierten Themas.

Protokolleintrag „Subscribe“

Der AWS IoT Message Broker generiert einen Logeintrag mit einem eventType of, Subscribe wenn ein MQTT-Client ein Thema abonniert.

Beispiel für den Protokolleintrag in MQTT-3-Subscribe

{ "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 }

Zusätzlich zu den enthalten Allgemeine CloudWatch Log-Attribute die Subscribe Protokolleinträge die folgenden Attribute:

clientId

Die ID des Clients, der die Anforderung stellt.

principalId

Die ID des Prinzipals, der die Anforderung stellt.

Protokoll

Das für die Anforderung verwendete Protokoll. Dieser Wert ist immer MQTT.

sourceIp

Die IP-Adresse, von der die Anforderung stammt.

sourcePort

Der Port, von dem die Anforderung stammt.

topicName

Der Name des abonnierten Themas.

Beispiel für den Protokolleintrag in MQTT-5-Subscribe

{ "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 }

Für MQTT 5-Subscribe-Operationen enthalten MQTT 5-Protokolleinträge zusätzlich zu den Protokolleintragsattributen Allgemeine CloudWatch Log-Attribute und den MQTT 3-Subscribe-Protokolleintragsattributen das folgende Attribut: Subscribe

Abonnements

Eine Liste von Zuordnungen zwischen den angeforderten Themen in der Abonnement-Anforderung und dem individuellen MQTT 5-Ursachencode. Weitere Informationen finden Sie unter MQTT-Ursachencodes.

Protokolleintrag abbestellen

Der AWS IoT Message Broker generiert einen Logeintrag mit einem eventType of, Unsubscribe wenn ein MQTT-Client ein MQTT-Thema abbestellt.

Beispiel für einen MQTT-Abmelde-Logeintrag

{ "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 }

Zusätzlich zu den Allgemeine CloudWatch Log-Attribute enthalten Unsubscribe Protokolleinträge die folgenden Attribute:

Protokoll

Das für die Anforderung verwendete Protokoll. Dieser Wert ist immer MQTT.

clientId

Die ID des Clients, der die Anforderung stellt.

principalId

Die ID des Prinzipals, der die Anforderung stellt.

sourceIp

Die IP-Adresse, von der die Anforderung stammt.

sourcePort

Der Port, von dem die Anforderung stammt.

SendDirectMessage Protokolleintrag

Der AWS IoT Message Broker generiert einen Logeintrag mit einem eventType ofSendDirectMessage, wenn eine SendDirectMessage API-Anfrage gestellt wird.

AWS IoT Core protokolliert SendDirectMessage Ereignisse in CloudWatch Logs, wenn Sie die IoT-Protokollierung aktivieren. Weitere Informationen zur Konfiguration der Protokollierung finden Sie unterKonfiguration AWS IoT Protokollierung.

SendDirectMessage Beispiel für einen Eintrag in ein Erfolgsprotokoll

{ "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 Beispiel für einen Eintrag in ein Fehlerprotokoll

{ "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 }

Neben Allgemeine CloudWatch Log-Attribute enthalten SendDirectMessage-Protokolleinträge die folgenden Attribute:

clientId

Die ID des Clients, der die Direktnachricht empfängt.

topicName

Das Thema, zu dem die Nachricht gesendet wurde.

Protokoll

Das für die Anforderung verwendete Protokoll. Zulässiger Wert: HTTP.

Bestätigung

Ob eine Lieferbestätigung angefordert wurde. Gültige Werte sind true oder false.

timeout

Maximale Wartezeit in Sekunden auf eine Lieferbestätigung des empfangenden Kunden. Nur anwesend, wenn confirmation es isttrue.

Grund

Der Ursachencode für den Fehler.

Details

Eine kurze Erläuterung des Fehlers.

principalId

Die ID des Prinzipals, der die Anforderung stellt.

sourceIp

Die IP-Adresse, von der die Anforderung stammt.

sourcePort

Der Port, von dem die Anforderung stammt.

Ursachencodes

Die folgenden Ursachencodes und Details werden in den Einträgen des Fehlerprotokolls angezeigt:

SendDirectMessage Ursachencodes
Grund Details
MALFORMED_CLIENTID Diese Client-ID ist nicht gültig. Client-IDs dürfen 128 Zeichen nicht überschreiten und dürfen nicht mit einem Dollarzeichen ($) beginnen. Geben Sie eine andere Client-ID ein
INVALID_TOPIC Dieses Thema ist nicht gültig. Die Themengröße muss innerhalb von 256 Byte liegen, sollte weniger als 9 Teile enthalten und darf nicht mit einem Dollarzeichen ($) beginnen
INVALID_TIMEOUT_PARAMETER Ungültiger Timeout-Wert. Muss eine Ganzzahl zwischen 1 und 15 sein
INVALID_CONFIRMATION_PARAMETER Ungültiger Bestätigungswert. Muss 'wahr' oder 'falsch' sein
RECEIVE_AUTHORIZATION_FAILURE Die Autorisierung für den Zielclient ist fehlgeschlagen. Stellen Sie sicher, dass Ihre Richtlinie die erforderlichen Berechtigungen gewährt
TARGET_CLIENT_ID_NOT_FOUND Die Client-ID wurde nicht gefunden. Stellen Sie sicher, dass der Client verbunden ist, und versuchen Sie es erneut
TARGET_CLIENT_NOT_CONNECTED Die Ziel-Client-ID ist nicht verbunden, hat aber eine aktive persistente Sitzung
SEND_DIRECT_MESSAGE_THROTTLED Die Anfrage wurde abgelehnt, da die Anforderungsrate beim Senden von Direktnachrichten überschritten wurde
RECEIVE_SESSION_THROTTLED Die Anfrage wurde abgelehnt, da die Anforderungsrate die Anzahl der ausgehenden Veröffentlichungsanfragen pro Sekunde und Verbindung überstieg
RECEIVER_MAX_UNACKED_QOS1_EXCEEDED Der Empfängerclient hat die maximale Anzahl unbestätigter QoS 1-Nachrichten erreicht
DELIVERY_CONFIRMATION_TIMEOUT Die Lieferbestätigung wurde nicht innerhalb des angegebenen Timeout-Zeitraums empfangen
DELIVERY_CONFIRMATION_SENDER_DISCONNECT Der Absender hat die Verbindung unterbrochen, bevor die Lieferbestätigung eingegangen ist
CLIENT_ENDPOINT_NOT_WRITABLE Der Empfänger-Client-Endpunkt ist nicht beschreibbar
INTERNAL_SERVER_ERROR Interner Serverfehler

OCSP-Protokolleinträge für Serverzertifikate

AWS IoT Core generiert Protokolleinträge für das folgende Ereignis:

RetrieveOCSPStapleData Protokolleintrag

AWS IoT Core generiert einen Protokolleintrag mit einem eventType vonRetrieveOCSPStapleData, wenn der Server die OCSP-Stapeldaten abruft.

RetrieveOCSPStapleData Beispiele für Protokolleinträge

Im Folgenden finden Sie ein Beispiel für einen Protokolleintrag vonSuccess.

{ "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" } }

Im Folgenden finden Sie ein Beispiel für einen ProtokolleintragFailure.

{ "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" } }

Für den RetrieveOCSPStaple Vorgang enthalten die Allgemeine CloudWatch Log-Attribute Protokolleinträge zusätzlich zu den die folgenden Attribute:

Grund

Der Grund, warum der Vorgang fehlschlägt.

Domäne ConfigName

Der Name Ihrer Domain-Konfiguration.

Einzelheiten zur Verbindung

Eine kurze Erklärung der Verbindungsdetails.

  • http StatusCode

    HTTP-Statuscodes, die vom OCSP-Responder als Antwort auf die Anfrage des Clients an den Server zurückgegeben werden.

  • ocsp ResponderUri

    Der OCSP-Responder-URI, der vom AWS IoT Core Serverzertifikat abruft.

  • sourceIp

    Die Quell-IP-Adresse des Servers. AWS IoT Core

  • Ziel-IP

    Die Ziel-IP-Adresse des OCSP-Responders.

ocsp RequestDetails

Einzelheiten der OCSP-Anfrage.

  • Name des Anforderers

    Der Bezeichner für den AWS IoT Core Server, der eine Anfrage an den OCSP-Responder sendet.

  • Anfrage CertId

    Die Zertifikat-ID der Anfrage. Dies ist die ID des Zertifikats, für das die OCSP-Antwort angefordert wird.

ocsp ResponseDetails

Einzelheiten der OCSP-Antwort.

  • Antwort CertId

    Die Zertifikat-ID der OCSP-Antwort.

  • ocsp ResponseStatus

    Der Status der OCSP-Antwort.

  • CertStatus

    Der Status des Zertifikats.

  • signature

    Die Signatur, die von einer vertrauenswürdigen Entität auf die Antwort angewendet wurde.

  • das UpdateTime

    Der Zeitpunkt, zu dem der angezeigte Status bekanntermaßen korrekt ist.

  • als nächstes UpdateTime

    Der Zeitpunkt, zu dem oder vor dem neuere Informationen über den Status des Zertifikats verfügbar sein werden.

  • produziert AtTime

    Der Zeitpunkt, zu dem der OCSP-Responder diese Antwort signiert hat.

  • geheftet DataPayloadSize

    Die Nutzdatengröße der gehefteten Daten.

RetrieveOCSPStapleData Protokolleintrag für private Endpunkte

AWS IoT Core generiert einen Protokolleintrag mit einem eventType von, RetrieveOCSPStapleData wenn der Server die OCSP-Stapeldaten abruft.

RetrieveOCSPStapleData Beispiele für Protokolleinträge für private Endpunkte

Im Folgenden finden Sie ein Beispiel für einen Protokolleintrag von. 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" } }

Im Folgenden finden Sie ein Beispiel für einen ProtokolleintragFailure.

{ "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" } }

Für den RetrieveOCSPStaple Vorgang enthalten die RetrieveOCSPStapleData Protokolleinträge für private Endpunkte zusätzlich zu den Allgemeine CloudWatch Log-Attribute und den Attributen im Protokolleintrag die folgenden Attribute:

Lambda-Details

Einzelheiten der Lambda-Funktion.

  • LambdaWarn

    ARN der Lambda-Funktion.

  • Quelle: RN

    Der ARN der Domänenkonfiguration.

autorisiert ResponderArn

Der ARN des Authorizer-Responders, falls in der Domänenkonfiguration einer konfiguriert ist.

Protokolleinträge „Geräteschatten“

Der AWS IoT Device Shadow-Dienst generiert Protokolleinträge für die folgenden Ereignisse:

DeleteThingShadow Protokolleintrag

Der Geräteschatten-Service generiert einen Protokolleintrag eventType für DeleteThingShadow, wenn eine Anforderung zum Löschen eines Geräteschattens empfangen wird.

DeleteThingShadow Beispiel für einen Protokolleintrag

{ "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" }

Zusätzlich zu den Allgemeine CloudWatch Log-Attribute enthalten DeleteThingShadow Protokolleinträge die folgenden Attribute:

Gerät ShadowName

Der Name des zu aktualisierenden Schattens.

Protokoll

Das für die Anforderung verwendete Protokoll. Gültige Werte sind MQTT oder HTTP.

topicName

Der Name des Themas, in dem die Anforderung veröffentlicht wurde.

GetThingShadow Eintrag protokollieren

Der Geräteschatten-Service generiert einen Protokolleintrag mit eventType für GetThingShadow, wenn eine Abrufanforderung für einen Schatten empfangen wird.

GetThingShadow Beispiel für einen Protokolleintrag

{ "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" }

Zusätzlich zu den Allgemeine CloudWatch Log-Attribute enthalten GetThingShadow Protokolleinträge die folgenden Attribute:

Gerät ShadowName

Der Name des angefragten Schattens.

Protokoll

Das für die Anforderung verwendete Protokoll. Gültige Werte sind MQTT oder HTTP.

topicName

Der Name des Themas, in dem die Anforderung veröffentlicht wurde.

UpdateThingShadow Eintrag protokollieren

Der Geräteschatten-Service generiert einen Protokolleintrag durch eventType UpdateThingShadow, wenn eine Anforderung zum Aktualisieren eines Geräteschattens empfangen wird.

UpdateThingShadow Beispiel für einen Protokolleintrag

{ "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" }

Zusätzlich zu den Allgemeine CloudWatch Log-Attribute enthalten UpdateThingShadow Protokolleinträge die folgenden Attribute:

Gerät ShadowName

Der Name des zu aktualisierenden Schattens.

Protokoll

Das für die Anforderung verwendete Protokoll. Gültige Werte sind MQTT oder HTTP.

topicName

Der Name des Themas, in dem die Anforderung veröffentlicht wurde.

Protokolleinträge zur Regel-Engine

Die AWS IoT Regel-Engine generiert Protokolle für die folgenden Ereignisse:

FunctionExecution Protokolleintrag

Die Regel-Engine generiert einen Protokolleintrag mit eventType von FunctionExecution, wenn die SQL-Abfrage einer Regel eine externe Funktion aufruft. Eine externe Funktion wird aufgerufen, wenn die Aktion einer Regel eine HTTP-Anfrage an AWS IoT oder einen anderen Webdienst sendet (z. B. durch Aufrufen von get_thing_shadow odermachinelearning_predict).

FunctionExecution Beispiel für einen Protokolleintrag

{ "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" }

Zusätzlich zu den Allgemeine CloudWatch Log-Attribute enthalten FunctionExecution Protokolleinträge die folgenden Attribute:

clientId

N/A für FunctionExecution-Protokolle.

principalId

Die ID des Prinzipals, der die Anforderung stellt.

Ressourcen

Eine Sammlung von Ressourcen, die von den Aktionen der Regel verwendet werden.

ruleName

Der Name der übereinstimmenden Regel.

topicName

Der Name des abonnierten Themas.

RuleExecution Protokolleintrag

Wenn die AWS IoT Regel-Engine die Aktion einer Regel auslöst, generiert sie einen RuleExecution Protokolleintrag.

RuleExecution Beispiel für einen Protokolleintrag

{ "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 mit Beispiel für einen Batching-Protokolleintrag

{ "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 } }

Neben Allgemeine CloudWatch Log-Attribute enthalten RuleExecution-Protokolleinträge die folgenden Attribute:

clientId

Die ID des Clients, der die Anforderung stellt.

principalId

Die ID des Prinzipals, der die Anforderung stellt.

Ressourcen

Eine Sammlung von Ressourcen, die von den Aktionen der Regel verwendet werden.

ruleAction

Der Name der ausgelösten Aktion.

ruleName

Der Name der übereinstimmenden Regel.

topicName

Der Name des abonnierten Themas.

RuleMatch Protokolleintrag

Die AWS IoT Regel-Engine generiert einen Protokolleintrag mit dem Zeichen eventType vonRuleMatch, wenn der Message Broker eine Nachricht empfängt, die einer Regel entspricht.

RuleMatch Beispiel für einen Protokolleintrag

{ "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" }

Zusätzlich zu den Allgemeine CloudWatch Log-Attribute enthalten RuleMatch Protokolleinträge die folgenden Attribute:

clientId

Die ID des Clients, der die Anforderung stellt.

principalId

Die ID des Prinzipals, der die Anforderung stellt.

ruleName

Der Name der übereinstimmenden Regel.

topicName

Der Name des abonnierten Themas.

RuleExecutionThrottled Protokolleintrag

Wenn eine Ausführung gedrosselt wird, generiert die AWS IoT Regel-Engine einen Protokolleintrag mit dem Wert von. eventType RuleExecutionThrottled

RuleExecutionThrottled Beispiel für einen Protokolleintrag

{ "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" }

Zusätzlich zu den Allgemeine CloudWatch Log-Attribute enthalten RuleExecutionThrottled Protokolleinträge die folgenden Attribute:

clientId

Die ID des Clients, der die Anforderung stellt.

Details

Eine kurze Erläuterung des Fehlers.

principalId

Die ID des Prinzipals, der die Anforderung stellt.

Grund

Die Zeichenfolge "RuleExecutionThrottled“.

ruleName

Der Name der Regel, die ausgelöst werden soll.

topicName

Der Name des Themas, das veröffentlicht wurde.

RuleNotFound Eintrag protokollieren

Wenn die AWS IoT Regelengine eine Regel mit einem bestimmten Namen nicht finden kann, generiert sie einen Protokolleintrag mit dem Wert eventType vonRuleNotFound.

RuleNotFound Beispiel für einen Protokolleintrag

{ "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" }

Zusätzlich zu den Allgemeine CloudWatch Log-Attribute enthalten RuleNotFound Protokolleinträge die folgenden Attribute:

clientId

Die ID des Clients, der die Anforderung stellt.

Details

Eine kurze Erläuterung des Fehlers.

principalId

Die ID des Prinzipals, der die Anforderung stellt.

Grund

Die Zeichenfolge "RuleNotFound“.

ruleName

Der Name der Regel, die nicht gefunden werden konnte.

topicName

Der Name des Themas, das veröffentlicht wurde.

StartingRuleExecution Eintrag protokollieren

Wenn die AWS IoT Regel-Engine beginnt, die Aktion einer Regel auszulösen, generiert sie einen Protokolleintrag mit dem Wert eventType vonStartingRuleExecution.

StartingRuleExecution Beispiel für einen Protokolleintrag

{ "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" }

Zusätzlich zu den Allgemeine CloudWatch Log-Attribute enthalten rule- Protokolleinträge die folgenden Attribute:

clientId

Die ID des Clients, der die Anforderung stellt.

principalId

Die ID des Prinzipals, der die Anforderung stellt.

ruleAction

Der Name der ausgelösten Aktion.

ruleName

Der Name der übereinstimmenden Regel.

topicName

Der Name des abonnierten Themas.

Auftrag-Protokolleinträge

Der AWS IoT Job-Service generiert Protokolleinträge für die folgenden Ereignisse. Protokolleinträge werden generiert, wenn eine MQTT- oder HTTP-Anforderung vom Gerät empfangen wird.

DescribeJobExecution Protokolleintrag

Der AWS IoT Jobs-Service generiert einen Protokolleintrag mit eventType der Angabe vonDescribeJobExecution, wenn der Dienst eine Anfrage zur Beschreibung einer Jobausführung erhält.

DescribeJobExecution Beispiel für einen Protokolleintrag

{ "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." }

Zusätzlich zu den Allgemeine CloudWatch Log-Attribute enthalten GetJobExecution Protokolleinträge die folgenden Attribute:

clientId

Die ID des Clients, der die Anforderung stellt.

clientToken

Ein eindeutiger Bezeichner, bei dem die Groß- und Kleinschreibung beachtet werden muss, um die Idempotenz der Anforderung sicherzustellen. Weitere Informationen finden Sie unter So wird Idempotenz sichergestellt.

Details

Weitere Informationen über den Jobs-Service.

jobId

Die Auftrags-ID für die Auftragsausführung.

Protokoll

Das für die Anforderung verwendete Protokoll. Gültige Werte sind MQTT oder HTTP.

topicName

Das für die Anforderung verwendete Thema.

GetPendingJobExecution Protokolleintrag

Der AWS IoT Jobs-Dienst generiert einen Protokolleintrag mit der Angabe „eventTypeVon“GetPendingJobExecution, wenn der Dienst eine Anfrage zur Auftragsausführung erhält.

GetPendingJobExecution Beispiel für einen Protokolleintrag

{ "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." }

Zusätzlich zu den Allgemeine CloudWatch Log-Attribute enthalten GetPendingJobExecution Protokolleinträge die folgenden Attribute:

clientId

Die ID des Clients, der die Anforderung stellt.

clientToken

Ein eindeutiger Bezeichner, bei dem die Groß- und Kleinschreibung beachtet werden muss, um die Idempotenz der Anforderung sicherzustellen. Weitere Informationen finden Sie unter So wird Idempotenz sichergestellt.

Details

Weitere Informationen über den Jobs-Service.

Protokoll

Das für die Anforderung verwendete Protokoll. Gültige Werte sind MQTT oder HTTP.

topicName

Der Name des abonnierten Themas.

ReportFinalJobExecutionCount Protokolleintrag

Der AWS IoT Jobs-Dienst generiert einen Protokolleintrag mit der Angabe „entryTypeVon“ReportFinalJobExecutionCount, wenn ein Job abgeschlossen ist.

ReportFinalJobExecutionCount Beispiel für einen Protokolleintrag

{ "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" }

Zusätzlich zu den Allgemeine CloudWatch Log-Attribute enthalten ReportFinalJobExecutionCount Protokolleinträge die folgenden Attribute:

Details

Weitere Informationen über den Jobs-Service.

jobId

Die Auftrags-ID für die Auftragsausführung.

StartNextPendingJobExecution Protokolleintrag

Wenn der AWS IoT Jobs-Service eine Anforderung zum Starten der nächsten ausstehenden Auftragsausführung erhält, generiert er einen Protokolleintrag mit dem Wert eventType vonStartNextPendingJobExecution.

StartNextPendingJobExecution Beispiel für einen Protokolleintrag

{ "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." }

Zusätzlich zu den Allgemeine CloudWatch Log-Attribute enthalten StartNextPendingJobExecution Protokolleinträge die folgenden Attribute:

clientId

Die ID des Clients, der die Anforderung stellt.

clientToken

Ein eindeutiger Bezeichner, bei dem die Groß- und Kleinschreibung beachtet werden muss, um die Idempotenz der Anforderung sicherzustellen. Weitere Informationen finden Sie unter So wird Idempotenz sichergestellt.

Details

Weitere Informationen über den Jobs-Service.

Protokoll

Das für die Anforderung verwendete Protokoll. Gültige Werte sind MQTT oder HTTP.

topicName

Das für die Anforderung verwendete Thema.

UpdateJobExecution Protokolleintrag

Der AWS IoT Jobs-Dienst generiert einen Protokolleintrag mit eventType der Angabe vonUpdateJobExecution, wenn der Dienst eine Anforderung zur Aktualisierung einer Jobausführung erhält.

UpdateJobExecution Beispiel für einen Protokolleintrag

{ "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." }

Zusätzlich zu den Allgemeine CloudWatch Log-Attribute enthalten UpdateJobExecution Protokolleinträge die folgenden Attribute:

clientId

Die ID des Clients, der die Anforderung stellt.

clientToken

Ein eindeutiger Bezeichner, bei dem die Groß- und Kleinschreibung beachtet werden muss, um die Idempotenz der Anforderung sicherzustellen. Weitere Informationen finden Sie unter So wird Idempotenz sichergestellt.

Details

Weitere Informationen über den Jobs-Service.

jobId

Die Auftrags-ID für die Auftragsausführung.

Protokoll

Das für die Anforderung verwendete Protokoll. Gültige Werte sind MQTT oder HTTP.

topicName

Das für die Anforderung verwendete Thema.

versionNumber

Die Version der Auftragsausführung.

Protokolleinträge für Gerätebereitstellung

Der AWS IoT Device Provisioning-Dienst generiert Protokolle für die folgenden Ereignisse.

GetDeviceCredentials Protokolleintrag

Der AWS IoT Device Provisioning-Dienst generiert einen Protokolleintrag mit der Angabe „Von“GetDeviceCredential, wenn ein Client anruftGetDeviceCredential. eventType

GetDeviceCredentials Beispiel für einen Protokolleintrag

{ "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." }

Zusätzlich zu den Allgemeine CloudWatch Log-Attribute enthalten GetDeviceCredentials Protokolleinträge die folgenden Attribute:

Details

Eine kurze Erläuterung des Fehlers.

Gerät CertificateId

Die ID des Gerätezertifikats.

ProvisionDevice Eintrag protokollieren

Der AWS IoT Device Provisioning-Dienst generiert einen Protokolleintrag mit der Angabe „Von“ProvisionDevice, wenn ein Client anruftProvisionDevice. eventType

ProvisionDevice Beispiel für einen Protokolleintrag

{ "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." }

Zusätzlich zu den Allgemeine CloudWatch Log-Attribute enthalten ProvisionDevice Protokolleinträge die folgenden Attribute:

Details

Eine kurze Erläuterung des Fehlers.

Gerät CertificateId

Die ID des Gerätezertifikats.

Bereitstellung TemplateName

Der Name der Bereitstellungsvorlage.

Protokolleinträge „Dynamische Objektgruppen“

AWS IoT Dynamische Dinggruppen generieren Protokolle für das folgende Ereignis.

AddThingToDynamicThingGroupsFailed Protokolleintrag

Wenn AWS IoT den angegebenen dynamischen Gruppen nichts hinzugefügt werden konnte, wird ein Protokolleintrag mit dem Wert eventType von generiertAddThingToDynamicThingGroupsFailed. Dies geschieht, wenn ein Objekt die Kriterien für die Mitgliedschaft in der dynamischen Objektgruppe erfüllt, es aber der dynamischen Gruppe nicht hinzugefügt werden konnte oder es aus der dynamischen Gruppe entfernt wurde. Dies kann aus folgenden Gründen passieren:

  • Das Objekt gehört bereits der maximalen Anzahl von Gruppen an.

  • Mithilfe der Option --override-dynamic-groups wurde das Objekt zu einer statischen Objektgruppe hinzugefügt. Es wurde aus einer dynamischen Objektgruppe entfernt, um dies möglich zu machen.

Weitere Informationen finden Sie unter Dynamische Objektgruppen – Einschränkungen und Konflikte.

AddThingToDynamicThingGroupsFailed Beispiel für einen Protokolleintrag

In diesem Beispiel ist der Protokolleintrag für einen Fehler AddThingToDynamicThingGroupsFailed zu sehen. In diesem Beispiel wurden die Kriterien für die Aufnahme in die unter aufgeführten dynamischen Dinggruppen TestThingerfülltdynamicThingGroupNames, es konnte aber nicht zu diesen dynamischen Gruppen hinzugefügt werden, wie unter beschriebenreason.

{ "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." }

Zusätzlich zu den Allgemeine CloudWatch Log-Attribute enthalten AddThingToDynamicThingGroupsFailed Protokolleinträge die folgenden Attribute:

dynamisch ThingGroupNames

Ein Array der dynamischen Objektgruppen, denen das Objekt nicht hinzugefügt werden konnte.

Grund

Der Grund, warum das Objekt nicht zu den dynamischen Objektgruppen hinzugefügt werden konnte.

thingName

Der Name des Objekts, das keiner dynamischen Objektgruppe hinzugefügt werden konnte.

Protokolleinträge für die Flottenindizierung

AWS IoT Bei der Flottenindizierung werden Protokolleinträge für die folgenden Ereignisse generiert.

NamedShadowCountForDynamicGroupQueryLimitExceeded Protokolleintrag

Für Abfragebegriffe, die nicht datenquellenspezifisch sind, werden in dynamischen Gruppen maximal 25 benannte Schatten pro Objekt verarbeitet. Wird dieses Limit für ein Objekt überschritten, wird der Ereignistyp NamedShadowCountForDynamicGroupQueryLimitExceeded ausgegeben.

NamedShadowCountForDynamicGroupQueryLimitExceeded Beispiel für einen Protokolleintrag

In diesem Beispiel ist der Protokolleintrag für einen Fehler NamedShadowCountForDynamicGroupQueryLimitExceeded zu sehen. In diesem Beispiel können Ergebnisse, die ausschließlich auf Werten DynamicGroup basieren, ungenau sein, wie im Feld reason beschrieben.

{ "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." }

Allgemeine CloudWatch Log-Attribute

Alle CloudWatch Log-Log-Einträge enthalten die folgenden Attribute:

accountId

Ihre AWS-Konto ID.

eventType

Der Ereignistyp, für den das Protokoll generiert wurde. Der Wert des Ereignistyps hängt vom Ereignis ab, das den Protokolleintrag generiert hat. Jede Beschreibung des Protokolleintrags enthält den Wert von eventType für diesen Protokolleintrag.

logLevel

Die verwendete Protokollierungsebene. Weitere Informationen finden Sie unter Protokollstufen.

Status

Der Status der Anforderung.

Zeitstempel

Der UNIX-Zeitstempel für den Zeitpunkt, an dem der Client eine Verbindung zum AWS IoT -Message Broker hergestellt hat.

traceId

Eine zufällig erstellte Kennung, die verwendet werden kann, um alle Protokolle für eine bestimmte Anforderung zu korrelieren.