Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
CloudWatch Journaux AWS IoT entrées du journal
Chaque composant de AWS IoT génère ses propres entrées de journal. Chaque entrée de journal a un eventType qui spécifie l'opération ayant provoqué la génération de l'entrée de journal. Cette section décrit les entrées de journal générées par les AWS IoT
composants suivants :
Rubriques
Entrées du journal du courtier de messages
Le courtier de AWS IoT messages génère des entrées de journal pour les événements suivants :
Rubriques
Connexion de l'entrée de journal
Le courtier de AWS IoT messages génère une entrée de journal avec un « eventType of » Connect lorsqu'un client MQTT se connecte.
Exemple d'entrée de journal de connexion
{ "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 }
Outre lesAttributs communs CloudWatch des journaux, les entrées du Connect journal contiennent les attributs suivants :
- clientId
-
L'ID du client formulant la demande.
- principalId
-
L'ID du mandataire formulant la demande.
- protocole ;
-
Protocole utilisé pour effectuer la demande. Les valeurs valides sont
MQTTouHTTP. - sourceIp
-
L'adresse IP d'origine de la demande.
- sourcePort
-
Le port d'origine de la demande.
Déconnecter l'entrée du journal
Le courtier de AWS IoT messages génère une entrée de journal avec un « eventType of » Disconnect lorsqu'un client MQTT se déconnecte.
Exemple d'entrée de journal de déconnexion
{ "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" }
Outre lesAttributs communs CloudWatch des journaux, les entrées du Disconnect journal contiennent les attributs suivants :
- clientId
-
L'ID du client formulant la demande.
- principalId
-
L'ID du mandataire formulant la demande.
- protocole ;
-
Protocole utilisé pour effectuer la demande. Les valeurs valides sont
MQTTouHTTP. - sourceIp
-
L'adresse IP d'origine de la demande.
- sourcePort
-
Le port d'origine de la demande.
- raison
-
La raison pour laquelle le client se déconnecte.
- détails
-
Une brève explication de l'erreur.
- disconnectReason
-
La raison pour laquelle le client se déconnecte.
Entrée du journal Ping
Le courtier de AWS IoT messages génère une entrée de journal avec un eventType de Ping lorsqu'il traite un PINGREQ MQTT provenant d'un client connecté et envoie le PINGRESP correspondant. Une seule entrée de journal est émise par opération Ping.
Important
Les entrées du journal Ping sont facultatives et désactivées par défaut. Le seuil d'émission correspond au résultat par entrée : les entrées de réussite sont émises au DEBUG niveau et les entrées d'échec sont émises au ERROR niveau correspondant. Par conséquent, vous verrez des entrées d'échec du ping chaque fois que le niveau d'événement ou de Resource-specific dérogation applicable à la connexion est défini sur un niveau ERROR ou plus détaillé (WARN,, ouDEBUG)INFO, mais les entrées de réussite du ping ne sont publiées que lorsque ce niveau est défini sur. DEBUG Pour configurer ces paramètres, reportez-vous aux sections Configuration du compte et Event-level connexion AWS IoT (CLI) etConfigurer les Resource-specific remplacements dans AWS IoT (CLI).
En ce qui concerne le succès, l'logLevelest DEBUG et l'statusestSuccess. En cas d'échec (par exemple, lorsque la connexion client est interrompue avant que le PINGRESP ne puisse être envoyé), le logLevel is ERROR et le status is. Failure
Exemple de saisie du journal Ping (succès)
{ "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 }
Exemple de saisie du journal Ping (échec)
{ "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" }
En plus de Attributs communs CloudWatch des journaux, les entrées de journal Ping contiennent les attributs suivants :
- protocole ;
-
Protocole utilisé pour effectuer la demande. La valeur est toujours
MQTT. - latence
-
Le délai en millisecondes entre la réception du PINGREQ et l'envoi du PINGRESP. Ce champ n'est présent que lorsque
statusc'est le casSuccess. - Demander un horodatage
-
Horodatage de AWS IoT Core réception du PINGREQ par le client.
- Horodatage de réponse
-
L'horodatage lors de l' AWS IoT Core envoi du PINGRESP au client. Ce champ n'est présent que lorsque
statusc'est le casSuccess. - clientId
-
L'ID du client formulant la demande.
- principalId
-
L'ID du mandataire formulant la demande.
- sourceIp
-
L'adresse IP d'origine de la demande.
- sourcePort
-
Le port d'origine de la demande.
- raison
-
La raison de l'échec de l'opération Ping. Ce champ n'est présent que lorsque
statusc'est le casFailure. - détails
-
Une brève explication de l'erreur. Ce champ n'est présent que lorsque
statusc'est le casFailure.
Connection.AuthNError entrée dans le journal
Le courtier de AWS IoT messages génère une entrée de journal avec un « eventType of » Connection.AuthNError lorsqu'une tentative de connexion client est rejetée en raison d'un échec d'authentification. Cette entrée logLevel de journal est toujours ERROR et status est toujoursFailure. Cette entrée de journal correspond à la Connection.AuthNError CloudWatchmétrique.
Important
Connection.AuthNErrorles entrées du journal sont facultatives et désactivées par défaut. Ils sont émis au niveau du ERROR journal, de sorte qu'une entrée de Connection.AuthNError journal n'est publiée que lorsque le niveau de l'événement ou de la Resource-specific dérogation applicable à la connexion est défini sur ERROR ou sur un niveau plus détaillé (WARN,, ou). INFO DEBUG Pour configurer ces paramètres, reportez-vous aux sections Configuration du compte et Event-level connexion AWS IoT (CLI) etConfigurer les Resource-specific remplacements dans AWS IoT (CLI).
Note
Cette entrée de journal est publiée sur le Compte AWS serveur propriétaire de l'indication de nom de serveur (SNI) fournie lors de la poignée de contact TLS. Si le client ne fournit pas de SNI, ou si le SNI ne peut être résolu sur un compte, aucune entrée de journal ou métrique n'est émise.
Connection.AuthNError exemple de saisie de journal
{ "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" }
En plus de Attributs communs CloudWatch des journaux, les entrées de journal Connection.AuthNError contiennent les attributs suivants :
- protocole ;
-
Protocole utilisé pour effectuer la demande. Les valeurs valides sont
MQTTouHTTP. - Type d'authentification
-
Type d'authentification utilisé pour la tentative de connexion. Les valeurs valides sont
AWS_X509,AWS_SIGV4,CUSTOM_AUTHetCUSTOM_AUTH_X509. - clientId
-
L'identifiant du client à l'origine de la demande, s'il est disponible.
- principalId
-
L'identifiant du principal qui fait la demande, s'il est disponible.
- sourceIp
-
L'adresse IP d'origine de la demande.
- sourcePort
-
Le port d'origine de la demande.
- IP cible
-
Adresse IP de destination de la connexion. Ce champ n'est peut-être pas présent dans toutes les entrées du journal.
- Port cible
-
Port de destination de la connexion.
- serveur NameIndication
-
Nom d'hôte de l'extension TLS Server Name Indication (SNI) fourni par le client.
- raison
-
La raison pour laquelle l'authentification du client a échoué. Consultez Connection.AuthNError codes d'erreur la liste des valeurs possibles.
- détails
-
Brève description de l'échec de l'authentification.
Connection.AuthNError codes d'erreur
Le tableau suivant répertorie les codes reason d'erreur et les details messages correspondants qui peuvent apparaître pour une entrée de Connection.AuthNError journal. Des codes d'erreur supplémentaires peuvent être ajoutés à l'avenir.
| Code d’erreur | Message d’erreur |
|---|---|
CUSTOM_AUTHORIZER_LAMBDA_EXECUTION_ERROR |
L'appel Lambda de l'autorisateur personnalisé a échoué |
CUSTOM_AUTHORIZER_NOT_FOUND |
Impossible de trouver l'autorisateur personnalisé |
CUSTOM_AUTHORIZER_PARAMETER_INVALID |
Le paramètre d'authentification personnalisé n'est pas valide |
DEVICE_CERTIFICATE_INACTIVE |
Le certificat de l'appareil n'est pas actif |
DEVICE_CERTIFICATE_NOT_REGISTERED |
Le certificat de l'appareil n'est pas enregistré |
DEVICE_CERTIFICATE_REVOKED |
Le certificat de l'appareil est révoqué |
DOMAIN_CONFIGURATION_DISABLED |
La configuration du domaine pour l'indication de nom de serveur (SNI) fournie est désactivée |
DOMAIN_CONFIGURATION_INVALID |
Le type de point de terminaison dans la configuration du domaine n'est pas valide |
INTERNAL_SERVER_ERROR |
Erreur interne du serveur |
NOT_AUTHENTICATED |
Les informations d'identification fournies n'ont pas pu être authentifiées |
SECURITY_TOKEN_EXPIRED |
Le jeton de sécurité a expiré |
SECURITY_TOKEN_INVALID |
Le jeton de sécurité inclus dans la demande n'est pas valide |
SECURITY_TOKEN_SIGNATURE_MISMATCH |
La signature de la demande ne correspond pas à la signature fournie |
SNI_MISUSED |
Le client a utilisé un SNI qui n'est pas associé à ce compte |
DeleteConnection entrée dans le journal
Le courtier de AWS IoT messages génère une entrée de journal avec un « eventType of » DeleteConnection lorsqu'une connexion client MQTT est supprimée.
DeleteConnection exemple de saisie de journal
{ "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 }
Outre lesAttributs communs CloudWatch des journaux, les entrées du DeleteConnection journal contiennent les attributs suivants :
- clientId
-
L'ID du client qui sera déconnecté.
- principalId
-
L'ID du mandataire formulant la demande. Pour plus d'informations sur la façon d'identifier le principal à l'aide de l'identifiant principal, voir Comparer les identités et les informations d'identification IAM dans le guide de l'utilisateur IAM.
- protocole ;
-
Protocole utilisé pour effectuer la demande. La valeur valide est
HTTP. - sourceIp
-
L'adresse IP d'origine de la demande.
- sourcePort
-
Le port d'origine de la demande.
GetRetainedMessage entrée dans le journal
Le courtier de AWS IoT messages génère une entrée de journal avec un « eventType of GetRetainedMessage GetRetainedMessagewhen ».
GetRetainedMessage exemple de saisie de journal
{ "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" }
Outre lesAttributs communs CloudWatch des journaux, les entrées du GetRetainedMessage journal contiennent les attributs suivants :
- dernier ModifiedDate
-
Date et heure de l'époque, en millisecondes, auxquelles le message conservé a été stocké par. AWS IoT
- protocole ;
-
Protocole utilisé pour effectuer la demande. Valeur valide :
HTTP. - qos
-
Le niveau de Qualité de Service (QoS) utilisé dans la demande de publication. Les valeurs valides sont
0ou1. - topicName
-
Le nom de la rubrique faisant l'objet de l'abonnement.
ListRetainedMessage entrée dans le journal
Le courtier de AWS IoT messages génère une entrée de journal avec un « eventType of ListRetainedMessage ListRetainedMessageswhen ».
ListRetainedMessage exemple de saisie de journal
{ "timestamp": "2017-08-07 18:47:56.664", "logLevel": "INFO", "traceId": "1a60d02e-15b9-605b-7096-a9f584a6ad3f", "accountId": "123456789012", "status": "Success", "eventType": "ListRetainedMessage", "protocol": "HTTP" }
Outre leAttributs communs CloudWatch des journaux, les entrées du ListRetainedMessage journal contiennent l'attribut suivant :
- protocole ;
-
Protocole utilisé pour effectuer la demande. Valeur valide :
HTTP.
ListSubscriptions entrée dans le journal
Le courtier de AWS IoT messages génère une entrée eventType de journal avec un « ou » ListSubscriptions lorsqu'une demande de liste des abonnements clients est reçue.
ListSubscriptions exemple de saisie de journal
{ "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 }
En plus de Attributs communs CloudWatch des journaux, les entrées de journal ListSubscriptions contiennent les attributs suivants :
- clientId
-
L'ID du client formulant la demande.
- principalId
-
L'ID du mandataire formulant la demande.
- protocole ;
-
Protocole utilisé pour effectuer la demande. Valeur valide :
HTTP. - sourceIp
-
L'adresse IP d'origine de la demande.
- sourcePort
-
Le port d'origine de la demande.
- maxResults
-
Le nombre maximum de résultats demandés.
GetConnection entrée dans le journal
Le courtier de AWS IoT messages génère une entrée eventType de journal avec un « ou » GetConnection lorsqu'une demande d'obtention d'informations de connexion est reçue.
GetConnection exemple de saisie de journal
{ "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 }
En plus de Attributs communs CloudWatch des journaux, les entrées de journal GetConnection contiennent les attributs suivants :
- clientId
-
L'ID du client formulant la demande.
- principalId
-
L'ID du mandataire formulant la demande.
- protocole ;
-
Protocole utilisé pour effectuer la demande. Valeur valide :
HTTP. - sourceIp
-
Adresse IP d'origine de la demande d'API.
- sourcePort
-
Port d'origine de la demande d'API.
Publish-In entrée dans le journal
Lorsque le courtier de AWS IoT messages reçoit un message MQTT, il génère une entrée de journal avec un eventType dePublish-In.
Publish-In exemple de saisie de journal
{ "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" }
Outre lesAttributs communs CloudWatch des journaux, les entrées du Publish-In journal contiennent les attributs suivants :
- clientId
-
L'ID du client formulant la demande.
- principalId
-
L'ID du mandataire formulant la demande.
- protocole ;
-
Protocole utilisé pour effectuer la demande. Les valeurs valides sont
MQTTouHTTP. - retain
-
Attribut utilisé lorsque l'indicateur RETAIN est défini sur un message avec la valeur de
True. Si l'indicateur RETAIN n'est pas activé sur le message, cet attribut n'apparaît pas dans l'entrée du journal. Pour plus d’informations, consultez MQTT a retenu les messages. - sourceIp
-
L'adresse IP d'origine de la demande.
- sourcePort
-
Le port d'origine de la demande.
- topicName
-
Le nom de la rubrique faisant l'objet de l'abonnement.
Publish-Out entrée dans le journal
Lorsque le courtier de messages publie un message MQTT, il génère une entrée de journal avec un eventType de Publish-Out
Publish-Out exemple de saisie de journal
{ "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 }
Outre lesAttributs communs CloudWatch des journaux, les entrées du Publish-Out journal contiennent les attributs suivants :
- clientId
-
L'ID du client abonné qui reçoit des messages sur ce sujet MQTT.
- principalId
-
L'ID du mandataire formulant la demande.
- protocole ;
-
Protocole utilisé pour effectuer la demande. Les valeurs valides sont
MQTTouHTTP. - sourceIp
-
L'adresse IP d'origine de la demande.
- sourcePort
-
Le port d'origine de la demande.
- topicName
-
Le nom de la rubrique faisant l'objet de l'abonnement.
Entrée de journal en file d'attente
Lorsqu'un appareil doté d'une session persistante est déconnecté, le courtier de messages MQTT stocke les messages du périphérique et AWS IoT génère des entrées de journal avec un Queued EventType de. Pour plus d'informations sur les sessions persistantes MQTT, consultezSessions permanentes MQTT.
Exemple d'entrée dans le journal des erreurs d'un serveur en file d'attente
{ "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" }
Outre les entrées du journal des erreurs Queued du serveurAttributs communs CloudWatch des journaux, elles contiennent les attributs suivants :
- clientId
-
ID du client auquel le message est mis en file d'attente.
- détails
-
Erreur du serveurUne erreur du serveur a empêché le stockage du message.
- protocole ;
-
Protocole utilisé pour effectuer la demande. Cette valeur sera toujours
MQTT. - qos
-
Niveau de Qualité de Service (QoS) de la requête. La valeur sera toujours 1 car les messages dont le QoS est égal à 0 ne sont pas stockés.
- topicName
-
Le nom de la rubrique faisant l'objet de l'abonnement.
Exemple d'entrée dans le journal des succès en attente
{ "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" }
Outre les entrées du Attributs communs CloudWatch des journaux journal de Queued réussite contiennent les attributs suivants :
- clientId
-
ID du client auquel le message est mis en file d'attente.
- protocole ;
-
Protocole utilisé pour effectuer la demande. Cette valeur sera toujours
MQTT. - qos
-
Niveau de Qualité de Service (QoS) de la requête. La valeur sera toujours 1 car les messages dont le QoS est égal à 0 ne sont pas stockés.
- topicName
-
Le nom de la rubrique faisant l'objet de l'abonnement.
Exemple d'entrée de journal limitée en file d'attente
{ "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" }
Outre les entrées du journal Queued limitéAttributs communs CloudWatch des journaux, elles contiennent les attributs suivants :
- clientId
-
ID du client auquel le message est mis en file d'attente.
- détails
-
Limité lors de la mise en file d'attente des messages hors ligneLe client a dépassé la
Queued messages per second per accountlimite, le message n'a donc pas été enregistré. - protocole ;
-
Protocole utilisé pour effectuer la demande. Cette valeur sera toujours
MQTT. - qos
-
Niveau de Qualité de Service (QoS) de la requête. La valeur sera toujours 1 car les messages dont le QoS est égal à 0 ne sont pas stockés.
- topicName
-
Le nom de la rubrique faisant l'objet de l'abonnement.
Souscrire l'entrée de journal
Le courtier de AWS IoT messages génère une entrée de journal avec un « eventType of » Subscribe lorsqu'un client MQTT s'abonne à un sujet.
Exemple d'entrée de journal d'abonnement MQTT 3
{ "timestamp": "2017-08-10 15:39:04.413", "logLevel": "INFO", "traceId": "7aa5c38d-1b49-3753-15dc-513ce4ab9fa6", "accountId": "123456789012", "status": "Success", "eventType": "Subscribe", "protocol": "MQTT", "topicName": "$aws/things/MyThing/shadow/#", "clientId": "abf27092886e49a8a5c1922749736453", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "sourceIp": "205.251.233.181", "sourcePort": 13490 }
Outre lesAttributs communs CloudWatch des journaux, les entrées du Subscribe journal contiennent les attributs suivants :
- clientId
-
L'ID du client formulant la demande.
- principalId
-
L'ID du mandataire formulant la demande.
- protocole ;
-
Protocole utilisé pour effectuer la demande. Cette valeur sera toujours
MQTT. - sourceIp
-
L'adresse IP d'origine de la demande.
- sourcePort
-
Le port d'origine de la demande.
- topicName
-
Le nom de la rubrique faisant l'objet de l'abonnement.
Exemple d'entrée de journal d'abonnement MQTT 5
{ "timestamp": "2022-11-30 16:24:15.628", "logLevel": "INFO", "traceId": "7aa5c38d-1b49-3753-15dc-513ce4ab9fa6", "accountId": "123456789012", "status": "Success", "eventType": "Subscribe", "protocol": "MQTT", "topicName": "test/topic1,$invalid/reserved/topic", "subscriptions": [ { "topicName": "test/topic1", "reasonCode": 1 }, { "topicName": "$invalid/reserved/topic", "reasonCode": 143 } ], "clientId": "abf27092886e49a8a5c1922749736453", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "sourceIp": "205.251.233.181", "sourcePort": 13490 }
Pour les opérations d'abonnement de MQTT 5, en plus desAttributs communs CloudWatch des journaux et des attributs d'entrée du journal d'abonnement et de MQTT 3, les entrées du Subscribe journal MQTT 5 contiennent l'attribut suivant :
- abonnements
-
Une liste de correspondances entre les sujets demandés dans la demande d'abonnement et le code de motif individuel de MQTT 5. Pour plus d'informations, consultez code de motif MQTT.
Entrée dans le journal de désabonnement
Le courtier de AWS IoT messages génère une entrée de journal avec un « eventType of » Unsubscribe lorsqu'un client MQTT se désabonne d'un sujet MQTT.
Exemple d'entrée dans le journal de désabonnement MQTT
{ "timestamp": "2024-08-20 22:53:32.844", "logLevel": "INFO", "traceId": "db6bd09a-2c3f-1cd2-27cc-fd6b1ce03b58", "accountId": "123456789012", "status": "Success", "eventType": "Unsubscribe", "protocol": "MQTT", "clientId": "abf27092886e49a8a5c1922749736453", "principalId": "145179c40e2219e18a909d896a5340b74cf97a39641beec2fc3eeafc5a932167", "sourceIp": "205.251.233.181", "sourcePort": 13490 }
Outre lesAttributs communs CloudWatch des journaux, les entrées du Unsubscribe journal contiennent les attributs suivants :
- protocole ;
-
Protocole utilisé pour effectuer la demande. Cette valeur sera toujours
MQTT. - clientId
-
L'ID du client formulant la demande.
- principalId
-
L'ID du mandataire formulant la demande.
- sourceIp
-
L'adresse IP d'origine de la demande.
- sourcePort
-
Le port d'origine de la demande.
SendDirectMessage entrée dans le journal
Le courtier de AWS IoT messages génère une entrée de journal avec un eventType de SendDirectMessage lorsqu'une demande d' SendDirectMessage API est faite.
AWS IoT Core enregistre les SendDirectMessage événements dans CloudWatch Logs lorsque vous activez la journalisation de l'IoT. Pour plus d'informations sur la configuration de la journalisation, consultezConfigurer AWS IoT journalisation.
SendDirectMessage exemple de saisie du journal de réussite
{ "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 exemple d'entrée dans le journal des défaillances
{ "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 }
En plus de Attributs communs CloudWatch des journaux, les entrées de journal SendDirectMessage contiennent les attributs suivants :
- clientId
-
L'ID du client qui reçoit le message direct.
- topicName
-
Sujet sur lequel le message a été envoyé.
- protocole ;
-
Protocole utilisé pour effectuer la demande. Valeur valide :
HTTP. - confirmation
-
Si une confirmation de livraison a été demandée. Les valeurs valides sont
trueoufalse. - timeout
-
Durée maximale, en secondes, d'attente d'une confirmation de livraison de la part du client destinataire. Présent uniquement quand
confirmationc'est le castrue. - raison
-
Code de cause de l'échec.
- détails
-
Une brève explication de l'erreur.
- principalId
-
L'ID du mandataire formulant la demande.
- sourceIp
-
L'adresse IP d'origine de la demande.
- sourcePort
-
Le port d'origine de la demande.
Codes de raison
Les codes de motif et les détails suivants apparaîtront dans les entrées du journal des défaillances :
| Raison | Détails |
|---|---|
MALFORMED_CLIENTID |
Cet identifiant client n'est pas valide. Les identifiants clients ne doivent pas dépasser 128 caractères et ne peuvent pas commencer par le signe dollar ($). Entrez un autre identifiant client |
INVALID_TOPIC |
Ce sujet n'est pas valide. La taille des sujets doit être inférieure à 256 octets, doit contenir moins de 9 parties et ne doit pas commencer par le signe dollar ($) |
INVALID_TIMEOUT_PARAMETER |
Valeur de délai d'expiration non valide. Doit être un entier compris entre 1 et 15 |
INVALID_CONFIRMATION_PARAMETER |
Valeur de confirmation non valide. Doit être « vrai » ou « faux » |
RECEIVE_AUTHORIZATION_FAILURE |
L'autorisation a échoué pour le client cible. Vérifiez que votre politique accorde les autorisations nécessaires |
TARGET_CLIENT_ID_NOT_FOUND |
L'ID client est introuvable. Vérifiez que le client est connecté et réessayez |
TARGET_CLIENT_NOT_CONNECTED |
L'ID du client cible n'est pas connecté, mais il possède une session persistante active |
SEND_DIRECT_MESSAGE_THROTTLED |
La demande a été refusée en raison d'un dépassement du taux de demandes d'envoi de messages directs |
RECEIVE_SESSION_THROTTLED |
La demande a été refusée car le taux de demandes dépassait le nombre de demandes de publication sortantes par seconde et par connexion |
RECEIVER_MAX_UNACKED_QOS1_EXCEEDED |
Le client récepteur a atteint le nombre maximum de messages QoS 1 non reconnus |
DELIVERY_CONFIRMATION_TIMEOUT |
La confirmation de livraison n'a pas été reçue dans le délai spécifié |
DELIVERY_CONFIRMATION_SENDER_DISCONNECT |
L'expéditeur s'est déconnecté avant la réception de la confirmation de livraison |
CLIENT_ENDPOINT_NOT_WRITABLE |
Le point de terminaison du client récepteur n'est pas accessible en écriture |
INTERNAL_SERVER_ERROR |
Erreur interne du serveur |
Entrées du journal OCSP du certificat de serveur
AWS IoT Core génère des entrées de journal pour l'événement suivant :
Rubriques
RetrieveOCSPStapleData entrée dans le journal
AWS IoT Core génère une entrée de journal avec un eventType de RetrieveOCSPStapleData lorsque le serveur récupère les données de base OCSP.
RetrieveOCSPStapleData exemples de saisie de journal
Voici un exemple d'entrée de journal deSuccess.
{ "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" } }
Voici un exemple d'entrée de journal deFailure.
{ "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" } }
Pour l'RetrieveOCSPStapleopération, outre leAttributs communs CloudWatch des journaux, les entrées du journal contiennent les attributs suivants :
- raison
-
La raison pour laquelle l'opération échoue.
- domaine ConfigName
-
Le nom de la configuration de votre domaine.
- Détails de connexion
-
Brève explication des détails de connexion.
-
http StatusCode
Codes d'état HTTP renvoyés par le répondeur OCSP en réponse à la demande du client adressée au serveur.
-
ocsp ResponderUri
L'URI du répondeur OCSP qui AWS IoT Core extrait le certificat du serveur.
-
sourceIp
Adresse IP source du AWS IoT Core serveur.
-
IP cible
Adresse IP cible du répondeur OCSP.
-
- ocsp RequestDetails
-
Détails de la demande OCSP.
-
Nom du demandeur
Identifiant du AWS IoT Core serveur qui envoie une demande au répondeur OCSP.
-
demande CertId
L'ID du certificat de la demande. Il s'agit de l'ID du certificat pour lequel la réponse OCSP est demandée.
-
- ocsp ResponseDetails
-
Détails de la réponse de l'OCSP.
-
réponse CertId
L'ID de certificat de la réponse OCSP.
-
ocsp ResponseStatus
État de la réponse OCSP.
-
État du certificat
État du certificat.
-
Signature
Signature appliquée à la réponse par une entité de confiance.
-
ce UpdateTime
Heure à laquelle le statut indiqué est connu pour être correct.
-
suivant UpdateTime
Heure à laquelle ou avant laquelle les informations les plus récentes concernant le statut du certificat seront disponibles.
-
produit AtTime
Heure à laquelle le répondeur OCSP a signé cette réponse.
-
agrafé DataPayloadSize
La taille de la charge utile des données agrafées.
-
RetrieveOCSPStapleData entrée de journal pour les points de terminaison privés
AWS IoT Core génère une entrée de journal avec un eventType de RetrieveOCSPStapleData lorsque le serveur récupère les données de base OCSP.
RetrieveOCSPStapleData exemples de saisie de journal pour les points de terminaison privés
Voici un exemple d'entrée de journal deSuccess.
{ "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" } }
Voici un exemple d'entrée de journal deFailure.
{ "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" } }
Pour l'RetrieveOCSPStapleopération, outre les attributs Attributs communs CloudWatch des journaux et contenus dans l'entrée du RetrieveOCSPStapleData journal, les entrées du journal pour les points de terminaison privés contiennent les attributs suivants :
- Détails de la Lambda
-
Détails de la fonction Lambda.
-
Fil d'agneau
L'ARN de la fonction Lambda.
-
Source ARN
ARN de la configuration du domaine.
-
- autorisé ResponderArn
-
L'ARN du répondeur d'autorisation s'il en existe un configuré dans la configuration du domaine.
Entrées de journal de shadow d'appareil
Le service AWS IoT Device Shadow génère des entrées de journal pour les événements suivants :
Rubriques
DeleteThingShadow entrée dans le journal
Le service Device Shadow génère une entrée de journal avec un eventType de DeleteThingShadow en cas de réception d'une demande de suppression d'un shadow d'appareil.
DeleteThingShadow exemple de saisie de journal
{ "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" }
Outre lesAttributs communs CloudWatch des journaux, les entrées du DeleteThingShadow journal contiennent les attributs suivants :
- appareil ShadowName
-
Nom du shadow à mettre à jour.
- protocole ;
-
Protocole utilisé pour effectuer la demande. Les valeurs valides sont
MQTTouHTTP. - topicName
-
Le nom de la rubrique sur laquelle la demande a été publiée.
GetThingShadow entrée dans le journal
Le service Device Shadow génère une entrée de journal avec un eventType de GetThingShadow en cas de réception d'une demande get pour un shadow.
GetThingShadow exemple de saisie de journal
{ "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" }
Outre lesAttributs communs CloudWatch des journaux, les entrées du GetThingShadow journal contiennent les attributs suivants :
- appareil ShadowName
-
Le nom du shadow demandé.
- protocole ;
-
Protocole utilisé pour effectuer la demande. Les valeurs valides sont
MQTTouHTTP. - topicName
-
Le nom de la rubrique sur laquelle la demande a été publiée.
UpdateThingShadow entrée dans le journal
Le service Device Shadow génère une entrée de journal avec un eventType de UpdateThingShadow en cas de réception d'une demande de mise à jour d'un shadow d'appareil.
UpdateThingShadow exemple de saisie de journal
{ "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" }
Outre lesAttributs communs CloudWatch des journaux, les entrées du UpdateThingShadow journal contiennent les attributs suivants :
- appareil ShadowName
-
Nom du shadow à mettre à jour.
- protocole ;
-
Protocole utilisé pour effectuer la demande. Les valeurs valides sont
MQTTouHTTP. - topicName
-
Le nom de la rubrique sur laquelle la demande a été publiée.
Entrées de journal du moteur de règles
Le moteur de AWS IoT règles génère des journaux pour les événements suivants :
Rubriques
FunctionExecution entrée dans le journal
Le moteur de règles génère une entrée de journal avec un eventType de FunctionExecution lorsque la requête SQL d'une règle appelle une fonction externe. Une fonction externe est appelée lorsque l'action d'une règle envoie une requête HTTP à AWS IoT un autre service Web (par exemple, en appelant get_thing_shadow oumachinelearning_predict).
FunctionExecution exemple de saisie de journal
{ "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" }
Outre lesAttributs communs CloudWatch des journaux, les entrées du FunctionExecution journal contiennent les attributs suivants :
- clientId
-
N/Apour les journauxFunctionExecution. - principalId
-
L'ID du mandataire formulant la demande.
- resources
-
Une collection des ressources utilisées par les actions de la règle.
- ruleName
-
Le nom de la règle de correspondance.
- topicName
-
Le nom de la rubrique faisant l'objet de l'abonnement.
RuleExecution entrée dans le journal
Lorsque le moteur de AWS IoT règles déclenche l'action d'une règle, il génère une entrée de RuleExecution journal.
RuleExecution exemple de saisie de journal
{ "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 avec exemple de saisie de journal par lots
{ "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 } }
En plus de Attributs communs CloudWatch des journaux, les entrées de journal RuleExecution contiennent les attributs suivants :
- clientId
-
L'ID du client formulant la demande.
- principalId
-
L'ID du mandataire formulant la demande.
- resources
-
Une collection des ressources utilisées par les actions de la règle.
- ruleAction
-
Le nom de l'action déclenchée.
- ruleName
-
Le nom de la règle de correspondance.
- topicName
-
Le nom de la rubrique faisant l'objet de l'abonnement.
RuleMatch entrée dans le journal
Le moteur de AWS IoT règles génère une entrée de journal avec un eventType de RuleMatch lorsque le courtier de messages reçoit un message correspondant à une règle.
RuleMatch exemple de saisie de journal
{ "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" }
Outre lesAttributs communs CloudWatch des journaux, les entrées du RuleMatch journal contiennent les attributs suivants :
- clientId
-
L'ID du client formulant la demande.
- principalId
-
L'ID du mandataire formulant la demande.
- ruleName
-
Le nom de la règle de correspondance.
- topicName
-
Le nom de la rubrique faisant l'objet de l'abonnement.
RuleExecutionThrottled entrée dans le journal
Lorsqu'une exécution est limitée, le moteur de AWS IoT règles génère une entrée de journal avec un eventType de. RuleExecutionThrottled
RuleExecutionThrottled exemple de saisie de journal
{ "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" }
Outre lesAttributs communs CloudWatch des journaux, les entrées du RuleExecutionThrottled journal contiennent les attributs suivants :
- clientId
-
L'ID du client formulant la demande.
- détails
-
Une brève explication de l'erreur.
- principalId
-
L'ID du mandataire formulant la demande.
- raison
-
La chaîne « RuleExecutionThrottled ».
- ruleName
-
Le nom de la règle à déclencher.
- topicName
-
Le nom de la rubrique qui a été publiée.
RuleNotFound entrée dans le journal
Lorsque le moteur de AWS IoT règles ne trouve pas de règle portant un nom donné, il génère une entrée de journal avec un « eventType of RuleNotFound ».
RuleNotFound exemple de saisie de journal
{ "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" }
Outre lesAttributs communs CloudWatch des journaux, les entrées du RuleNotFound journal contiennent les attributs suivants :
- clientId
-
L'ID du client formulant la demande.
- détails
-
Une brève explication de l'erreur.
- principalId
-
L'ID du mandataire formulant la demande.
- raison
-
La chaîne « RuleNotFound ».
- ruleName
-
Nom de la règle qui est introuvable.
- topicName
-
Le nom de la rubrique qui a été publiée.
StartingRuleExecution entrée dans le journal
Lorsque le moteur de AWS IoT règles commence à déclencher l'action d'une règle, il génère une entrée de journal avec un eventType deStartingRuleExecution.
StartingRuleExecution exemple de saisie de journal
{ "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" }
Outre lesAttributs communs CloudWatch des journaux, les entrées du rule- journal contiennent les attributs suivants :
- clientId
-
L'ID du client formulant la demande.
- principalId
-
L'ID du mandataire formulant la demande.
- ruleAction
-
Le nom de l'action déclenchée.
- ruleName
-
Le nom de la règle de correspondance.
- topicName
-
Le nom de la rubrique faisant l'objet de l'abonnement.
Entrées du journal des tâches
Le service AWS IoT Job génère des entrées de journal pour les événements suivants. Les entrées de journal sont générées lorsqu'une demande HTTP ou MQTT est reçue à partir de l'appareil.
Rubriques
DescribeJobExecution entrée dans le journal
Le service AWS IoT Jobs génère une entrée de journal avec un « eventType of » DescribeJobExecution lorsque le service reçoit une demande décrivant l'exécution d'une tâche.
DescribeJobExecution exemple de saisie de journal
{ "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." }
Outre lesAttributs communs CloudWatch des journaux, les entrées du GetJobExecution journal contiennent les attributs suivants :
- clientId
-
L'ID du client formulant la demande.
- clientToken
-
Identifiant unique, sensible à la casse, afin de garantir l'idempotence de la demande. Pour de plus amples informations, veuillez consulter la section Comment garantir l'idempotence.
- détails
-
Informations supplémentaires issues du service Jobs.
- jobId
-
L'ID de tâche pour l'exécution du travail.
- protocole ;
-
Protocole utilisé pour effectuer la demande. Les valeurs valides sont
MQTTouHTTP. - topicName
-
La rubrique utilisée pour effectuer la demande.
GetPendingJobExecution entrée dans le journal
Le service AWS IoT Jobs génère une entrée de journal avec un « eventType of » GetPendingJobExecution lorsque le service reçoit une demande d'exécution de tâche.
GetPendingJobExecution exemple de saisie de journal
{ "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." }
Outre lesAttributs communs CloudWatch des journaux, les entrées du GetPendingJobExecution journal contiennent les attributs suivants :
- clientId
-
L'ID du client formulant la demande.
- clientToken
-
Identifiant unique, sensible à la casse, afin de garantir l'idempotence de la demande. Pour de plus amples informations, veuillez consulter la section Comment garantir l'idempotence.
- détails
-
Informations supplémentaires issues du service Jobs.
- protocole ;
-
Protocole utilisé pour effectuer la demande. Les valeurs valides sont
MQTTouHTTP. - topicName
-
Le nom de la rubrique faisant l'objet de l'abonnement.
ReportFinalJobExecutionCount entrée dans le journal
Le service AWS IoT Jobs génère une entrée de journal avec un « entryType of » ReportFinalJobExecutionCount lorsqu'une tâche est terminée.
ReportFinalJobExecutionCount exemple de saisie de journal
{ "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" }
Outre lesAttributs communs CloudWatch des journaux, les entrées du ReportFinalJobExecutionCount journal contiennent les attributs suivants :
- détails
-
Informations supplémentaires issues du service Jobs.
- jobId
-
L'ID de tâche pour l'exécution du travail.
StartNextPendingJobExecution entrée dans le journal
Lorsqu'il reçoit une demande pour démarrer la prochaine exécution de la tâche en attente, le service AWS IoT Jobs génère une entrée de journal avec un eventType deStartNextPendingJobExecution.
StartNextPendingJobExecution exemple de saisie de journal
{ "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." }
Outre lesAttributs communs CloudWatch des journaux, les entrées du StartNextPendingJobExecution journal contiennent les attributs suivants :
- clientId
-
L'ID du client formulant la demande.
- clientToken
-
Identifiant unique, sensible à la casse, afin de garantir l'idempotence de la demande. Pour de plus amples informations, veuillez consulter la section Comment garantir l'idempotence.
- détails
-
Informations supplémentaires issues du service Jobs.
- protocole ;
-
Protocole utilisé pour effectuer la demande. Les valeurs valides sont
MQTTouHTTP. - topicName
-
La rubrique utilisée pour effectuer la demande.
UpdateJobExecution entrée dans le journal
Le service AWS IoT Jobs génère une entrée de journal avec un « eventType of » UpdateJobExecution lorsque le service reçoit une demande de mise à jour de l'exécution d'une tâche.
UpdateJobExecution exemple de saisie de journal
{ "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." }
Outre lesAttributs communs CloudWatch des journaux, les entrées du UpdateJobExecution journal contiennent les attributs suivants :
- clientId
-
L'ID du client formulant la demande.
- clientToken
-
Identifiant unique, sensible à la casse, afin de garantir l'idempotence de la demande. Pour de plus amples informations, veuillez consulter la section Comment garantir l'idempotence.
- détails
-
Informations supplémentaires issues du service Jobs.
- jobId
-
L'ID de tâche pour l'exécution du travail.
- protocole ;
-
Protocole utilisé pour effectuer la demande. Les valeurs valides sont
MQTTouHTTP. - topicName
-
La rubrique utilisée pour effectuer la demande.
- versionNumber
-
Version de l'exécution de tâche.
Entrées de journal de provisionnement des appareils
Le service AWS IoT Device Provisioning génère des journaux pour les événements suivants.
GetDeviceCredentials entrée dans le journal
Le service AWS IoT Device Provisioning génère une entrée de journal avec un « eventType of » GetDeviceCredential lorsqu'un client appelleGetDeviceCredential.
GetDeviceCredentials exemple de saisie de journal
{ "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." }
Outre lesAttributs communs CloudWatch des journaux, les entrées du GetDeviceCredentials journal contiennent les attributs suivants :
- détails
-
Une brève explication de l'erreur.
- appareil CertificateId
-
ID du certificat d'appareil.
ProvisionDevice entrée dans le journal
Le service AWS IoT Device Provisioning génère une entrée de journal avec un « eventType of » ProvisionDevice lorsqu'un client appelleProvisionDevice.
ProvisionDevice exemple de saisie de journal
{ "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." }
Outre lesAttributs communs CloudWatch des journaux, les entrées du ProvisionDevice journal contiennent les attributs suivants :
- détails
-
Une brève explication de l'erreur.
- appareil CertificateId
-
ID du certificat d'appareil.
- approvisionnement TemplateName
-
Nom du modèle de mise en service.
Entrées dynamiques du journal des groupes d'objets
AWS IoT Les groupes d'objets dynamiques génèrent des journaux pour l'événement suivant.
AddThingToDynamicThingGroupsFailed entrée dans le journal
Lorsque vous ne AWS IoT parvenez pas à ajouter un élément aux groupes dynamiques spécifiés, il génère une entrée de journal avec un eventType deAddThingToDynamicThingGroupsFailed. Cela se produit lorsqu'un objet a répondu aux critères d'appartenance au groupe d’objets dynamiques. Toutefois, il n'a pas pu être ajouté au groupe dynamique ou il a été supprimé du groupe dynamique. Cela peut se produire pour les raisons suivantes :
-
L’objet appartient déjà au nombre maximal de groupes.
-
L'option --override-dynamic-groups a été utilisée pour ajouter l’objet à un groupe d’objets statiques. Il a été retiré d'un groupe d’objets dynamiques pour rendre cela possible.
Pour de plus amples informations, veuillez consulter Limitations et conflits de groupes d’objets dynamiques.
AddThingToDynamicThingGroupsFailed exemple de saisie de journal
Cet exemple montre une entrée de journal correspondant à une erreur AddThingToDynamicThingGroupsFailed. Dans cet exemple, il TestThingrépondait aux critères pour figurer dans les groupes d'objets dynamiques répertoriés dansdynamicThingGroupNames, mais n'a pas pu être ajouté à ces groupes dynamiques, comme décrit dansreason.
{ "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." }
Outre lesAttributs communs CloudWatch des journaux, les entrées du AddThingToDynamicThingGroupsFailed journal contiennent les attributs suivants :
- dynamique ThingGroupNames
-
Tableau des groupes d’objets dynamiques auquel l’objet n'a pas pu être ajouté.
- raison
-
Raison pour laquelle l’objet n'a pas pu être ajouté aux groupes d’objets dynamiques.
- thingName
-
Nom de l’objet qui n'a pas pu être ajouté à un groupe d’objets dynamiques.
Entrées du journal d'indexation de la flotte
AWS IoT l'indexation de la flotte génère des entrées de journal pour les événements suivants.
NamedShadowCountForDynamicGroupQueryLimitExceeded entrée dans le journal
Un maximum de 25 ombres nommées par objet sont traitées pour les termes de requête qui ne sont pas spécifiques à une source de données dans les groupes dynamiques. Lorsque cette limite est dépassée pour un objet, le type d'NamedShadowCountForDynamicGroupQueryLimitExceededévénement est émis.
NamedShadowCountForDynamicGroupQueryLimitExceeded exemple de saisie de journal
Cet exemple montre une entrée de journal correspondant à une NamedShadowCountForDynamicGroupQueryLimitExceeded erreur. Dans cet exemple, tous les DynamicGroup résultats basés sur toutes les valeurs peuvent être inexacts, comme décrit dans le reason champ.
{ "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." }
Attributs communs CloudWatch des journaux
Toutes les entrées du journal CloudWatch Logs incluent les attributs suivants :
- accountId
-
Votre Compte AWS identifiant.
- eventType
-
Le type d'événement pour lequel le journal a été créé. La valeur du type d'événement dépend de l'événement qui a généré l'entrée de journal. Chaque description d'entrée de journal inclut la valeur de
eventTypepour cette entrée de journal. - logLevel
-
Le niveau de journalisation utilisé. Pour plus d’informations, consultez Niveaux de journalisation..
- status
-
Le statut d'une demande.
- timestamp
-
L'horodatage UTC lisible par l'homme du moment où le client s'est connecté à AWS IoT l’agent de messages.
- traceId
-
Un identifiant généré de façon aléatoire qui peut être utilisé pour mettre en corrélation tous les journaux pour une demande spécifique.