

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.

# Surveillance AWS IoT
<a name="monitoring_overview"></a>

La surveillance joue un rôle important dans le maintien de la fiabilité, de la disponibilité AWS IoT et des performances de vos AWS solutions.

Nous vous encourageons vivement à collecter des données de surveillance provenant de toutes les parties de votre AWS solution afin de faciliter le débogage d'une défaillance multipoint, le cas échéant. Commencez par créer un plan de surveillance qui répond aux questions suivantes. Si vous ne savez pas comment y répondre, vous pouvez continuer à [activer la journalisation](configure-logging.md) et établir vos lignes de base de performances.
+ Quels sont les objectifs de la surveillance ?
+ Quelles sont les ressources à surveiller ?
+ A quelle fréquence les ressources doivent-elles être surveillées ?
+ Quels outils de surveillance utiliser ?
+ Qui exécute les tâches de supervision ?
+ Qui doit être informé en cas de problème ?

L'étape suivante consiste à [activer la journalisation](configure-logging.md) et à établir une base de référence des AWS IoT performances normales dans votre environnement en mesurant les performances à différents moments et dans différentes conditions de charge. Pendant que vous surveillez AWS IoT, conservez les données de surveillance historiques afin de pouvoir les comparer aux données de performance actuelles. Cela vous aide à identifier les modèles de performances normaux et les anomalies de performances, et à élaborer des méthodes pour résoudre ces problèmes.

Pour établir vos performances de référence AWS IoT, vous devez d'abord surveiller ces indicateurs. Vous pouvez toujours surveiller plus de métriques ultérieurement.
+  [`PublishIn.Success`](metrics_dimensions.md#message-broker-metrics) 
+  [`PublishOut.Success`](metrics_dimensions.md#message-broker-metrics) 
+  [`Subscribe.Success`](metrics_dimensions.md#message-broker-metrics) 
+  [`Ping.Success`](metrics_dimensions.md#message-broker-metrics) 
+  [`Connect.Success`](metrics_dimensions.md#message-broker-metrics) 
+  [`GetThingShadow.Accepted`](metrics_dimensions.md#shadow-metrics) 
+  [`UpdateThingShadow.Accepted`](metrics_dimensions.md#shadow-metrics) 
+  [`DeleteThingShadow.Accepted`](metrics_dimensions.md#shadow-metrics) 
+  [`RulesExecuted`](metrics_dimensions.md#iot-metrics) 

Les rubriques de cette section peuvent vous aider à démarrer la journalisation et la surveillance de AWS IoT.

**Topics**
+ [Configuration de la AWS IoT journalisation](configure-logging.md)
+ [Surveillez les AWS IoT alarmes et les métriques à l'aide d'Amazon CloudWatch](monitoring-cloudwatch.md)
+ [Surveiller AWS IoT à l'aide CloudWatch des journaux](cloud-watch-logs.md)
+ [Importer les journaux côté appareil sur Amazon CloudWatch](upload-device-logs-to-cloudwatch.md)
+ [Journalisation des appels AWS IoT d'API à l'aide AWS CloudTrail](iot-using-cloudtrail.md)

# Configuration de la AWS IoT journalisation
<a name="configure-logging"></a>

Vous devez activer la journalisation à l'aide de la AWS IoT console, de la CLI ou de l'API avant de pouvoir surveiller et consigner AWS IoT l'activité. Vous pouvez configurer la journalisation à trois niveaux : AWS IoT au niveau du compte, au niveau de l'événement ou au niveau spécifique à la ressource. La journalisation au niveau des événements et spécifique aux ressources est disponible exclusivement avec la journalisation V2. Les clients utilisant la journalisation V1 doivent effectuer une migration vers la V2 pour accéder à ces fonctionnalités. Voir [les détails](https://docs.aws.amazon.com/iot/latest/developerguide/configure-logging.html#migration-v1-v2). 

Lorsque vous réfléchissez à la manière de configurer votre AWS IoT journalisation, la configuration de journalisation au niveau du compte détermine la manière dont AWS IoT l'activité sera enregistrée, sauf indication contraire. Pour commencer, vous souhaiterez peut-être obtenir des journaux détaillés dont le [niveau de journal](https://docs.aws.amazon.com/iot/latest/developerguide/configure-logging.html#log-level) par défaut est INFO ou DEBUG. Après avoir examiné les journaux initiaux, vous pouvez modifier le niveau de journal par défaut à un niveau moins détaillé, tel que WARN ou ERROR au niveau du compte ou de l'événement, et définir un niveau de journal plus détaillé spécifique aux ressources pour les ressources susceptibles de nécessiter une plus grande attention. Les niveaux de journal peuvent être modifiés quand vous le souhaitez. 

Cette rubrique traite de la connexion côté cloud. AWS IoT Pour plus d'informations sur la journalisation et la surveillance côté appareil, voir [Télécharger les journaux côté appareil vers. CloudWatch](https://docs.aws.amazon.com/iot/latest/developerguide/upload-device-logs-to-cloudwatch.html)

Pour plus d'informations sur la journalisation et AWS IoT Greengrass la surveillance, consultez la section [Connexion et surveillance AWS IoT Greengrass](https://docs.aws.amazon.com/greengrass/v2/developerguide/logging-and-monitoring.html). 

## Configuration de la connexion à la V2 AWS IoT
<a name="configuring-v2-logging"></a>

### Déterminer votre version de journalisation
<a name="determing-your-logging-version"></a>

L'[LoggingOptions API GetV2](https://docs.aws.amazon.com/iot/latest/apireference/API_GetV2LoggingOptions.html) renvoie un NotConfiguredException si la journalisation V2 n'est pas activée. Cette erreur se produit lorsque la journalisation V1 est utilisée ou qu'aucune journalisation n'a été configurée. 

### Comprendre les fonctionnalités de journalisation de la version
<a name="understanding-v2-logging-features"></a>

La journalisation V2 fournit deux fonctionnalités clés : la journalisation au niveau des événements et la journalisation spécifique aux ressources. La journalisation au niveau des événements permet une configuration de journalisation ciblée avec des niveaux de journalisation et des destinations de groupes de CloudWatch journaux personnalisables. La journalisation spécifique aux ressources vous permet de filtrer les journaux par groupe d'objets, IP source, ID client ou ID principal. Ensemble, ces fonctionnalités fournissent un contrôle granulaire et une visibilité complète des opérations IoT, améliorant ainsi la consultabilité des journaux et réduisant les coûts en éliminant les activités de journalisation inutiles. 

### Migration de la version 1 vers la version 2
<a name="migration-v1-v2"></a>

Vous pouvez migrer vers la journalisation V2 à l'aide de l'LoggingOptions API SetV2 via la AWS [CLI](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/set-v2-logging-options.html) ou le SDK. Après la migration, achemine AWS IoT automatiquement tous les journaux vers le groupe de CloudWatch journaux « AWSIot LogsV2 ». Important : si vos applications ou ressources en aval consomment des informations provenant des « AWSIot journaux », mettez-les à jour pour utiliser le chemin du groupe de journaux correspondant. 

## Configurer le rôle et la stratégie de journalisation
<a name="configure-logging-role-and-policy"></a>

 Avant de pouvoir activer la connexion AWS IoT, vous devez créer un rôle IAM et une politique autorisant l'enregistrement des AWS IoT activités des AWS IoT journaux dans les groupes de CloudWatch journaux en votre nom. Vous pouvez également générer un rôle IAM avec les politiques nécessaires dans la [section Logs de la AWS IoT console](https://console.aws.amazon.com/iot/home#/settings/logging). 

**Note**  
Avant d'activer la AWS IoT journalisation, assurez-vous de bien comprendre les autorisations d'accès aux CloudWatch journaux. Les utilisateurs ayant accès aux CloudWatch journaux peuvent consulter les informations de débogage de vos appareils. Pour plus d'informations, consultez [Authentification et contrôle d'accès pour Amazon CloudWatch Logs](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/auth-and-access-control-cw.html).  
Si vous vous attendez à des modèles de trafic élevés en AWS IoT Core raison des tests de charge, pensez à désactiver la journalisation de l'IoT pour éviter les ralentissements. Si un trafic élevé est détecté, notre service peut désactiver la connexion à votre compte.

Ce qui suit montre comment créer un rôle et une politique de journalisation pour les AWS IoT Core ressources.

### Création d'un rôle de journalisation
<a name="create-logging-role"></a>

Pour créer un rôle de journalisation, ouvrez le [hub Roles de la console IAM](https://console.aws.amazon.com/iam/home#/roles) et choisissez **Create role**. 

1. Sous **Sélectionner une entité approuvée**, choisissez **AWS Service **. Choisissez ensuite **IoT** sous **Cas d'utilisation**. Si vous ne voyez pas **IoT**, saisissez et recherchez **IoT** dans le menu déroulant **Cas d'utilisation pour d'autres AWS services :**. Sélectionnez **Suivant**. 

1. Sur la page **Ajouter des autorisations**, vous verrez les politiques automatiquement associées au rôle de service. Choisissez **Suivant**. 

1. Sur la page **Name, review, and Create (Créer un rôle et vérifier)**, saisissez un **Role name (Nom du rôle)** et**Role description (Description de Role)** pour le role, puis **Create role(Créer un rôle)**. 

### Stratégie de rôle de journalisation
<a name="logging-role-policy"></a>

Les documents de politique suivants fournissent la politique de rôle et la politique de confiance qui AWS IoT permettent de soumettre des entrées de journal CloudWatch en votre nom. Si vous configurez la journalisation au niveau des événements avec un groupe de CloudWatch journaux personnalisé, vous devez mettre à jour la politique de rôle pour inclure l'ARN de la ressource personnalisée. 

Si vous êtes également autorisé AWS IoT Core for LoRaWAN à soumettre des entrées de journal, vous verrez un document de politique créé pour vous qui enregistre les deux activités. 

**Note**  
Ces documents ont été créés pour vous lorsque vous avez créé le rôle de journalisation. Les documents contiennent des variables * `${partition}`, ** `${region}` *,* `${accountId}` *, et que vous devez remplacer par vos valeurs.  
Remplacez la partition par la partition de la région.
Remplacez la région par la AWS région que vous utilisez. Assurez-vous d'utiliser la même AWS région que celle que vous avez utilisée pour configurer la AWS CLI sur votre appareil.
Remplacez account-id par votre identifiant de AWS compte.

Politique de rôle :

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "logs:CreateLogGroup",
                "logs:CreateLogStream",
                "logs:PutLogEvents",
                "logs:PutMetricFilter",
                "logs:PutRetentionPolicy",
                "iot:GetLoggingOptions",
                "iot:SetLoggingOptions",
                "iot:SetV2LoggingOptions",
                "iot:GetV2LoggingOptions",
                "iot:SetV2LoggingLevel",
                "iot:ListV2LoggingLevels",
                "iot:DeleteV2LoggingLevel"
            ],
            "Resource": [
                "arn:aws:logs:us-east-1:123456789012:log-group:AWSIotLogsV2:*"
            ]
        }
    ]
}
```

Politique de confiance permettant de ne consigner que AWS IoT Core l'activité :

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
        {
            "Sid": "",
            "Effect": "Allow",
            "Principal": {
                "Service": "iot.amazonaws.com"
        },
            "Action": "sts:AssumeRole"
        }
    ]
}
```

AWS IoT La journalisation peut ne pas publier la journalisation dans CloudWatch Logs en raison d'autorisations de rôle IAM insuffisantes. Dans ce cas, vérifiez les [métriques de CloudWatch journalisation](https://docs.aws.amazon.com/iot/latest/developerguide/metrics_dimensions.html#logging-metrics) pour étudier et résoudre les défaillances.

## Configurer la connexion dans AWS IoT (console)
<a name="configure-logging-console"></a>

Cette section décrit comment configurer la AWS IoT journalisation à l'aide de la AWS IoT console. Vous pouvez configurer une journalisation au niveau du compte, au niveau des événements et des ressources spécifiques.

**Pour configurer la AWS IoT journalisation :**

1. Connectez-vous à la AWS IoT console. Pour de plus amples informations, veuillez consulter [Ouvrez la AWS IoT console](setting-up.md#iot-console-signin).

1. Dans le volet de navigation de gauche, choisissez **Logs** (auparavant une section sous Paramètres). 

1. Configurez la journalisation au niveau du compte : la journalisation au niveau du compte s'applique à l'ensemble de votre AWS IoT parc (appareils ou terminaux), sauf si elle est remplacée par des paramètres spécifiques aux événements ou aux ressources.

   1. Sous Journalisation au niveau du compte, sélectionnez **Gérer la journalisation au niveau du compte pour effectuer des mises à jour**. 

   1. Cochez la case « Activer la journalisation » pour commencer à envoyer les journaux à CloudWatch. Lorsque « Activer la journalisation » n'est pas cochée, AWS IoT aucun CloudWatch journal n'est envoyé aux groupes de journaux, quelles que soient les configurations de journalisation au niveau des événements ou au niveau des ressources. 

   1. Sous **Rôle de journal IAM**, sélectionnez un rôle existant dans la liste déroulante. Vous pouvez **afficher les détails des rôles** pour vérifier les autorisations des rôles. Vous pouvez également sélectionner **Créer un nouveau rôle** pour configurer un nouveau rôle IAM. Le rôle de journalisation fournit des politiques qui AWS IoT permettent de soumettre des entrées de journal CloudWatch en votre nom. Si vous configurez la journalisation au niveau des événements avec un groupe de CloudWatch journaux personnalisé, vous devez mettre à jour la politique de rôle afin d'inclure l'ARN de ce groupe de journaux. 

   1. Choisissez le **niveau de journal par défaut** qui correspond au [niveau de détail](https://docs.aws.amazon.com/iot/latest/developerguide/configure-logging.html#log-level) des entrées de journal que vous souhaitez voir apparaître dans les CloudWatch journaux. Remarque : le niveau de journalisation « DEBUG » fournit le plus de détails mais augmente CloudWatch les coûts. CloudWatch les destinations des groupes de journaux ne peuvent pas être configurées au niveau du compte. Vous pouvez toutefois spécifier des groupes de journaux personnalisés pour des types d'événements individuels, comme décrit dans la section suivante. 

   1. Choisissez **Mettre à jour la journalisation** pour enregistrer vos modifications. 

1. La journalisation au niveau des événements vous permet de capturer de manière sélective les journaux des événements pertinents et de les diriger vers des groupes de CloudWatch journaux dédiés. Cela vous donne la flexibilité d'organiser les journaux par cas d'utilisation pour une meilleure visibilité, de les partager avec différents publics et de réduire les CloudWatch coûts en activant les journaux et en définissant des niveaux de journalisation en fonction de la criticité des événements. 

   Configurer la **journalisation au niveau des événements : la journalisation** au niveau des événements capture des AWS IoT événements spécifiques, tels que les tentatives d'authentification des clients. Ces paramètres remplacent la journalisation au niveau du compte.

   1. Dans la section **Journalisation au niveau des événements, sélectionnez Gérer la journalisation au** **niveau des événements pour effectuer des mises à jour**. 

   1. Par défaut, les types d'événements héritent de la configuration de journalisation au niveau du compte. Remarque : Lorsque la journalisation spécifique à une ressource est configurée, elle remplace les paramètres au niveau du compte et de l'événement. 

   1. Pour modifier les paramètres des événements individuels, cliquez sur la valeur dans la ligne d'événement correspondante. Vous pouvez ajuster à la fois le niveau du journal et la destination du groupe de CloudWatch journaux. Lorsque vous spécifiez une destination de groupe de CloudWatch journaux personnalisée, vous devez vérifier que la politique de rôle IAM inclut les autorisations pour le nouveau groupe de journaux. L'échec de la mise à jour de la politique de rôle AWS IoT empêchera l'écriture de journaux dans le groupe de journaux personnalisé. Après avoir effectué votre sélection, cliquez sur le crochet pour confirmer votre choix. La colonne **« Est modifié » affichera « Oui »** pour indiquer les modifications en attente. 

   1. Cliquez sur **Mettre à jour la journalisation** pour appliquer vos modifications ou choisissez **Annuler pour annuler**. 

1. Configurer les remplacements spécifiques aux ressources : les remplacements spécifiques aux ressources appliquent un paramètre de journalisation aux ressources sélectionnées. Une ressource peut être un groupe d'objets, une adresse IP source, un identifiant client ou un identifiant principal. La configuration de journalisation spécifique aux ressources remplace les paramètres au niveau du compte et au niveau des événements. Lorsqu'il est activé, il génère des journaux pour tous les types d'événements au niveau de journalisation configuré pour les ressources spécifiées. Par exemple, vous pouvez définir la journalisation au niveau du débogage pour un objet spécifique tout en conservant la journalisation au niveau des informations pour tous les autres objets. 

   1. Sélectionnez **Ajouter des remplacements spécifiques aux ressources** dans la section Dérogations spécifiques aux ressources. 

   1. Choisissez une cible de journal : groupe d'objets, IP source, ID client ou ID principal. 

   1. Entrez la valeur cible du journal correspondante pour le type de cible que vous avez sélectionné. 

   1. Sélectionnez le niveau de journal souhaité dans le menu déroulant de la section Niveau de journal spécifique à la ressource. 

   1. Cliquez sur **Soumettre** pour ajouter la dérogation ou sur **Annuler pour annuler** les modifications. 

   1. Pour modifier une dérogation spécifique à une ressource existante, cochez la case à côté de la ressource et cliquez sur « Supprimer » pour supprimer la dérogation ou sur « Modifier » pour la modifier. 

Une fois que vous avez activé la journalisation, visitez [Afficher AWS IoT les journaux dans la CloudWatch console](cloud-watch-logs.md#viewing-logs) pour en savoir plus sur l'affichage des entrées du journal.

## Configuration de la connexion au niveau du compte et de l'événement AWS IoT (CLI)
<a name="global-logging-cli"></a>

Cette section décrit comment configurer la journalisation globale pour à l'aide AWS IoT de la CLI.

Vous pouvez éventuellement configurer la journalisation au niveau des événements. La journalisation au niveau des événements capture les informations de journalisation au niveau des événements, telles que les événements d'authentification et d'autorisation ou de création de certificats. Vous pouvez personnaliser à la fois le niveau du journal et les destinations des groupes de CloudWatch journaux au niveau des événements. La journalisation au niveau des événements fonctionne à un niveau plus ciblé que la journalisation au niveau du compte et remplace donc les paramètres de journalisation au niveau du compte. Cette approche hiérarchique vous permet de gérer différentes stratégies de journalisation pour différents types d'événements en fonction de leur importance opérationnelle et de leurs coûts. 

**Note**  
Vous avez besoin du nom de ressource Amazon (ARN) du rôle que vous souhaitez utiliser. Si vous devez créer un rôle à utiliser pour la journalisation, veuillez consulter [Création d'un rôle de journalisation](#create-logging-role) avant de continuer. Lorsque vous spécifiez un groupe de CloudWatch journaux personnalisé pour un type d'événement, assurez-vous que votre rôle de journalisation dispose des autorisations requises pour le groupe de journaux cible.   
 Le principal utilisé pour appeler l'API doit avoir [Transmission des autorisations de rôle](pass-role.md) pour votre rôle de journalisation. 

Vous pouvez également exécuter cette procédure avec l'API en utilisant les méthodes de l' AWS API qui correspondent aux commandes CLI présentées ici. 

**Pour utiliser la CLI afin de configurer la journalisation par défaut pour AWS IoT**

1. Utilisez la commande [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/set-v2-logging-options.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/set-v2-logging-options.html) pour définir les options de journalisation de votre compte.

   ```
   aws iot set-v2-logging-options \
       --event-configurations event-configuration-list \
       --role-arn logging-role-arn \
       --default-log-level log-level
   ```

   où :  
**--role-arn**  
Le rôle ARN qui accorde AWS IoT l'autorisation d'écrire dans vos CloudWatch journaux dans Logs. La configuration role-ARN est requise pour la configuration initiale.   
**--default-log-level**  
Le [niveau de journalisation](#log-level) à utiliser. Les valeurs valides sont : `ERROR``WARN`,`INFO`,`DEBUG`, ou`DISABLED`. Default-log-levelune configuration est requise pour la configuration initiale.   
**--no-disable-all-logs**  
Paramètre facultatif qui active tous les AWS IoT enregistrements. Utilisez ce paramètre pour activer la journalisation lorsqu'elle est désactivée.  
 **--disable-all-logs**   
Paramètre facultatif qui désactive toute AWS IoT journalisation. Utilisez ce paramètre pour désactiver la journalisation lorsqu'elle est activée.  
**--event-configurations**  
Ce paramètre est facultatif et vous permet de personnaliser les paramètres de journalisation pour des types d'événements individuels :  
   + EventType : type d'événement qui remplace le paramètre au niveau du compte
   + LogLevel : remplacez le paramètre au niveau du compte par DEBUG, INFO, ERROR, WARN ou DISABLED
   + LogDestination : Spécifiez un groupe de CloudWatch journaux personnalisé pour la livraison des journaux

   Vous pouvez configurer le niveau de journalisation et la destination du journal indépendamment pour chaque type d'événement. S'ils ne sont pas spécifiés, les événements hériteront des paramètres au niveau du compte

   ```
   aws iot set-v2-logging-options \
       --event-configurations "[{\"eventType\":\"Publish-In\",\"logLevel\":\"INFO\",\"logDestination\":\"examplePublishInLogGroup\"}]"
   ```

1. Utilisez la commande [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/get-v2-logging-options.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/get-v2-logging-options.html) pour obtenir vos options de journalisation actuelles.

   ```
   aws iot get-v2-logging-options \
       --verbose
   ```

   où :  
**--verbose**  
Paramètre facultatif qui vous permet de récupérer tous les types d'événements et leurs configurations. 

Une fois que vous avez activé la journalisation, visitez [Afficher AWS IoT les journaux dans la CloudWatch console](cloud-watch-logs.md#viewing-logs) pour en savoir plus sur l'affichage des entrées du journal.

**Note**  
AWS IoT continue de prendre en charge les anciennes commandes (**set-logging-options**et**get-logging-options**) permettant de configurer et d'obtenir une connexion globale sur votre compte. Lorsque ces commandes sont utilisées, les journaux obtenus contiennent du texte brut et non des charges de travail JSON et la latence de journalisation est généralement plus élevée. Aucune amélioration supplémentaire ne sera apportée à l'implémentation de ces anciennes commandes. Nous vous recommandons d'utiliser les [versions « v2 »](https://docs.aws.amazon.com/iot/latest/developerguide/configure-logging.html#migration-v1-v2) pour configurer vos options de journalisation et, dans la mesure du possible, de modifier les anciennes applications qui utilisent les anciennes versions.

## Configurer les remplacements spécifiques aux ressources dans (CLI) AWS IoT
<a name="fine-logging-cli"></a>

Cette section décrit comment configurer les remplacements spécifiques aux ressources à l'aide de la AWS IoT CLI. Les remplacements spécifiques aux ressources vous permettent de spécifier un niveau de journalisation pour une ressource spécifique identifiée par un groupe d'objets, un identifiant client, une adresse IP source ou un identifiant principal. Lorsque la journalisation spécifique aux ressources est activée, elle remplace les paramètres au niveau du compte et au niveau des événements. Tous les types d'événements génèrent des journaux pour la ressource spécifiée au niveau de journalisation configuré, même si ces événements sont désactivés dans les configurations au niveau des événements. 

Les groupes d'objets peuvent contenir d'autres groupes d'objets pour créer une relation hiérarchique. Cette procédure décrit comment configurer la journalisation d'un seul groupe d'objets. Vous pouvez appliquer cette procédure au groupe d'objets parent dans une hiérarchie pour configurer la journalisation de tous les groupes d'objets de la hiérarchie. Vous pouvez également appliquer cette procédure à un groupe d'objets enfant pour remplacer la configuration de journalisation de son parent.

Un objet peut être membre d'un groupe d'objets. Cette appartenance permet à l'objet d'hériter des configurations, des politiques et des paramètres appliqués au groupe d'objets. Les groupes d'objets sont utilisés pour gérer et appliquer des paramètres à plusieurs éléments collectivement, plutôt que de traiter chaque élément individuellement. Lorsque votre ID client correspond au nom de l'objet, la session client est AWS IoT Core automatiquement associée à la ressource d'objet correspondante. Cela permet à la session client d'hériter des configurations et des paramètres appliqués aux groupes d'objets auxquels appartient l'objet, y compris les niveaux de journalisation. Si votre identifiant client ne correspond pas au nom de l'objet, vous pouvez activer la pièce jointe exclusive pour établir l'association. Pour plus d’informations, consultez [Associer un AWS IoT objet à une connexion client MQTT](exclusive-thing.md).

Outre les groupes d'objets, vous pouvez également enregistrer des cibles telles que l'ID client, l'IP source et l'ID principal d'un appareil.

**Note**  
Vous avez besoin du nom de ressource Amazon (ARN) du rôle que vous souhaitez utiliser. Si vous devez créer un rôle à utiliser pour la journalisation, veuillez consulter [Création d'un rôle de journalisation](#create-logging-role) avant de continuer.  
Le principal utilisé pour appeler l'API doit avoir [Transmission des autorisations de rôle](pass-role.md) pour votre rôle de journalisation. 

Vous pouvez également exécuter cette procédure avec l'API en utilisant les méthodes de l' AWS API qui correspondent aux commandes CLI présentées ici. 

**Pour utiliser la CLI afin de configurer des remplacements spécifiques aux ressources pour AWS IoT**

1. Activez la journalisation au niveau du compte avant de configurer la journalisation spécifique aux ressources à l'aide de la commande suivante : commande aws iot set-v2-logging-options

1. Utilisez la [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/set-v2-logging-level.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/set-v2-logging-level.html)commande pour configurer les remplacements spécifiques aux ressources. Consultez l'exemple suivant pour la configuration des groupes d'objets :

   ```
   aws iot set-v2-logging-level \
                 --log-target targetType=THING_GROUP,targetName=thing_group_name \
                 --log-level log_level
   ```  
**--log-target**  
Type et nom de la ressource pour laquelle vous configurez la journalisation. La `targetType` valeur doit être l'une des suivantes : `THING_GROUP` \$1 `CLIENT_ID` \$1 `SOURCE_IP` \$1`PRINCIPAL_ID`. La valeur du paramètre log-target peut être du texte, comme indiqué dans l'exemple de commande précédent, ou une chaîne JSON, telle que l'exemple suivant.  

   ```
   aws iot set-v2-logging-level \
                 --log-target '{"targetType": "THING_GROUP","targetName": "thing_group_name"}' \
                 --log-level log_level
   ```  
**--log-level**  
Le niveau de journalisation utilisé lors de la génération de journaux pour la ressource spécifiée. Les valeurs valides sont : **DEBUG**, **INFO**, **ERROR**, **WARN** et **DISABLED**.

1. Utilisez la commande [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/list-v2-logging-levels.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/list-v2-logging-levels.html) pour répertorier les niveaux de journalisation actuellement configurés.

   ```
   aws iot list-v2-logging-levels
   ```

1. Utilisez la commande [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/delete-v2-logging-level.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iot/delete-v2-logging-level.html) pour supprimer un niveau de journalisation spécifique à la ressource, tel que les exemples suivants.

   ```
   aws iot delete-v2-logging-level \
                 --target-type "THING_GROUP" \
                 --target-name "thing_group_name"
   ```

   ```
   aws iot delete-v2-logging-level \
                 --target-type=CLIENT_ID 
                 --target-name=ClientId1
   ```  
**--target-type**  
La `target-type` valeur doit être l'une des suivantes : `THING_GROUP` \$1 `CLIENT_ID` \$1 `SOURCE_IP` \$1`PRINCIPAL_ID`.  
**--target-name**  
Nom du groupe d'objets pour lequel le niveau de journalisation doit être supprimé.

## Niveaux de journalisation.
<a name="log-level"></a>

Ces niveaux de journal déterminent les événements qui sont consignés et s'appliquent aux niveaux de journal par défaut et spécifiques aux ressources.

ERROR  
Toute erreur qui entraîne l'échec d'une opération.  
Exemple : échec de l'authentification de l'appareil en raison de l'expiration du certificat.  
Les journaux contiennent uniquement des informations ERROR.

WARN  
Tout ce qui peut éventuellement entraîner des incohérences dans le système, mais qui n'entraîne pas nécessairement l'échec de l'opération.  
Exemple : approche de la limite de débit des messages.  
Les journaux contiennent des informations ERROR et WARN.

INFO  
Informations générales sur le flux des objets.  
Exemple : un client s'est inscrit avec succès à un sujet MQTT.  
Les journaux contiennent des informations INFO, ERROR et WARN.

DEBUG  
Informations qui peuvent être utiles lors du débogage d'un problème.  
Exemple : IoT Rules Engine a détecté un message publié dans le thème des règles « rule/test » et a démarré son exécution avec succès. La règle est configurée avec RepublishAction.  
Les journaux contiennent des informations DEBUG, INFO, ERROR et WARN.

DISABLED  
Toute la journalisation est désactivée.

# Surveillez les AWS IoT alarmes et les métriques à l'aide d'Amazon CloudWatch
<a name="monitoring-cloudwatch"></a>

Vous pouvez surveiller AWS IoT l'utilisation CloudWatch, qui collecte et traite les données brutes sous forme de métriques lisibles AWS IoT en temps quasi réel. Ces statistiques sont enregistrées pour une durée de deux semaines et, par conséquent, vous pouvez accéder aux informations historiques et acquérir un meilleur point de vue de la façon dont votre service ou application web s'exécute. Par défaut, les données AWS IoT métriques sont envoyées automatiquement CloudWatch à des intervalles d'une minute. Pour plus d'informations, consultez [Que sont Amazon CloudWatch, Amazon CloudWatch Events et Amazon CloudWatch Logs ?](https://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/WhatIsCloudWatch.html) dans le *guide de CloudWatch l'utilisateur Amazon*. 

## Utilisation de AWS IoT métriques
<a name="how_to_use_metrics"></a>

Les statistiques rapportées par AWS IoT fournissent des informations que vous pouvez analyser de différentes manières. Les cas d'utilisation suivants sont basés sur un scénario où vous avez dix objets qui se connectent à Internet une fois par jour. Chaque jour :
+ Dix objets se connectent AWS IoT à peu près en même temps.
+ Chaque objet s'abonne à un filtre de rubrique, puis attend une heure avant de déconnecter. Au cours de cette période, les objets communiquent entre eux pour en savoir plus sur l'état du monde.
+ Chaque objet publie sa perception, d'après les données qu'il vient de détecter avec `UpdateThingShadow`. 
+ Chaque objet se déconnecte de. AWS IoT

Pour vous aider à démarrer, ces rubriques explorent certaines des questions que vous pourriez avoir.
+  [Comment puis-je être informé si mes objets ne se connectent pas chaque jour ?](creating_alarms.md#how_to_detect_connection_failures) 
+  [Comment puis-je être informé si mes objets ne publient pas de données chaque jour ?](creating_alarms.md#how_to_detect_publish_failures) 
+  [Comment puis-je être informé si les mises à jour de mon thing shadow sont rejetées chaque jour ?](creating_alarms.md#detect_rejected_updates) 
+  [Comment créer une CloudWatch alarme pour Jobs ?](creating_alarms.md#cw-jobs-alarms) 

**Topics**
+ [Utilisation de AWS IoT métriques](#how_to_use_metrics)
+ [Création d' CloudWatch alarmes à surveiller AWS IoT](creating_alarms.md)
+ [AWS IoT métriques et dimensions](metrics_dimensions.md)

# Création d' CloudWatch alarmes à surveiller AWS IoT
<a name="creating_alarms"></a>

Vous pouvez créer une CloudWatch alarme qui envoie un message Amazon SNS lorsque l'alarme change d'état. Une alarme surveille une métrique sur la période que vous spécifiez. Lorsque la valeur de la métrique dépasse un seuil donné sur un certain nombre de périodes, une ou plusieurs actions sont effectuées. L'action est une notification envoyée à une rubrique d’Amazon SNS ou à une politique AutoScaling. Les alarmes déclenchent des actions uniquement pour les changements d'état prolongés. CloudWatch les alarmes ne déclenchent pas d'actions simplement parce qu'elles se trouvent dans un état particulier ; cet état doit avoir changé et être maintenu pendant un certain nombre de périodes.

**Topics**
+ [Comment puis-je être informé si mes objets ne se connectent pas chaque jour ?](#how_to_detect_connection_failures)
+ [Comment puis-je être informé si mes objets ne publient pas de données chaque jour ?](#how_to_detect_publish_failures)
+ [Comment puis-je être informé si les mises à jour du shadow de mon objet sont rejetées chaque jour ?](#detect_rejected_updates)
+ [Comment puis-je créer une CloudWatch alarme pour les offres d'emploi ?](#cw-jobs-alarms)

 Vous pouvez voir tous les indicateurs que les CloudWatch alarmes peuvent surveiller[AWS IoT métriques et dimensions](metrics_dimensions.md). 

## Comment puis-je être informé si mes objets ne se connectent pas chaque jour ?
<a name="how_to_detect_connection_failures"></a>

1. Création d’une rubrique Amazon SNS nommée `things-not-connecting-successfully`, et enregistrement de son Nom de Ressource Amazon (ARN). Cette procédure fera référence à l'ARN de votre rubrique en tant que ` sns-topic-arn `. 

   Pour de plus amples informations sur la création d'une notification, veuillez consulter [Démarrer avec avec Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/sns-getting-started.html). 

1. Créez l’alerte.

   ```
   aws cloudwatch put-metric-alarm \
       --alarm-name ConnectSuccessAlarm \
       --alarm-description "Alarm when my Things don't connect successfully" \
       --namespace AWS/IoT \
       --metric-name Connect.Success \
       --dimensions Name=Protocol,Value=MQTT \
       --statistic Sum \
       --threshold 10 \
       --comparison-operator LessThanThreshold \
       --period 86400 \
       --evaluation-periods 1 \
       --alarm-actions sns-topic-arn
   ```

1. Testez l’alarme.

   ```
   aws cloudwatch set-alarm-state --alarm-name ConnectSuccessAlarm --state-reason "initializing" --state-value OK
   ```

   ```
   aws cloudwatch set-alarm-state --alarm-name ConnectSuccessAlarm --state-reason "initializing" --state-value ALARM
   ```

1. Vérifiez que l'alarme s'affiche dans votre [console CloudWatch ](https://console.aws.amazon.com/cloudwatch). 

## Comment puis-je être informé si mes objets ne publient pas de données chaque jour ?
<a name="how_to_detect_publish_failures"></a>

1. Créez une rubrique Amazon SNS nommée `things-not-publishing-data`, et enregistrez son Nom de Ressource Amazon (ARN). Cette procédure fera référence à l'ARN de votre rubrique en tant que ` sns-topic-arn `. 

   Pour de plus amples informations sur la création d'une notification, veuillez consulter [Démarrer avec avec Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/sns-getting-started.html). 

1. Créez l’alerte.

   ```
   aws cloudwatch put-metric-alarm \
       --alarm-name PublishInSuccessAlarm\
       --alarm-description "Alarm when my Things don't publish their data \
       --namespace AWS/IoT \
       --metric-name PublishIn.Success \
       --dimensions Name=Protocol,Value=MQTT \
       --statistic Sum \
       --threshold 10 \
       --comparison-operator LessThanThreshold \
       --period 86400 \
       --evaluation-periods 1 \
       --alarm-actions sns-topic-arn
   ```

1. Testez l’alarme.

   ```
   aws cloudwatch set-alarm-state --alarm-name PublishInSuccessAlarm --state-reason "initializing" --state-value OK
   ```

   ```
   aws cloudwatch set-alarm-state --alarm-name PublishInSuccessAlarm --state-reason "initializing" --state-value ALARM
   ```

1. Vérifiez que l'alarme s'affiche dans votre [console CloudWatch ](https://console.aws.amazon.com/cloudwatch). 

## Comment puis-je être informé si les mises à jour du shadow de mon objet sont rejetées chaque jour ?
<a name="detect_rejected_updates"></a>

1. Créez une rubrique Amazon SNS nommée `things-shadow-updates-rejected`, et enregistrez son Nom de Ressource Amazon (ARN). Cette procédure fera référence à l'ARN de votre rubrique en tant que ` sns-topic-arn `. 

   Pour de plus amples informations sur la création d'une notification, veuillez consulter [Démarrer avec avec Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/sns-getting-started.html). 

1. Créez l’alerte.

   ```
   aws cloudwatch put-metric-alarm \
       --alarm-name UpdateThingShadowSuccessAlarm \
       --alarm-description "Alarm when my Things Shadow updates are getting rejected" \
       --namespace AWS/IoT \
       --metric-name UpdateThingShadow.Success \
       --dimensions Name=Protocol,Value=MQTT \
       --statistic Sum \
       --threshold 10 \
       --comparison-operator LessThanThreshold \
       --period 86400 \
       --unit Count \
       --evaluation-periods 1 \
       --alarm-actions sns-topic-arn
   ```

1. Testez l’alarme.

   ```
   aws cloudwatch set-alarm-state --alarm-name UpdateThingShadowSuccessAlarm --state-reason "initializing" --state-value OK
   ```

   ```
   aws cloudwatch set-alarm-state --alarm-name UpdateThingShadowSuccessAlarm --state-reason "initializing" --state-value ALARM
   ```

1. Vérifiez que l'alarme s'affiche dans votre [console CloudWatch ](https://console.aws.amazon.com/cloudwatch). 

## Comment puis-je créer une CloudWatch alarme pour les offres d'emploi ?
<a name="cw-jobs-alarms"></a>

Le service Jobs fournit des CloudWatch statistiques qui vous permettent de suivre vos offres d'emploi. Vous pouvez créer des CloudWatch alarmes pour les surveiller[Métriques de tâches](metrics_dimensions.md#jobs-metrics).

La commande suivante crée une CloudWatch alarme pour surveiller le nombre total d'exécutions de tâches ayant échoué pour Job *SampleOTAJob* et vous avertit lorsque plus de 20 exécutions de tâches ont échoué. L'alarme surveille la métrique Jobs `FailedJobExecutionTotalCount` en vérifiant la valeur signalée toutes les 300 secondes. Il est activé lorsqu'une seule valeur signalée est supérieure à 20, ce qui signifie qu'il y a eu plus de 20 exécutions de travail ayant échoué depuis le début de la tâche. Lorsque l'alarme s'éteint, elle envoie une notification à la rubrique Amazon SNS fournie.

```
aws cloudwatch put-metric-alarm \
    --alarm-name TotalFailedJobExecution-SampleOTAJob \
    --alarm-description "Alarm when total number of failed job execution exceeds the threshold for SampleOTAJob" \
    --namespace AWS/IoT \
    --metric-name FailedJobExecutionTotalCount \
    --dimensions Name=JobId,Value=SampleOTAJob \
    --statistic Sum \
    --threshold 20 \
    --comparison-operator GreaterThanThreshold \
    --period 300 \
    --unit Count \
    --evaluation-periods 1 \
    --alarm-actions arn:aws:sns:<AWS_REGION>:<AWS_ACCOUNT_ID>:SampleOTAJob-has-too-many-failed-job-ececutions
```

La commande suivante crée une CloudWatch alarme pour surveiller le nombre d'échecs d'exécution de tâches pour Job *SampleOTAJob* au cours d'une période donnée. Vous êtes ensuite averti quand plus de cinq exécutions de travail ont échoué au cours de cette période. L'alarme surveille la métrique Jobs `FailedJobExecutionCount` en vérifiant la valeur signalée toutes les 3600 secondes. Il est activé lorsqu'une seule valeur signalée est supérieure à 5, ce qui signifie qu'il y a eu plus de 5 exécutions de travail ayant échoué au cours de la dernière heure. Lorsque l'alarme s'éteint, elle envoie une notification à la rubrique Amazon SNS fournie.

```
aws cloudwatch put-metric-alarm \
    --alarm-name FailedJobExecution-SampleOTAJob \
    --alarm-description "Alarm when number of failed job execution per hour exceeds the threshold for SampleOTAJob" \
    --namespace AWS/IoT \
    --metric-name FailedJobExecutionCount \
    --dimensions Name=JobId,Value=SampleOTAJob \
    --statistic Sum \
    --threshold 5 \
    --comparison-operator GreaterThanThreshold \
    --period 3600 \
    --unit Count \
    --evaluation-periods 1 \
    --alarm-actions arn:aws:sns:<AWS_REGION>:<AWS_ACCOUNT_ID>:SampleOTAJob-has-too-many-failed-job-ececutions-per-hour
```

# AWS IoT métriques et dimensions
<a name="metrics_dimensions"></a>

Lorsque vous interagissez avec AWS IoT, le service envoie des métriques et des dimensions à CloudWatch chaque minute. Vous pouvez utiliser AWS IoT, utiliser la CloudWatch console ou AWS CLI consulter ces métriques.

Pour consulter les métriques à l'aide de la CloudWatch console, [CloudWatch ouvrez-la](https://console.aws.amazon.com/cloudwatch). Dans le panneau de navigation, choisissez **Metrics** (Métriques), puis choisissez **All metrics** (Toutes les métriques). Dans l'onglet **Parcourir**, recherchez AWS IoT pour afficher la liste des mesures. Les métriques sont d’abord regroupées par espace de noms de service, puis par les différentes combinaisons de dimension au sein de chaque espace de noms.

Pour afficher les métriques à l'aide de AWS CLI, exécutez la commande suivante.

```
1. aws cloudwatch list-metrics --namespace "AWS/IoT"
```

**Topics**
+ [AWS IoT métriques](#iot-metrics)
+ [AWS IoT Core métriques du fournisseur d'informations d'identification](#credential-provider-metrics)
+ [Métriques d’authentification](#authentication-metrics)
+ [Métriques d'agrafage OCSP du certificat de serveur](#server-ocsp-metrics)
+ [Métriques de règle](#rulemetrics)
+ [Métriques d'action de règle](#rule-action-metrics)
+ [Métriques spécifiques à l'action HTTP](#http-action-metrics)
+ [Métriques d'agent de messages](#message-broker-metrics)
+ [Métriques de shadow d'appareil](#shadow-metrics)
+ [Métriques de journalisation](#logging-metrics)
+ [Métriques de tâches](#jobs-metrics)
+ [Métriques d'audit Device Defender](#device-defender-audit-metrics)
+ [Métriques de détection Device Defender](#device-defender-detect-metrics)
+ [Métriques de mise en service d'appareils](#provisioning-metrics)
+ [LoRaMétriques WAN](#lorawan-metrics)
+ [Métriques d'indexation de la flotte](#fleet-indexing-metrics)
+ [Dimensions pour les métriques](#aws-iot-metricdimensions)

## AWS IoT métriques
<a name="iot-metrics"></a>


| Métrique | Description | 
| --- | --- | 
|   `AddThingToDynamicThingGroupsFailed`   |  Nombre d'événements d'échec associés à l'ajout d'un objet à un groupe d’objets dynamiques. La dimension `DynamicThingGroupName` contient le nom des groupes dynamiques qui n'ont pas pu ajouter des objets.  | 
|   `NumLogBatchesFailedToPublishThrottled`   |  Le lot singulier d'événements de journaux qui ne s'est pas publié en raison d'erreurs de limitation.  | 
|   `NumLogEventsFailedToPublishThrottled`   |  Le nombre d'événements de journaux au sein du lot qui ne s'est pas publié en raison d'erreurs de limitation.  | 

## AWS IoT Core métriques du fournisseur d'informations d'identification
<a name="credential-provider-metrics"></a>


| Métrique | Description | 
| --- | --- | 
|   `CredentialExchangeSuccess`   |  Le nombre de `AssumeRoleWithCertificate` requêtes réussies adressées au AWS IoT Core fournisseur d'informations d'identification.  | 

## Métriques d’authentification
<a name="authentication-metrics"></a>

**Note**  
Les métriques d'authentification sont affichées dans la CloudWatch console sous **Protocol Metrics**. 


| Métrique | Description | 
| --- | --- | 
|   `Connection.AuthNError`   | Nombre de tentatives de connexion AWS IoT Core rejetées en raison d'échecs d'authentification. Cette métrique ne prend en compte que les connexions qui envoient une chaîne d'indication de nom de serveur (SNI) correspondant à un point de terminaison de votre Compte AWS. Cette métrique inclut les tentatives de connexion provenant de sources externes telles que les outils d'analyse Internet ou les activités de sondage. La Protocol dimension contient le protocole utilisé pour envoyer la tentative de connexion. | 

## Métriques d'agrafage OCSP du certificat de serveur
<a name="server-ocsp-metrics"></a>


| Métrique | Description | 
| --- | --- | 
| Récupération de OCSPStaple données : succès | La réponse OCSP a été reçue et traitée avec succès. Cette réponse sera incluse lors de la prise de contact TLS pour le domaine configuré. La DomainConfigurationName dimension contient le nom du domaine configuré pour lequel l'agrafage OCSP des certificats de serveur est activé. | 

## Métriques de règle
<a name="rulemetrics"></a>


| Métrique | Description | 
| --- | --- | 
|   `ParseError`   |  Nombre d'erreurs d'analyse JSON s'étant produites dans des messages publiés dans une rubrique dans laquelle une règle écoute. La dimension `RuleName` contient le nom de la règle.  | 
|   `RuleExecutionThrottled`   |  Le moteur de règles limite le nombre de messages en raison d'un comportement malveillant ou parce que le nombre de messages dépasse la limite du moteur de règles. La dimension `RuleName` contient le nom de la règle à déclencher.  | 
|   `RuleNotFound`   |  La règle à déclencher est introuvable. La dimension `RuleName` contient le nom de la règle.  | 
|   `RulesExecuted`   |  Le nombre de AWS IoT règles exécutées.  | 
|   `TopicMatch`   |  Nombre de messages entrants publiés dans une rubrique dans laquelle une règle écoute. La dimension `RuleName` contient le nom de la règle.  | 

## Métriques d'action de règle
<a name="rule-action-metrics"></a>


| Métrique | Description | 
| --- | --- | 
|   `Failure`   |  Nombre d'appels d'action de règle en échec. La dimension `RuleName` contient le nom de la règle qui spécifie l'action. La dimension `ActionType` contient le type d'action ayant été appelé.  | 
|   `Success`   |  Nombre d'appels d'action de règle réussis. La dimension `RuleName` contient le nom de la règle qui spécifie l'action. La dimension `ActionType` contient le type d'action ayant été appelé.  | 
|  ErrorActionFailure  | Nombre d'actions d'erreur ayant échoué. La dimension RuleName contient le nom de la règle qui spécifie l'action. La dimension ActionType contient le type d'action ayant été appelé. | 
|  ErrorActionSuccess  | Le nombre d'actions d'erreur réussies. La dimension RuleName contient le nom de la règle qui spécifie l'action. La dimension ActionType contient le type d'action ayant été appelé. | 

## Métriques spécifiques à l'action HTTP
<a name="http-action-metrics"></a>


| Métrique | Description | 
| --- | --- | 
|   `HttpCode_Other`   |  Généré si le code d'état de la réponse provenant du Web en aval n' service/application est pas 2xx, 4xx ou 5xx.  | 
|   `HttpCode_4XX`   |  Généré si le code d'état de la réponse provenant du Web en aval service/application est compris entre 400 et 499.  | 
|   `HttpCode_5XX`   |  Généré si le code d'état de la réponse provenant du Web en aval service/application est compris entre 500 et 599.  | 
|   `HttpInvalidUrl`   |  Généré si une URL de point de terminaison, après remplacement des modèles de substitution, ne commence pas par `https://`.   | 
|   `HttpRequestTimeout`   |  Généré si le site Web en aval service/application ne renvoie pas de réponse dans le délai d'expiration de la demande. Pour de plus amples informations, veuillez consulter [Quotas de service](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#limits_iot).   | 
|   `HttpUnknownHost`   |  Généré si l'URL est valide, mais que le service n'existe pas ou est inaccessible.  | 

## Métriques d'agent de messages
<a name="message-broker-metrics"></a>

**Note**  
Les métriques du courtier de messages sont affichées dans la CloudWatch console sous **Protocol Metrics**. 


| Métrique | Description | 
| --- | --- | 
|   `Connect.AuthError`   |  Nombre de demandes de connexion n'ayant pas pu être autorisées par l'agent de messages. La dimension `Protocol` contient le protocole utilisé pour envoyer le message `CONNECT`.  | 
|   `Connect.ClientError`   |  Nombre de demandes de connexion rejetées car le message MQTT ne répondait pas aux exigences définies dans[AWS IoT quotas](limits-iot.md). La dimension `Protocol` contient le protocole utilisé pour envoyer le message `CONNECT`.  | 
|   `Connect.ClientIDThrottle`   |  Nombre de demandes de connexion limitées car le client a dépassé le taux de demandes de connexion autorisé pour un ID client spécifique. La dimension `Protocol` contient le protocole utilisé pour envoyer le message `CONNECT`.  | 
|   `Connect.ServerError`   |  Nombre de demandes de connexion ayant échoué à cause d'une erreur interne. La dimension `Protocol` contient le protocole utilisé pour envoyer le message `CONNECT`.  | 
|   `Connect.Success`   |  Nombre de connexions réussies à l'agent de messages. La dimension `Protocol` contient le protocole utilisé pour envoyer le message `CONNECT`.  | 
|   `Connect.Throttle`   |  Nombre de demandes de connexion ayant été limitées car le compte dépassait le taux de demandes de connexion autorisé. La dimension `Protocol` contient le protocole utilisé pour envoyer le message `CONNECT`.  | 
|   `Ping.Success`   |  Nombre de messages ping reçus par l'agent de messages. La dimension `Protocol` contient le protocole utilisé pour envoyer le message ping.  | 
|   `PublishIn.AuthError`   |  Nombre de demandes de publication que l'agent de messages n'a pas pu autoriser. La dimension `Protocol` contient le protocole utilisé pour publier le message. HTTP Publish ne prend pas en charge cette métrique.  | 
|   `PublishIn.ClientError`   |  Nombre de demandes de publication rejetées par le courtier de messages parce que le message ne répondait pas aux exigences définies dans[AWS IoT quotas](limits-iot.md). La dimension `Protocol` contient le protocole utilisé pour publier le message.  | 
|   `PublishIn.ServerError`   |  Nombre de demandes de publication que l'agent de messages n'a pas pu traiter à cause d'une erreur interne. La dimension `Protocol` contient le protocole utilisé pour envoyer le message `PUBLISH`.  | 
|   `PublishIn.Success`   |  Nombre de demandes de publication traitées avec succès par l'agent de messages. La dimension `Protocol` contient le protocole utilisé pour envoyer le message `PUBLISH`.  | 
|   `PublishIn.Throttle`   |  Nombre de demandes de publication ayant été limitées car le client dépassait le taux de messages entrants autorisé. La dimension `Protocol` contient le protocole utilisé pour envoyer le message `PUBLISH`. HTTP Publish ne prend pas en charge cette métrique.  | 
|   `PublishOut.AuthError`   |  Nombre de demandes de publication effectuées par l'agent de messages n'ayant pas pu être autorisées par AWS IoT. La dimension `Protocol` contient le protocole utilisé pour envoyer le message `PUBLISH`.  | 
|   `PublishOut.ClientError`   |  Nombre de demandes de publication effectuées par le courtier de messages qui ont été rejetées parce que le message ne répondait pas aux exigences définies dans[AWS IoT quotas](limits-iot.md). La dimension `Protocol` contient le protocole utilisé pour envoyer le message `PUBLISH`.  | 
|   `PublishOut.Success`   |  Nombre de demandes de publication effectuées avec succès par l'agent de messages. La dimension `Protocol` contient le protocole utilisé pour envoyer le message `PUBLISH`.  | 
|  PublishOut.Throttle  |  Nombre de demandes de publication qui étaient limitées parce que le client dépassait le taux de messages entrants autorisé. La dimension `Protocol` contient le protocole utilisé pour envoyer le message `PUBLISH`.  | 
|   `PublishRetained.AuthError`   |  Nombre de demandes de publication avec `RETAIN` l’indicateur activé que l'agent de messages n'a pas pu autoriser. La dimension `Protocol` contient le protocole utilisé pour envoyer le message `PUBLISH`.  | 
|  PublishRetained.ServerError  |  Nombre de demandes de publication retenues que l'agent de messages n'a pas pu traiter à cause d'une erreur interne. La dimension `Protocol` contient le protocole utilisé pour envoyer le message `PUBLISH`.  | 
|   `PublishRetained.Success`   |  Nombre de demandes de publication avec `RETAIN` l’indicateur activé traitées avec succès par l'agent de messages. La dimension `Protocol` contient le protocole utilisé pour envoyer le message `PUBLISH`.  | 
|   `PublishRetained.Throttle`   |  Nombre de demandes de publication avec `RETAIN` l’indicateur activé ayant été limitées car le client dépassait le taux de messages entrants autorisé. La dimension `Protocol` contient le protocole utilisé pour envoyer le message `PUBLISH`.  | 
|   `Queued.Success`   |  Nombre de messages stockés qui ont été traités avec succès par l’agent de messages pour les clients déconnectés de leur session permanente. Les messages dont le QoS est égal à 1 sont stockés pendant qu'un client disposant d'une session permanente est déconnecté.  | 
|   `Queued.Throttle`   |  Le nombre de messages qui n'ont pas pu être stockés et qui ont été limités alors que les clients ayant des sessions persistantes étaient déconnectés. Cela se produit lorsque les clients dépassent la limite de [messages en file d'attente par seconde et par compte.](https://docs.aws.amazon.com//general/latest/gr/iot-core.html#genref_queued_messages_per_second_per_account) Les messages dont le QoS est égal à 1 sont stockés pendant qu'un client disposant d'une session permanente est déconnecté.  | 
|   `Queued.ServerError`   |  Le nombre de messages qui n'ont pas été stockés pour une session persistante en raison d'une erreur interne. Lorsque les clients disposant d'une session permanente sont déconnectés, les messages dont la qualité de service (QoS) est égale à 1 sont stockés.  | 
|   `Subscribe.AuthError`   |  Nombre de demandes d'abonnement adressées par un client et n'ayant pas pu être autorisées. La dimension `Protocol` contient le protocole utilisé pour envoyer le message `SUBSCRIBE`.  | 
|   `Subscribe.ClientError`   |  Nombre de demandes d'abonnement rejetées parce que le `SUBSCRIBE` message ne répondait pas aux exigences définies dans[AWS IoT quotas](limits-iot.md). La dimension `Protocol` contient le protocole utilisé pour envoyer le message `SUBSCRIBE`.  | 
|   `Subscribe.ServerError`   |  Nombre de demandes d'abonnement ayant été rejetées à cause d'une erreur interne. La dimension `Protocol` contient le protocole utilisé pour envoyer le message `SUBSCRIBE`.  | 
|   `Subscribe.Success`   |  Nombre de demandes d'abonnement traitées avec succès par l'agent de messages. La dimension `Protocol` contient le protocole utilisé pour envoyer le message `SUBSCRIBE`.  | 
|   `Subscribe.Throttle`   |  Le nombre de demandes d'abonnement qui ont été limitées parce que les limites de taux de demandes d'abonnement autorisées ont été dépassées pour votre. Compte AWS Ces limites incluent les abonnements par seconde par compte, les abonnements par compte et les abonnements par connexion décrits dans le [courtier de AWS IoT Core messages et les limites et quotas du protocole](https://docs.aws.amazon.com//general/latest/gr/iot-core.html#message-broker-limits). La dimension `Protocol` contient le protocole utilisé pour envoyer le message `SUBSCRIBE`.  | 
|  Throttle.Exceeded  | Cette métrique s'affiche CloudWatch lorsqu'un client MQTT est limité en nombre de paquets [par seconde et par niveau de connexion.](https://docs.aws.amazon.com//general/latest/gr/iot-core.html#message-broker-limits) Cette métrique ne s'applique pas aux connexions HTTP. | 
|   `Unsubscribe.ClientError`   |  Nombre de demandes de désabonnement rejetées parce que le `UNSUBSCRIBE` message ne répondait pas aux exigences définies dans[AWS IoT quotas](limits-iot.md). La dimension `Protocol` contient le protocole utilisé pour envoyer le message `UNSUBSCRIBE`.  | 
|   `Unsubscribe.ServerError`   |  Nombre de demandes d'annulation d'abonnement ayant été rejetées à cause d'une erreur interne. La dimension `Protocol` contient le protocole utilisé pour envoyer le message `UNSUBSCRIBE`.  | 
|   `Unsubscribe.Success`   |  Nombre de demandes d'annulation d'abonnement traitées avec succès par l'agent de messages. La dimension `Protocol` contient le protocole utilisé pour envoyer le message `UNSUBSCRIBE`.  | 
|   `Unsubscribe.Throttle`   |  Nombre de demandes d'annulation d'abonnement ayant été rejetées car le client dépassait le taux de demandes d'annulation d'abonnement autorisé. La dimension `Protocol` contient le protocole utilisé pour envoyer le message `UNSUBSCRIBE`.   | 

## Métriques de shadow d'appareil
<a name="shadow-metrics"></a>

**Note**  
Les métriques fantômes de l'appareil sont affichées dans la CloudWatch console sous **Protocol Metrics**. 


| Métrique | Description | 
| --- | --- | 
|   `DeleteThingShadow.Accepted`   |  Nombre de demandes `DeleteThingShadow` traitées avec succès. La dimension `Protocol` contient le protocole utilisé pour effectuer la demande.  | 
|   `GetThingShadow.Accepted`   |  Nombre de demandes `GetThingShadow` traitées avec succès. La dimension `Protocol` contient le protocole utilisé pour effectuer la demande.  | 
|   `ListThingShadow.Accepted`   |  Nombre de demandes `ListThingShadow` traitées avec succès. La dimension `Protocol` contient le protocole utilisé pour effectuer la demande.  | 
|   `UpdateThingShadow.Accepted`   |  Nombre de demandes `UpdateThingShadow` traitées avec succès. La dimension `Protocol` contient le protocole utilisé pour effectuer la demande.  | 

## Métriques de journalisation
<a name="logging-metrics"></a>


| Métrique | Description | 
| --- | --- | 
|  `CloudwatchLogs:LogGroupCreationFailed`  |  Le nombre d'échecs de `CreateLogGroup` demande. AWS IoT Logging crée un groupe de CloudWatch journaux s'il n'existe pas. La `LogGroup` dimension contient le groupe de journaux utilisé pour effectuer la demande.  | 
|  `CloudwatchLogs:LogStreamCreationFailed`  |  Le nombre d'échecs de `CreateLogStream` demande. AWS IoT Logging crée un flux de CloudWatch journal pour transmettre les événements du journal. La `LogGroup` dimension contient le groupe de journaux utilisé pour effectuer la demande.  | 
|  `CloudwatchLogs:PutRetentionPolicyFailed`  |  Le nombre d'échecs de `PutRetentionPolicy` demande. AWS IoT Logging crée un groupe de CloudWatch journaux s'il n'existe pas, et la politique de rétention est définie sur 30 jours. La `LogGroup` dimension contient le groupe de journaux utilisé pour effectuer la demande.  | 
|  `CloudwatchLogs:PutLogEventsFailed`  |  Le nombre d'échecs de `PutLogEvents` demande. La `LogGroup` dimension contient le groupe de CloudWatch journaux utilisé pour effectuer la demande.  | 

## Métriques de tâches
<a name="jobs-metrics"></a>


| Métrique | Description | 
| --- | --- | 
|  `CanceledJobExecutionCount`  |  Le nombre d'exécutions de tâches dont le statut est passé `CANCELED` au cours d'une période déterminée par CloudWatch. (Pour plus d'informations sur CloudWatch les métriques, consultez [Amazon CloudWatch Metrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Metric).) La dimension `JobId` contient l'ID de la tâche.  | 
|   `CanceledJobExecutionTotalCount`   |  Nombre total d'exécutions de tâche dont le statut est `CANCELED` pour la tâche donnée. La dimension `JobId` contient l'ID de la tâche.  | 
|   `ClientErrorCount`   |  Nombre d'erreurs client générées pendant l'exécution de la tâche. La dimension `JobId` contient l'ID de la tâche.  | 
|   `FailedJobExecutionCount`   |  Le nombre d'exécutions de tâches dont le statut est passé `FAILED` au cours d'une période déterminée par CloudWatch. (Pour plus d'informations sur CloudWatch les métriques, consultez [Amazon CloudWatch Metrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Metric).) La dimension `JobId` contient l'ID de la tâche.  | 
|   `FailedJobExecutionTotalCount`   |  Nombre total d'exécutions de tâche dont le statut est `FAILED` pour la tâche donnée. La dimension `JobId` contient l'ID de la tâche.  | 
|   `InProgressJobExecutionCount`   |  Le nombre d'exécutions de tâches dont le statut est passé `IN_PROGRESS` au cours d'une période déterminée par CloudWatch. (Pour plus d'informations sur CloudWatch les métriques, consultez [Amazon CloudWatch Metrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Metric).) La dimension `JobId` contient l'ID de la tâche.  | 
|   `InProgressJobExecutionTotalCount`   |  Nombre total d'exécutions de tâche dont le statut est `IN_PROGRESS` pour la tâche donnée. La dimension `JobId` contient l'ID de la tâche.  | 
|   `RejectedJobExecutionTotalCount`   |  Nombre total d'exécutions de tâche dont le statut est `REJECTED` pour la tâche donnée. La dimension `JobId` contient l'ID de la tâche.  | 
|   `RemovedJobExecutionTotalCount`   |  Nombre total d'exécutions de tâche dont le statut est `REMOVED` pour la tâche donnée. La dimension `JobId` contient l'ID de la tâche.  | 
|   `QueuedJobExecutionCount`   |  Le nombre d'exécutions de tâches dont le statut est passé `QUEUED` au cours d'une période déterminée par CloudWatch. (Pour plus d'informations sur CloudWatch les métriques, consultez [Amazon CloudWatch Metrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Metric).) La dimension `JobId` contient l'ID de la tâche.  | 
|   `QueuedJobExecutionTotalCount`   |  Nombre total d'exécutions de tâche dont le statut est `QUEUED` pour la tâche donnée. La dimension `JobId` contient l'ID de la tâche.  | 
|   `RejectedJobExecutionCount`   |  Le nombre d'exécutions de tâches dont le statut est passé `REJECTED` au cours d'une période déterminée par CloudWatch. (Pour plus d'informations sur CloudWatch les métriques, consultez [Amazon CloudWatch Metrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Metric).) La dimension `JobId` contient l'ID de la tâche.  | 
|   `RemovedJobExecutionCount`   |  Le nombre d'exécutions de tâches dont le statut est passé `REMOVED` au cours d'une période déterminée par CloudWatch. (Pour plus d'informations sur CloudWatch les métriques, consultez [Amazon CloudWatch Metrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Metric).) La dimension `JobId` contient l'ID de la tâche.  | 
|   `ServerErrorCount`   |  Nombre d'erreurs de serveur générées pendant l'exécution de la tâche. La dimension `JobId` contient l'ID de la tâche.  | 
|   `SuccededJobExecutionCount`   |  Le nombre d'exécutions de tâches dont le statut est passé `SUCCESS` au cours d'une période déterminée par CloudWatch. (Pour plus d'informations sur CloudWatch les métriques, consultez [Amazon CloudWatch Metrics](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_concepts.html#Metric).) La dimension `JobId` contient l'ID de la tâche.  | 
|   `SuccededJobExecutionTotalCount`   |  Nombre total d'exécutions de tâche dont le statut est `SUCCESS` pour la tâche donnée. La dimension `JobId` contient l'ID de la tâche.  | 

## Métriques d'audit Device Defender
<a name="device-defender-audit-metrics"></a>


| Métrique | Description | 
| --- | --- | 
|   `NonCompliantResources`   |  Nombre de ressources détectées comme non conformes avec un contrôle. Le système renvoie le nombre de ressources non conformes pour chaque contrôle de chaque audit effectué.   | 
|   `ResourcesEvaluated`   |  Nombre de ressources évaluées pour conformité. Le système renvoie le nombre de ressources évaluées pour chaque contrôle de chaque audit effectué.   | 
|   `MisconfiguredDeviceDefenderNotification`   |  Vous avertit lorsque votre configuration SNS pour AWS IoT Device Defender est mal configurée.  [Dimensions](#aws-iot-metricdimensions)   | 

## Métriques de détection Device Defender
<a name="device-defender-detect-metrics"></a>


| Métrique | Description | 
| --- | --- | 
|   `NumOfMetricsExported`    |  Le nombre de métriques exportées pour une métrique côté cloud, côté appareil ou personnalisée. Le système indique le nombre de mesures exportées pour le compte, pour une métrique spécifique. Cette métrique est disponible uniquement pour les clients utilisant l'exportation de métriques.  | 
|   `NumOfMetricsSkipped`   |  Le nombre de métriques ignorées pour une métrique côté cloud, côté appareil ou personnalisée. Le système indique le nombre de métriques ignorées pour le compte, pour une métrique spécifique en raison d'autorisations insuffisantes accordées au Device Defender Detect pour publier dans la rubrique mqtt. Cette métrique est disponible uniquement pour les clients utilisant l'exportation de métriques.  | 
|   `NumOfMetricsExceedingSizeLimit`   |  Nombre de métriques ignorées lors de l'exportation pour une métrique côté cloud, côté appareil ou personnalisée en raison d'une taille dépassant les contraintes de taille des messages MQTT. Le système indique le nombre de métriques ignorées lors de l'exportation pour le compte, pour une métrique spécifique en raison d'une taille dépassant les contraintes de taille des messages MQTT. Cette métrique est disponible uniquement pour les clients utilisant l'exportation de métriques.  | 
|   `Violations`   |  Nombre de nouvelles violations de comportement de profil de sécurité détectées depuis la dernière évaluation. Le système signale le nombre de nouvelles violations pour le compte, pour un profil de sécurité spécifique et pour un comportement spécifique d'un profil de sécurité spécifique.   | 
|   `ViolationsCleared`   |  Nombre de violations de comportements de profil de sécurité résolues depuis la dernière évaluation. Le système signale le nombre de violations résolues pour le compte, pour un profil de sécurité spécifique et pour un comportement spécifique d'un profil de sécurité spécifique.   | 
|   `ViolationsInvalidated`   |  Nombre de violations de comportement de profil de sécurité pour lesquelles les informations ne sont plus disponibles depuis la dernière évaluation (l'appareil de génération de rapports ayant arrêté de créer des rapports ou n'étant plus surveillé pour une raison quelconque). Le système signale le nombre de violations non validées pour la totalité du compte, pour un profil de sécurité spécifique et pour un comportement spécifique d'un profil de sécurité spécifique.   | 
|   `MisconfiguredDeviceDefenderNotification`   |  Vous avertit lorsque votre configuration SNS pour AWS IoT Device Defender est mal configurée.  [Dimensions](#aws-iot-metricdimensions)   | 

## Métriques de mise en service d'appareils
<a name="provisioning-metrics"></a>


**AWS IoT Métriques relatives à l'approvisionnement de la flotte**  

| Métrique | Description | 
| --- | --- | 
|   `ApproximateNumberOfThingsRegistered`   |  Le nombre d'objets enregistrés par le Fleet Provisioning. Bien que le décompte soit généralement précis, l'architecture distribuée de AWS IoT Core rend difficile le maintien d'un décompte précis des objets enregistrés.  La statistique à utiliser pour cette métrique . [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/iot/latest/developerguide/metrics_dimensions.html)  Dimensions : [ClaimCertificateId](#aws-iot-metricdimensions)   | 
|   `CreateKeysAndCertificateFailed`   |  Nombre d'échecs survenus lors de l'appel de `CreateKeysAndCertificate` l'API MQTT. La métrique est émise dans les cas de réussite (valeur = 0) et d'échec (valeur = 1). Cette métrique peut être utilisée pour suivre le nombre de certificats créés et enregistrés pendant les fenêtres d'agrégation CloudWatch prises en charge, par exemple 5 minutes ou 1 heure. Les statistiques disponibles pour cette métrique sont les suivantes : [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/iot/latest/developerguide/metrics_dimensions.html)  | 
|   `CreateCertificateFromCsrFailed`   |  Nombre d'échecs survenus lors de l'appel de `CreateCertificateFromCsr` l'API MQTT. La métrique est émise dans les cas de réussite (valeur = 0) et d'échec (valeur = 1). Cette métrique peut être utilisée pour suivre le nombre d'éléments enregistrés pendant les fenêtres d'agrégation CloudWatch prises en charge, par exemple 5 minutes ou 1 heure.  Les statistiques disponibles pour cette métrique sont les suivantes : [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/iot/latest/developerguide/metrics_dimensions.html)  | 
|   `RegisterThingFailed`   |  Nombre d'échecs survenus lors de l'appel de `RegisterThing` l'API MQTT. La métrique est émise dans les cas de réussite (valeur = 0) et d'échec (valeur = 1). Cette métrique peut être utilisée pour suivre le nombre d'éléments enregistrés pendant les fenêtres d'agrégation CloudWatch prises en charge, par exemple 5 minutes ou 1 heure. Pour le nombre total d'objets enregistrés, consultez la `ApproximateNumberOfThingsRegistered` métrique. Les statistiques disponibles pour cette métrique sont les suivantes : [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/iot/latest/developerguide/metrics_dimensions.html) Dimensions : [TemplateName](#aws-iot-metricdimensions)   | 


**Just-in-time métriques de provisionnement**  

| Métrique | Description | 
| --- | --- | 
|   `ProvisionThing.ClientError`   |  Le nombre de fois qu'un périphérique n'a pas pu être approvisionné en raison d'une erreur du client. Par exemple, la politique spécifiée dans le modèle n'existait pas.  | 
|  ProvisionThing.ServerError  |  Le nombre de fois qu'un appareil n'a pas pu être approvisionné en raison d'une erreur du serveur. Les clients peuvent réessayer d'approvisionner l'appareil après avoir patienté et ils peuvent contacter AWS IoT si le problème persiste.  | 
|  ProvisionThing.Success  |  Nombre de fois qu’un appareil a été approvisionné avec succès.  | 

## LoRaMétriques WAN
<a name="lorawan-metrics"></a>

Le tableau suivant présente les mesures pour AWS IoT Core for LoRaWAN. Pour plus d'informations, consultez la section [AWS IoT Core for LoRaWAN Mesures](https://docs.aws.amazon.com/iot-wireless/latest/developerguide/iot-lorawan-metrics.html). 


**AWS IoT Core for LoRaWAN métriques**  

| Métrique | Description | 
| --- | --- | 
|  Appareils/passerelles actifs  |  Le nombre d'appareils LoRa WAN et de passerelles actifs dans votre compte.  | 
|  Nombre de messages de liaison montante  |  Le nombre de messages de liaison montante envoyés pendant une durée spécifiée pour toutes les passerelles et tous les appareils actifs de votre. Compte AWS Les messages Uplink sont des messages envoyés depuis votre appareil à AWS IoT Core for LoRaWAN.  | 
|  Nombre de messages de liaison descendante  |  Le nombre de messages de liaison descendante envoyés pendant une durée spécifiée pour toutes les passerelles et appareils actifs de votre. Compte AWS Les messages de liaison descendante sont des messages AWS IoT Core for LoRaWAN envoyés depuis votre appareil.  | 
|  Taux de perte de messages  |  Une fois que vous avez ajouté votre appareil et que vous vous y êtes connecté AWS IoT Core for LoRaWAN, celui-ci peut lancer un message en liaison montante pour commencer à échanger des messages avec le cloud. Vous pouvez utiliser cette métrique pour suivre le taux de messages de liaison montante perdus.  | 
|  Métriques de jointure  |  Après avoir ajouté votre appareil et votre passerelle, vous devez exécuter une procédure de connexion afin que votre appareil puisse envoyer des données de liaison montante et communiquer avec AWS IoT Core for LoRaWAN. Vous pouvez utiliser cette métrique pour obtenir des informations sur les métriques de jointure pour tous les appareils actifs de votre Compte AWS.  | 
|  Indicateur d'intensité moyenne du signal reçu (RSSI)  |  Vous pouvez utiliser cette métrique pour surveiller le RSSI (indicateur de puissance du signal reçu) moyen pendant la durée spécifiée. Le RSSI est une mesure qui indique si le signal est suffisamment fort pour une bonne connexion sans fil. Cette valeur est négative et doit être proche de zéro pour une connexion solide.  | 
|  Rapport signal/bruit moyen (SNR)  |  Vous pouvez utiliser cette métrique pour surveiller le rapport signal/bruit moyen (Signal-to-noise ratio) pendant la durée spécifiée. Le SNR est une mesure qui indique si le signal reçu est suffisamment fort par rapport au niveau de bruit pour une bonne connexion sans fil. La valeur SNR est positive et doit être supérieure à zéro pour indiquer que la puissance du signal est supérieure à la puissance du bruit.  | 
|  Disponibilité de la passerelle  |  Vous pouvez utiliser cette métrique pour obtenir des informations sur la disponibilité de cette passerelle pendant une durée spécifiée. Cette métrique affiche le temps de connexion websocket de cette passerelle pendant une durée spécifiée.  | 


**Just-in-time métriques de provisionnement**  

| Métrique | Description | 
| --- | --- | 
|   `ProvisionThing.ClientError`   |  Le nombre de fois qu'un périphérique n'a pas pu être approvisionné en raison d'une erreur du client. Par exemple, la politique spécifiée dans le modèle n'existait pas.  | 
|  ProvisionThing.ServerError  |  Le nombre de fois qu'un appareil n'a pas pu être approvisionné en raison d'une erreur du serveur. Les clients peuvent réessayer d'approvisionner l'appareil après avoir patienté et ils peuvent contacter AWS IoT si le problème persiste.  | 
|  ProvisionThing.Success  |  Nombre de fois qu’un appareil a été approvisionné avec succès.  | 

## Métriques d'indexation de la flotte
<a name="fleet-indexing-metrics"></a>


**AWS IoT métriques d'indexation de la flotte**  

| Métrique | Description | 
| --- | --- | 
|   `NamedShadowCountForDynamicGroupQueryLimitExceeded`   |  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 d'objets dynamiques. Lorsque cette limite est dépassée pour un objet, le `NamedShadowCountForDynamicGroupQueryLimitExceeded` type d'événement est émis.  | 

## Dimensions pour les métriques
<a name="aws-iot-metricdimensions"></a>


**Les métriques utilisent l'espace de noms et fournissent des métriques pour les dimensions suivantes.**  

| Dimension | Description | 
| --- | --- | 
|  ActionType  |  Le [type d'action](iot-rule-actions.md) spécifié par la règle déclenchée par la demande.  | 
|   `BehaviorName`   |  Nom du comportement du profil de sécurité de détection Device Defender qui est surveillé.  | 
|   `ClaimCertificateId`   |  La `certificateId` de la réclamation utilisée pour approvisionner les appareils.  | 
|   `CheckName`   |  Nom du contrôle d'audit Device Defender dont les résultats sont surveillés.  | 
|   `JobId`   |  ID de la tâche dont la progression ou la connexion aux messages success/failure est surveillée.  | 
|   `Protocol`   |  Protocole utilisé pour effectuer la demande. Les valeurs valides sont : MQTT ou HTTP  | 
|   `RuleName`   |  Nom de la règle déclenchée par la demande.  | 
|   `ScheduledAuditName`   |  Nom de l'audit Device Defender programmé dont les résultats du contrôle sont surveillés. La valeur `OnDemand` est utilisée si les résultats concernent un audit effectué à la demande.  | 
|   `SecurityProfileName`   |  Nom du profil de sécurité de détection Device Defender dont les comportements sont surveillés.  | 
|   `TemplateName`   |  Nom du modèle de mise en service.  | 
|  SourceArn  | Fait référence au profil de sécurité pour la détection ou à l'ARN du compte pour l'audit. | 
|   `RoleArn`   |  Fait référence au rôle que Device Defender a tenté d'assumer.  | 
|   `TopicArn`   |  Fait référence à la rubrique SNS sur laquelle Device Defender a tenté de publier.  | 
|   `Error`   | Fournit une brève description de l'erreur reçue lors de la tentative de publication sur la rubrique SNS. Les valeurs possibles sont :[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/iot/latest/developerguide/metrics_dimensions.html)  | 

# Surveiller AWS IoT à l'aide CloudWatch des journaux
<a name="cloud-watch-logs"></a>

Lorsque la [AWS IoT journalisation est activée](configure-logging.md), AWS IoT envoie des événements de progression concernant chaque message lors de son transfert depuis vos appareils via le courtier de messages et le moteur de règles. Dans la [CloudWatch console](https://console.aws.amazon.com/cloudwatch), CloudWatch les journaux apparaissent dans un groupe de **AWSIotjournaux nommé Logs**. 

Pour plus d'informations sur les CloudWatch journaux, consultez la section [CloudWatch Journaux](https://docs.aws.amazon.com/AmazonCloudWatch/latest/DeveloperGuide/WhatIsCloudWatchLogs.html). Pour plus d'informations sur AWS IoT CloudWatch les journaux pris en charge, consultez[CloudWatch Enregistre les entrées du AWS IoT journal](cwl-format.md).

## Afficher AWS IoT les journaux dans la CloudWatch console
<a name="viewing-logs"></a>

**Note**  
Le groupe de `AWSIotLogsV2` journaux n'est pas visible dans la CloudWatch console jusqu'à ce que :  
Vous avez activé la connexion AWS IoT. Pour plus d'informations sur la façon d'activer la connexion AWS IoT, voir [Configuration de la AWS IoT journalisation](configure-logging.md) 
Certaines entrées du journal ont été écrites par AWS IoT les opérations.

**Pour consulter vos AWS IoT journaux dans la CloudWatch console**

1.  naviguez jusqu'à [https://console.aws.amazon.com/cloudwatch/](https://console.aws.amazon.com/cloudwatch/). Dans le panneau de navigation, choisissez **Groupes de journaux**. 

1. Dans la zone de texte **Filtre**, entrez **AWSIotLogsV2**, puis appuyez sur Entrée.

1. Double-cliquez sur le `AWSIotLogsV2` groupe de journaux.

1. Choisissez **Rechercher tout**. La liste complète des AWS IoT journaux générés pour votre compte s'affiche.

1. Choisissez l'icône de développement pour afficher un flux individuel.

Vous pouvez également entrer une requête dans la zone de texte **Filtrer les événements**. Voici quelques demandes intéressantes à essayer :
+  `{ $.logLevel = "INFO" }` 

   Trouvez tous les journaux qui ont un niveau de journalisation `INFO`. 
+  `{ $.status = "Success" }` 

   Trouvez tous les journaux qui ont un statut `Success`. 
+  `{ $.status = "Success" && $.eventType = "GetThingShadow" }` 

   Trouvez tous les journaux qui ont un statut `Success` et un type d'événement `GetThingShadow`. 

Pour plus d'informations sur la création d'expressions de filtre, voir [CloudWatch Logs Requêtes](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/FilterAndPatternSyntax.html). 

# CloudWatch Enregistre les entrées du AWS IoT journal
<a name="cwl-format"></a>

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 :

**Topics**
+ [Entrées du journal du courtier de messages](#message-broker-logs)
+ [Entrées du journal OCSP du certificat de serveur](#server-ocsp-logs)
+ [Entrées de journal de shadow d'appareil](#device-shadow-logs)
+ [Entrées de journal du moteur de règles](#rule-engine-logs)
+ [Entrées du journal des tâches](#job-logs)
+ [Entrées de journal de provisionnement des appareils](#provision-logs)
+ [Entrées dynamiques du journal des groupes d'objets](#dynamic-group-logs)
+ [Entrées du journal d'indexation de la flotte](#fleet-indexing-logs)
+ [Attributs communs CloudWatch des journaux](#cwl-common-attributes)

## Entrées du journal du courtier de messages
<a name="message-broker-logs"></a>

Le courtier de AWS IoT messages génère des entrées de journal pour les événements suivants :

**Topics**
+ [Connexion de l'entrée de journal](#log-mb-connect)
+ [Déconnecter l'entrée du journal](#log-mb-disconnect)
+ [DeleteConnection entrée dans le journal](#log-mb-delete-connection)
+ [GetRetainedMessage entrée dans le journal](#log-mb-get-retain)
+ [ListRetainedMessage entrée dans le journal](#log-mb-list-retain)
+ [Entrée de journal Publish-In](#log-mb-publish-in)
+ [Entrée du journal Publish-Out](#log-mb-publish-out)
+ [Entrée de journal en file d'attente](#log-mb-queued)
+ [Souscrire l'entrée de journal](#log-mb-subscribe)
+ [Entrée dans le journal de désabonnement](#log-mb-unsubscribe)

### Connexion de l'entrée de journal
<a name="log-mb-connect"></a>

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
<a name="log-mb-connect.example"></a>

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), 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 `MQTT` ou `HTTP`. 

sourceIp  
L'adresse IP d'origine de la demande.

sourcePort  
Le port d'origine de la demande.

### Déconnecter l'entrée du journal
<a name="log-mb-disconnect"></a>

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
<a name="log-mb-disconnect.example"></a>

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), 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 `MQTT` ou `HTTP`. 

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.

### DeleteConnection entrée dans le journal
<a name="log-mb-delete-connection"></a>

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
<a name="log-mb-delete-connection.example"></a>

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), 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](https://docs.aws.amazon.com/IAM/latest/UserGuide/introduction_identity-management.html) 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
<a name="log-mb-get-retain"></a>

Le courtier de AWS IoT messages génère une entrée de journal avec un `eventType` [https://docs.aws.amazon.com//iot/latest/developerguide/API_iotdata_GetRetainedMessage.html](https://docs.aws.amazon.com//iot/latest/developerguide/API_iotdata_GetRetainedMessage.html)de `GetRetainedMessage` when.

#### GetRetainedMessage exemple de saisie de journal
<a name="log-mb-get-retain-example"></a>

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), les entrées du `GetRetainedMessage` journal contiennent les attributs suivants :

lastModifiedDate  
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 `0` ou `1`. 

topicName  
Le nom de la rubrique faisant l'objet de l'abonnement. 

### ListRetainedMessage entrée dans le journal
<a name="log-mb-list-retain"></a>

Le courtier de AWS IoT messages génère une entrée de journal avec un `eventType` [/iot/latest/developerguide/API_iotdata_ListRetainedMessages.html](/iot/latest/developerguide/API_iotdata_ListRetainedMessages.html)de `ListRetainedMessage` when.

#### ListRetainedMessage exemple de saisie de journal
<a name="log-mb-list-retain-example"></a>

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

Outre le[Attributs communs CloudWatch des journaux](#cwl-common-attributes), les entrées du `ListRetainedMessage` journal contiennent l'attribut suivant :

protocole ;  
Protocole utilisé pour effectuer la demande. Valeur valide : `HTTP`. 

### Entrée de journal Publish-In
<a name="log-mb-publish-in"></a>

Lorsque le courtier de AWS IoT messages reçoit un message MQTT, il génère une entrée de journal avec un `eventType` de`Publish-In`. 

#### Exemple d'entrée de journal Publish-In
<a name="log-mb-publish-in.example"></a>

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), 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 `MQTT` ou `HTTP`. 

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](mqtt.md#mqtt-retain).

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 du journal Publish-Out
<a name="log-mb-publish-out"></a>

Lorsque le courtier de messages publie un message MQTT, il génère une entrée de journal avec un `eventType` de `Publish-Out` 

#### Exemple d'entrée de journal Publish-Out
<a name="log-mb-publish-out.example"></a>

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), 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 `MQTT` ou `HTTP`. 

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
<a name="log-mb-queued"></a>

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, consultez[Sessions permanentes MQTT](mqtt.md#mqtt-persistent-sessions).

#### Exemple d'entrée dans le journal des erreurs d'un serveur en file d'attente
<a name="log-mb-queued.server-error.example"></a>

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

Outre les entrées du journal des erreurs `Queued` du serveur[Attributs communs CloudWatch des journaux](#cwl-common-attributes), elles contiennent les attributs suivants :

clientId  
ID du client auquel le message est mis en file d'attente.

détails  
**`Server Error`**  
Une 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
<a name="log-mb-queued.success.example"></a>

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

Outre les entrées du [Attributs communs CloudWatch des journaux](#cwl-common-attributes) 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
<a name="log-mb-queued.throttled.example"></a>

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

Outre les entrées du journal `Queued` limité[Attributs communs CloudWatch des journaux](#cwl-common-attributes), elles contiennent les attributs suivants :

clientId  
ID du client auquel le message est mis en file d'attente.

détails  
**`Throttled while queueing offline message`**  
Le client a dépassé la ` [Queued messages per second per account](https://docs.aws.amazon.com//general/latest/gr/iot-core.html#genref_queued_messages_per_second_per_account) ` limite, 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
<a name="log-mb-subscribe"></a>

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
<a name="log-mb-connect.example.subscribe"></a>

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), 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
<a name="log-mb-connect.example.subscribe.mqtt5"></a>

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

Pour les opérations d'abonnement de MQTT 5, en plus des[Attributs communs CloudWatch des journaux](#cwl-common-attributes) et des [ attributs d'entrée du journal d'abonnement et de MQTT 3](#log-mb-connect.example.subscribe), 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](https://docs.aws.amazon.com//iot/latest/developerguide/mqtt.html#mqtt5-reason-codes). 

### Entrée dans le journal de désabonnement
<a name="log-mb-unsubscribe"></a>

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ésinscription MQTT
<a name="log-mb-connect.example.unsubscribe"></a>

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), 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.

## Entrées du journal OCSP du certificat de serveur
<a name="server-ocsp-logs"></a>

AWS IoT Core génère des entrées de journal pour l'événement suivant :

**Topics**
+ [Récupérer l'entrée du journal de OCSPStaple données](#log-retrieve-ocsp-staple)
+ [Récupérer l'entrée du journal de OCSPStaple données pour les points de terminaison privés](#log-retrieve-ocsp-staple-private-endpoint)

### Récupérer l'entrée du journal de OCSPStaple données
<a name="log-retrieve-ocsp-staple"></a>

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.

#### Exemples d'entrées dans le journal de récupération des OCSPStaple données
<a name="log-retrieve-ocsp-staple.example"></a>

Voici un exemple d'entrée de journal de`Success`. 

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

Voici un exemple d'entrée de journal de`Failure`. 

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

Pour l'`RetrieveOCSPStaple`opération, outre le[Attributs communs CloudWatch des journaux](#cwl-common-attributes), les entrées du journal contiennent les attributs suivants :

raison  
La raison pour laquelle l'opération échoue.

domainConfigName  
Le nom de la configuration de votre domaine.

Détails de connexion  
Brève explication des détails de connexion.  
+ httpStatusCode

  Codes d'état HTTP renvoyés par le répondeur OCSP en réponse à la demande du client adressée au serveur.
+ ocspResponderUri

  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.

ocspRequestDetails  
Détails de la demande OCSP.  
+ Nom du demandeur

  Identifiant du AWS IoT Core serveur qui envoie une demande au répondeur OCSP.
+ requestCertId

  L'ID du certificat de la demande. Il s'agit de l'ID du certificat pour lequel la réponse OCSP est demandée.

ocspResponseDetails  
Détails de la réponse de l'OCSP.  
+ responseCertId

  L'ID de certificat de la réponse OCSP. 
+ ocspResponseStatus

  État de la réponse OCSP.
+ État du certificat

  État du certificat.
+ Signature

  Signature appliquée à la réponse par une entité de confiance.
+ thisUpdateTime

  L'heure à laquelle le statut indiqué est connu pour être correct.
+ nextUpdateTime

  Heure à laquelle ou avant laquelle les informations les plus récentes concernant le statut du certificat seront disponibles.
+ producedAtTime

  Heure à laquelle le répondeur OCSP a signé cette réponse.
+ stapledDataPayloadTaille

  La taille de la charge utile des données agrafées.

### Récupérer l'entrée du journal de OCSPStaple données pour les points de terminaison privés
<a name="log-retrieve-ocsp-staple-private-endpoint"></a>

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.

#### Exemples de saisie OCSPStaple de journaux de données pour les points de terminaison privés
<a name="log-retrieve-ocsp-staple-private-endpoint.example"></a>

Voici un exemple d'entrée de journal de`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"
	}
}
```

Voici un exemple d'entrée de journal de`Failure`. 

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

Pour l'`RetrieveOCSPStaple`opération, outre les attributs [Attributs communs CloudWatch des journaux](#cwl-common-attributes) et contenus dans l'[entrée du journal Retrieve OCSPStaple Data](https://docs.aws.amazon.com//iot/latest/developerguide/cwl-format.html#log-retrieve-ocsp-staple), les entrées du journal des 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.

authorizedResponderArn  
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
<a name="device-shadow-logs"></a>

Le service AWS IoT Device Shadow génère des entrées de journal pour les événements suivants :

**Topics**
+ [DeleteThingShadow entrée dans le journal](#log-shadow-delete-thing-shadow)
+ [GetThingShadow entrée dans le journal](#log-shadow-get-thing-shadow)
+ [UpdateThingShadow entrée dans le journal](#log-shadow-update-thing-shadow)

### DeleteThingShadow entrée dans le journal
<a name="log-shadow-delete-thing-shadow"></a>

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
<a name="log-shadow-delete-thing-shadow.example"></a>

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), les entrées du `DeleteThingShadow` journal contiennent les attributs suivants :

deviceShadowName  
Nom du shadow à mettre à jour.

protocole ;  
Protocole utilisé pour effectuer la demande. Les valeurs valides sont `MQTT` ou `HTTP`. 

topicName  
Le nom de la rubrique sur laquelle la demande a été publiée. 

### GetThingShadow entrée dans le journal
<a name="log-shadow-get-thing-shadow"></a>

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
<a name="log-shadow-get-thing-shadow.example"></a>

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), les entrées du `GetThingShadow` journal contiennent les attributs suivants :

deviceShadowName  
Le nom du shadow demandé.

protocole ;  
Protocole utilisé pour effectuer la demande. Les valeurs valides sont `MQTT` ou `HTTP`. 

topicName  
Le nom de la rubrique sur laquelle la demande a été publiée. 

### UpdateThingShadow entrée dans le journal
<a name="log-shadow-update-thing-shadow"></a>

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
<a name="log-shadow-update-thing-shadow.example"></a>

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), les entrées du `UpdateThingShadow` journal contiennent les attributs suivants :

deviceShadowName  
Nom du shadow à mettre à jour.

protocole ;  
Protocole utilisé pour effectuer la demande. Les valeurs valides sont `MQTT` ou `HTTP`. 

topicName  
Le nom de la rubrique sur laquelle la demande a été publiée. 

## Entrées de journal du moteur de règles
<a name="rule-engine-logs"></a>

Le moteur de AWS IoT règles génère des journaux pour les événements suivants :

**Topics**
+ [FunctionExecution entrée dans le journal](#log-rules-fn-exec)
+ [RuleExecution entrée dans le journal](#log-rules-rule-ex)
+ [RuleMatch entrée dans le journal](#log-rules-rule-match)
+ [RuleExecutionThrottled entrée dans le journal](#log-rules-rule-msg-throttled)
+ [RuleNotFound entrée dans le journal](#log-rules-rule-not-found)
+ [StartingRuleExecution entrée dans le journal](#log-rules-start-rule-ex)

### FunctionExecution entrée dans le journal
<a name="log-rules-fn-exec"></a>

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` ou`machinelearning_predict`). 

#### FunctionExecution exemple de saisie de journal
<a name="log-rules-fn-exec.example"></a>

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), les entrées du `FunctionExecution` journal contiennent les attributs suivants :

clientId  
 `N/A` pour les journaux `FunctionExecution`.

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
<a name="log-rules-rule-ex"></a>

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
<a name="log-rules-rule-ex.example"></a>

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

#### RuleExecution avec exemple de saisie de journal par lots
<a name="log-rules-rule-ex-batching.example"></a>

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

En plus de [Attributs communs CloudWatch des journaux](#cwl-common-attributes), 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
<a name="log-rules-rule-match"></a>

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
<a name="log-rules-rule-match.example"></a>

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), 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
<a name="log-rules-rule-msg-throttled"></a>

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
<a name="log-rules-rule-msg-throttled.example"></a>

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), 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
<a name="log-rules-rule-not-found"></a>

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
<a name="log-rules-rule-not-found.example"></a>

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), 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
<a name="log-rules-start-rule-ex"></a>

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` de`StartingRuleExecution`. 

#### StartingRuleExecution exemple de saisie de journal
<a name="log-rules-start-rule-ex.example"></a>

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), 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
<a name="job-logs"></a>

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.

**Topics**
+ [DescribeJobExecution entrée dans le journal](#log-job-describe-job-ex)
+ [GetPendingJobExecution entrée dans le journal](#log-job-get-pending-job-ex)
+ [ReportFinalJobExecutionCount entrée dans le journal](#log-job-report-final-job-ex-count)
+ [StartNextPendingJobExecution entrée dans le journal](#log-job-start-next-pending-job-ex)
+ [UpdateJobExecution entrée dans le journal](#log-job-update-job-ex)

### DescribeJobExecution entrée dans le journal
<a name="log-job-describe-job-ex"></a>

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
<a name="log-job-describe-job-ex.example"></a>

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), 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](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html). 

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 `MQTT` ou `HTTP`. 

topicName  
La rubrique utilisée pour effectuer la demande. 

### GetPendingJobExecution entrée dans le journal
<a name="log-job-get-pending-job-ex"></a>

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
<a name="log-job-get-pending-job-ex.example"></a>

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), 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](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html). 

détails  
Informations supplémentaires issues du service Jobs.

protocole ;  
Protocole utilisé pour effectuer la demande. Les valeurs valides sont `MQTT` ou `HTTP`. 

topicName  
Le nom de la rubrique faisant l'objet de l'abonnement. 

### ReportFinalJobExecutionCount entrée dans le journal
<a name="log-job-report-final-job-ex-count"></a>

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
<a name="log-job-report-final-job-ex-count.example"></a>

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), 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
<a name="log-job-start-next-pending-job-ex"></a>

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` de`StartNextPendingJobExecution`. 

#### StartNextPendingJobExecution exemple de saisie de journal
<a name="log-job-start-next-pending-job-ex.example"></a>

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), 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](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html). 

détails  
Informations supplémentaires issues du service Jobs.

protocole ;  
Protocole utilisé pour effectuer la demande. Les valeurs valides sont `MQTT` ou `HTTP`. 

topicName  
La rubrique utilisée pour effectuer la demande. 

### UpdateJobExecution entrée dans le journal
<a name="log-job-update-job-ex"></a>

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
<a name="log-job-update-job-ex.example"></a>

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), 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](https://docs.aws.amazon.com/AWSEC2/latest/APIReference/Run_Instance_Idempotency.html). 

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 `MQTT` ou `HTTP`. 

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
<a name="provision-logs"></a>

Le service AWS IoT Device Provisioning génère des journaux pour les événements suivants. 

**Topics**
+ [GetDeviceCredentials entrée dans le journal](#log-provision-get-device-credentials)
+ [ProvisionDevice entrée dans le journal](#log-provision-provision-device)

### GetDeviceCredentials entrée dans le journal
<a name="log-provision-get-device-credentials"></a>

Le service AWS IoT Device Provisioning génère une entrée de journal avec un « `eventType` of » `GetDeviceCredential` lorsqu'un client appelle`GetDeviceCredential`. 



#### GetDeviceCredentials exemple de saisie de journal
<a name="log-provision-get-device-credentials.example"></a>

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), les entrées du `GetDeviceCredentials` journal contiennent les attributs suivants :

détails  
Une brève explication de l'erreur.

deviceCertificateId  
ID du certificat d'appareil.

### ProvisionDevice entrée dans le journal
<a name="log-provision-provision-device"></a>

Le service AWS IoT Device Provisioning génère une entrée de journal avec un « `eventType` of » `ProvisionDevice` lorsqu'un client appelle`ProvisionDevice`. 

#### ProvisionDevice exemple de saisie de journal
<a name="log-provision-provision-device.example"></a>

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), les entrées du `ProvisionDevice` journal contiennent les attributs suivants :

détails  
Une brève explication de l'erreur.

deviceCertificateId  
ID du certificat d'appareil.

provisioningTemplateName  
Nom du modèle de mise en service.

## Entrées dynamiques du journal des groupes d'objets
<a name="dynamic-group-logs"></a>

AWS IoT Les groupes d'objets dynamiques génèrent des journaux pour l'événement suivant.

**Topics**
+ [AddThingToDynamicThingGroupsFailed entrée dans le journal](#log-dynthing-add-thing-to-dynamic-thing-groups-failed)

### AddThingToDynamicThingGroupsFailed entrée dans le journal
<a name="log-dynthing-add-thing-to-dynamic-thing-groups-failed"></a>

Lorsqu' AWS IoT il n'est pas possible d'ajouter un élément aux groupes dynamiques spécifiés, il génère une entrée de journal avec un `eventType` de`AddThingToDynamicThingGroupsFailed`. 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](dynamic-thing-groups.md#dynamic-thing-group-limitations). 

#### AddThingToDynamicThingGroupsFailed exemple de saisie de journal
<a name="log-dynthing-add-thing-to-dynamic-thing-groups-failed.example"></a>

Cet exemple montre une entrée de journal correspondant à une erreur `AddThingToDynamicThingGroupsFailed`. Dans cet exemple, il *TestThing*répondait aux critères pour figurer dans les groupes d'objets dynamiques répertoriés dans`dynamicThingGroupNames`, mais n'a pas pu être ajouté à ces groupes dynamiques, comme décrit dans`reason`. 

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

Outre les[Attributs communs CloudWatch des journaux](#cwl-common-attributes), les entrées du `AddThingToDynamicThingGroupsFailed` journal contiennent les attributs suivants :

dynamicThingGroupNoms  
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
<a name="fleet-indexing-logs"></a>

AWS IoT l'indexation de la flotte génère des entrées de journal pour les événements suivants.

**Topics**
+ [NamedShadowCountForDynamicGroupQueryLimitExceeded entrée dans le journal](#log-named-shadow-dynamic-group)

### NamedShadowCountForDynamicGroupQueryLimitExceeded entrée dans le journal
<a name="log-named-shadow-dynamic-group"></a>

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
<a name="log-named-shadow-dynamic-group.example"></a>

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
<a name="cwl-common-attributes"></a>

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 `eventType` pour cette entrée de journal.

logLevel  
Le niveau de journalisation utilisé. Pour plus d’informations, consultez [Niveaux de journalisation.](configure-logging.md#log-level).

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.

# Importer les journaux côté appareil sur Amazon CloudWatch
<a name="upload-device-logs-to-cloudwatch"></a>

Vous pouvez télécharger l'historique des journaux côté appareil sur Amazon CloudWatch afin de surveiller et d'analyser l'activité d'un appareil sur le terrain. Les journaux côté appareil peuvent inclure des fichiers journaux du système, des applications et des appareils. [Ce processus utilise un paramètre d'action CloudWatch Logs rules pour publier les journaux côté appareil dans un groupe de journaux défini par le client.](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/Working-with-log-groups-and-streams.html) 

## Comment ça marche
<a name="upload-process-overview"></a>

Le processus commence lorsqu'un AWS IoT appareil envoie des messages MQTT contenant des fichiers journaux formatés à un AWS IoT sujet. Une AWS IoT règle surveille le sujet du message et envoie les fichiers journaux à un groupe de CloudWatch journaux que vous définissez. Vous pouvez ensuite examiner et analyser les informations.

**Topics**
+ [Rubriques MQTT](#upload-mqtt-topics-overview)
+ [Action de règle](#upload-rule-action-overview)

### Rubriques MQTT
<a name="upload-mqtt-topics-overview"></a>

Choisissez un espace de nom de rubrique MQTT que vous utiliserez pour publier les journaux. Nous vous recommandons d'utiliser ce format pour l'espace des rubriques communes, `$aws/rules/things/thing_name/logs`, et ce format pour les rubriques d'erreur,`$aws/rules/things/thing_name/logs/errors`. La structure de dénomination pour les journaux et les sujets d'erreur est recommandée, mais elle n'est pas obligatoire. Pour plus d'informations, consultez [Designing MQTT Topics for AWS IoT Core](https://docs.aws.amazon.com/whitepapers/latest/designing-mqtt-topics-aws-iot-core/designing-mqtt-topics-aws-iot-core.html). 

En utilisant l'espace thématique commun recommandé, vous utilisez les rubriques réservées AWS IoT de Basic Ingest. AWS IoT Basic Ingest envoie en toute sécurité les données de l'appareil AWS aux services pris en charge par des actions de AWS IoT règles. Cela supprime le courtier de publish/subscribe messages du chemin d'ingestion, le rendant ainsi plus rentable. Pour de plus amples informations, veuillez consulter [Reducing messaging costs with Basic Ingest](https://docs.aws.amazon.com/iot/latest/developerguide/iot-basic-ingest.html). 

Si vous utilisez batchMode pour télécharger des fichiers journaux, vos messages doivent suivre un format spécifique incluant un horodatage et un message UNIX. Pour plus d'informations, consultez la rubrique relative [aux exigences relatives au format des messages MQTT pour le mode BatchMode](https://docs.aws.amazon.com/iot/latest/developerguide/cloudwatch-logs-rule-action.html#cloudwatch-logs-rule-action-message-format) dans la section Action des règles de [CloudWatch journalisation](https://docs.aws.amazon.com/iot/latest/developerguide/cloudwatch-logs-rule-action.html). 

### Action de règle
<a name="upload-rule-action-overview"></a>

Lors de la AWS IoT réception des messages MQTT des appareils clients, une AWS IoT règle surveille le sujet défini par le client et publie le contenu dans un groupe de CloudWatch journaux que vous définissez. Ce processus utilise une action de règle CloudWatch Logs pour surveiller le MQTT pour détecter des lots de fichiers journaux. Pour plus d'informations, consultez l'action relative à la AWS IoT règle [CloudWatch Logs](https://docs.aws.amazon.com/iot/latest/developerguide/cloudwatch-logs-rule-action.html).

#### Mode par lots
<a name="upload-batch-mode-overview"></a>

 `batchMode`est un paramètre booléen inclus dans l'action de règle AWS IoT CloudWatch Logs. Ce paramètre est facultatif et est désactivé (`false`) par défaut. Pour télécharger des fichiers journaux côté appareil par lots, vous devez activer ce paramètre (`true`) lors de la création de la règle. AWS IoT Pour plus d'informations, consultez la section [CloudWatch Journaux](https://docs.aws.amazon.com/iot/latest/developerguide/cloudwatch-logs-rule-action.html) dans la section [des actions relatives aux AWS IoT règles](https://docs.aws.amazon.com/iot/latest/developerguide/iot-rule-actions.html).

# Téléchargement de journaux côté appareil à l'aide de règles AWS IoT
<a name="uploading-logs-rules-action-procedure"></a>

Vous pouvez utiliser le moteur de AWS IoT règles pour télécharger des enregistrements de journal à partir de fichiers journaux existants côté appareil (journaux du système, des applications et de l'appareil-client) vers Amazon. CloudWatch Lorsque des journaux côté appareil sont publiés sur une rubrique MQTT, l'action Règles des CloudWatch journaux transfère les messages vers les journaux. CloudWatch Ce processus explique comment télécharger les journaux des appareils par lots à l'aide du `batchMode` paramètre d'action des règles activé (défini sur`true`). 

Pour commencer à télécharger les journaux côté appareil vers CloudWatch, remplissez les conditions préalables suivantes.

## Conditions préalables
<a name="uploading-logs-rules-prerequisites"></a>

Avant de commencer, vous devez exécuter les actions suivantes :
+ Créez au moins un appareil IoT cible enregistré en AWS IoT Core tant qu' AWS IoT objet. Pour plus d'informations, consultez [Create a thing object](https://docs.aws.amazon.com/iot/latest/developerguide/create-iot-resources.html#create-aws-thing). 
+ Déterminez l'espace thématique MQTT pour l'ingestion et les erreurs. Pour plus d'informations sur les sujets MQTT et les conventions de dénomination recommandées, consultez la section sur les [sujets [Rubriques MQTT](upload-device-logs-to-cloudwatch.md#upload-mqtt-topics-overview) MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/upload-device-logs-to-cloudwatch.html#upload-mqtt-topics-overview) dans [Importer des journaux côté appareil sur Amazon](https://docs.aws.amazon.com/iot/latest/developerguide/upload-device-logs-to-cloudwatch.html). CloudWatch 

Pour plus d'informations sur ces conditions préalables, consultez la section [Charger les journaux côté appareil vers](https://docs.aws.amazon.com/iot/latest/developerguide/upload-device-logs-to-cloudwatch). CloudWatch 

## Création d'un groupe de CloudWatch journaux
<a name="uploading-logs-rules-setup-log-group"></a>

Pour créer un groupe de CloudWatch journaux, procédez comme suit. Choisissez l'onglet approprié selon que vous préférez effectuer les étapes via le AWS Management Console ou le AWS Command Line Interface (AWS CLI).

------
#### [ AWS Management Console ]

**Pour créer un groupe de CloudWatch journaux à l'aide du AWS Management Console**

1. Ouvrez le AWS Management Console et naviguez vers [CloudWatch](https://console.aws.amazon.com//cloudwatch). 

1. Dans le panneau de navigation, choisissez **Logs**, puis **Log groups** 

1. Sélectionnez **Créer un groupe de journaux**. 

1. Mettez à jour le **nom du groupe de journaux** et, éventellement, mettez à jour les champs **des paramètres de rétention**.

1. Choisissez **Créer**. 

------
#### [ AWS CLI ]

**Pour créer un groupe de CloudWatch journaux à l'aide du AWS CLI**

1. Exécutez les commandes suivantes pour créer le groupe de journaux. Pour plus d'informations, consultez ` [create-log-group](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/logs/create-log-group.html) ` le manuel de référence des commandes AWS CLI v2.

   Remplacez le nom du groupe de journaux dans l'exemple (`uploadLogsGroup`) par votre nom préféré.

   ```
   aws logs create-log-group --log-group-name uploadLogsGroup
   ```

1. Pour confirmer que le groupe de journaux a été créé correctement, exécutez la commande suivante.

   ```
   aws logs describe-log-groups --log-group-name-prefix uploadLogsGroup
   ```

   Exemple de sortie :

   ```
   {
       "logGroups": [
           {
               "logGroupName": "uploadLogsGroup",
               "creationTime": 1674521804657,
               "metricFilterCount": 0,
               "arn": "arn:aws:logs:us-east-1:111122223333:log-group:uploadLogsGroup:*",
               "storedBytes": 0
           }
       ]
   }
   ```

------

## Création d'une règle de rubrique
<a name="uploading-logs-rules-setup-topic-rule"></a>

Pour créer une AWS IoT règle, procédez comme suit. Choisissez l'onglet approprié selon que vous préférez effectuer les étapes via le AWS Management Console ou le AWS Command Line Interface (AWS CLI).

------
#### [ AWS Management Console ]

**Pour créer une règle de sujet à l'aide du AWS Management Console**

1. Ouvrez le hub de règles.

   1. Ouvrez le AWS Management Console et accédez à [AWS IoT](https://console.aws.amazon.com/iot). 

   1. Dans la barre de navigation, choisissez **Routage des messages**, puis **Règles**. 

   1. Choisissez **Créer une règle**. 

1. Entrez les propriétés de la règle.

   1. Entrez un **nom de règle** alphanumérique. 

   1. (Facultatif) Entrez une **Règle de description** puis **Onglet**. 

   1. Choisissez **Suivant**. 

1. Entrez une instruction SQL.

   1. Entrez une instruction SQL en utilisant la rubrique MQTT que vous avez définie pour l'ingestion.

      Par exemple, `SELECT * FROM '$aws/rules/things/thing_name/logs' ` 

   1. Choisissez **Suivant**. 

1. Entrez les actions des règles.

   1. Dans le menu **Action 1**, choisissez **CloudWatchlogs**. 

   1. Choisissez le **nom de groupe de journal** puis sélectionnez le groupe de journal que vous avez crée.

   1. Sélectionnez **Utiliser le mode batch**. 

   1. Spécifiez le rôle IAM pour la règle.

      Si vous avez un rôle IAM pour la règle, procédez comme suit.

      1. Dans le menu du **rôle IAM**, choisissez votre rôle IAM.

      Si vous n'avez pas de rôle IAM pour la règle, procédez comme suit.

      1. Choisissez **Create New Role** (Créer un nouveau rôle). 

      1. Pour **Nom du rôle**, entrez un nom unique et choisissez **Créer**. 

      1. Vérifiez que le nom du rôle IAM est correct dans le champ du **rôle IAM**.

   1. Choisissez **Suivant**. 

1. Passez en revue la configuration du modèle.

   1. Vérifiez les paramètres du modèle de Tâche pour vérifier qu'ils sont corrects.

   1. Lorsque vous avez terminé, cliquez sur **Create (Créer)**. 

------
#### [ AWS CLI ]

**Pour créer un rôle IAM et une règle de sujet à l'aide du AWS CLI**

1. Créez un rôle IAM qui accorde des droits à la AWS IoT règle.

   1. Créez une politique IAM.

      Exécutez la commande de l' suivante pour créer une Politique IAM Assurez-vous de mettre à jour la `policy-name` valeur du paramètre. Pour plus d'informations, consultez [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iam/create-policy.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iam/create-policy.html)le manuel de référence des commandes AWS CLI v2.
**Note**  
Si vous utilisez un système d'exploitation Microsoft Windows, vous devrez peut-être remplacer le marqueur de fin de ligne (\$1) par une coche (`) ou un autre caractère.

      ```
      aws iam create-policy \
          --policy-name uploadLogsPolicy \
          --policy-document \
      '{
          "Version": "2012-10-17",		 	 	 
          "Statement": {
              "Effect": "Allow",
              "Action": [
                  "iot:CreateTopicRule",
                  "iot:Publish",
                  "logs:CreateLogGroup",
                  "logs:CreateLogStream",
                  "logs:PutLogEvents",
                  "logs:GetLogEvents"
              ],
              "Resource": "*"
          }
      }'
      ```

   1. Copiez l'ARN de la politique de votre sortie dans un éditeur de texte.

      Exemple de sortie :

      ```
      {
          "Policy": {
              "PolicyName": "uploadLogsPolicy",
              "PermissionsBoundaryUsageCount": 0,
              "CreateDate": "2023-01-23T18:30:10Z",
              "AttachmentCount": 0,
              "IsAttachable": true,
              "PolicyId": "AAABBBCCCDDDEEEFFFGGG",
              "DefaultVersionId": "v1",
              "Path": "/",
              "Arn": "arn:aws:iam::111122223333:policy/uploadLogsPolicy",
              "UpdateDate": "2023-01-23T18:30:10Z"
          }
      }
      ```

   1. Créer un rôle IAM et une politique de confiance. 

      Exécutez la commande de l' suivante pour créer une politique IAM Assurez-vous de mettre à jour la `role-name` valeur du paramètre. Pour plus d'informations, consultez [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iam/create-role.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iam/create-role.html)le manuel de référence des commandes AWS CLI v2.

      ```
      aws iam create-role \
      --role-name uploadLogsRole \
      --assume-role-policy-document \
      '{
          "Version": "2012-10-17",		 	 	 
          "Statement": [
              {
                  "Sid": "",
                  "Effect": "Allow",
                  "Principal": {
                      "Service": "iot.amazonaws.com"
                  },
                  "Action": "sts:AssumeRole"
              }
          ]
      }'
      ```

   1. Attachez la politique IAM au rôle.

      Exécutez la commande de l' suivante pour créer une politique IAM Assurez-vous de mettre à jour les valeurs `role-name` et `policy-arn` paramètres. Pour plus d'informations, consultez [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iam/attach-role-policy.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iam/attach-role-policy.html)le manuel de référence des commandes AWS CLI v2.

      ```
      aws iam attach-role-policy \
      --role-name uploadLogsRole \
      --policy-arn arn:aws:iam::111122223333:policy/uploadLogsPolicy
      ```

   1. Passez en revue le rôle.

      Pour vérifier que le rôle IAM a été créé correctement, exécutez la commande suivante. Assurez-vous de mettre à jour la valeur du `role-name` paramètre. Pour plus d'informations, consultez [https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iam/get-role.html](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/iam/get-role.html)le manuel de référence des commandes AWS CLI v2.

      ```
      aws iam get-role --role-name uploadLogsRole
      ```

      Exemple de sortie :

      ```
      {
          "Role": {
              "Path": "/",
              "RoleName": "uploadLogsRole",
              "RoleId": "AAABBBCCCDDDEEEFFFGGG",
              "Arn": "arn:aws:iam::111122223333:role/uploadLogsRole",
              "CreateDate": "2023-01-23T19:17:15+00:00",
              "AssumeRolePolicyDocument": {
                  "Version": "2012-10-17",		 	 	 
                  "Statement": [
                      {
                          "Sid": "Statement1",
                          "Effect": "Allow",
                          "Principal": {
                              "Service": "iot.amazonaws.com"
                          },
                          "Action": "sts:AssumeRole"
                      }
                  ]
              },
              "Description": "",
              "MaxSessionDuration": 3600,
              "RoleLastUsed": {}
          }
      }
      ```

1. Créez une règle de AWS IoT sujet dans le AWS CLI.

   1. Pour créer une règle de AWS IoT rubrique, exécutez la commande suivante. Assurez-vous de mettre à jour les valeurs de l'`sql`instruction `--rule-name` `description``roleARN `,, et des `logGroupName` paramètres. Pour plus d'informations, consultez [create-topic-rule](https://awscli.amazonaws.com/v2/documentation/api/2.0.34/reference/iot/create-topic-rule.html)le manuel de référence des commandes AWS CLI v2.

      ```
      aws iot create-topic-rule \
      --rule-name uploadLogsRule \
      --topic-rule-payload \
      	'{
      		"sql":"SELECT * FROM 'rules/things/thing_name/logs'",
      		"description":"Upload logs test rule",
      		"ruleDisabled":false,
      		"awsIotSqlVersion":"2016-03-23",
      		"actions":[
      			{"cloudwatchLogs":
      				{"roleArn":"arn:aws:iam::111122223333:role/uploadLogsRole",
      				"logGroupName":"uploadLogsGroup",
      				"batchMode":true}
      				}
      			]
      }'
      ```

   1. Pour vérifier que la règle a été créée correctement, exécutez la commande suivante. Assurez-vous de mettre à jour la valeur du `role-name` paramètre. Pour plus d'informations, consultez [get-topic-rule](https://awscli.amazonaws.com/v2/documentation/api/2.0.34/reference/iot/get-topic-rule.html)le manuel de référence des commandes AWS CLI v2.

      ```
      aws iot get-topic-rule --rule-name uploadLogsRule
      ```

      Exemple de sortie :

      ```
      {
          "ruleArn": "arn:aws:iot:us-east-1:111122223333:rule/uploadLogsRule",
          "rule": {
              "ruleName": "uploadLogsRule",
              "sql": "SELECT * FROM rules/things/thing_name/logs",
              "description": "Upload logs test rule",
              "createdAt": "2023-01-24T16:28:15+00:00",
              "actions": [
                  {
                      "cloudwatchLogs": {
                          "roleArn": "arn:aws:iam::111122223333:role/uploadLogsRole",
                          "logGroupName": "uploadLogsGroup",
                          "batchMode": true
                      }
                  }
              ],
              "ruleDisabled": false,
              "awsIotSqlVersion": "2016-03-23"
          }
      }
      ```

------

## Envoi des journaux côté appareil à AWS IoT
<a name="uploading-logs-rules-start-messages"></a>

**Pour envoyer les journaux côté appareil à AWS IoT**

1. Pour envoyer des journaux historiques à AWS IoT, communiquez avec vos appareils pour vous assurer de ce qui suit.
   + Les informations du journal sont envoyées à l'espace de noms de rubrique approprié, comme indiqué dans la section *Conditions préalables* de cette procédure.

     Par exemple, `$aws/rules/things/thing_name/logs` 
   + La charge utile du message MQTT est correctement formatée. Pour plus d'informations sur le sujet MQTT et la convention de dénomination recommandée, consultez la [Rubriques MQTT](upload-device-logs-to-cloudwatch.md#upload-mqtt-topics-overview) section ci-dessous. [Importer les journaux côté appareil sur Amazon CloudWatch](upload-device-logs-to-cloudwatch.md)

1. Vérifiez que les messages MQTT sont reçus dans le client AWS IoT MQTT.

   1. Ouvrez le AWS Management Console et naviguez vers [AWS IoT](https://console.aws.amazon.com/iot/home). 

   1. Pour afficher le **client de test MQTT**, dans la barre de navigation, choisissez **Test, client de test** **MQTT**. 

   1. Pour **S'abonner à une rubrique**, **Filtre de rubrique**, entrez l'espace de *noms de rubrique*. 

   1. Choisissez **Abonner**. 

      Les messages MQTT apparaissent dans le tableau des **abonnements** table de **Rubriques**, comme indiqué ci-dessous. Ces messages peuvent mettre jusqu'à cinq minutes avant d'apparaître.   
![\[Les messages MQTT apparaissent dans le tableau des abonnements et des sujets.\]](http://docs.aws.amazon.com/fr_fr/iot/latest/developerguide/images/uploading-logs-rules-start-messages-sample-mqtt.png)

## Afficher les données du journal
<a name="uploading-logs-rules-review-cloudwatch"></a>

**Pour consulter vos enregistrements de journal dans CloudWatch Logs**

1. Ouvrez le AWS Management Console, puis naviguez vers [CloudWatch](https://console.aws.amazon.com/cloudwatch). 

1. Dans la barre de navigation, choisissez **Logs**, **Logs Insights**. 

1. **Dans le menu Sélectionner un ou plusieurs groupes de journaux**, choisissez le groupe de journaux que vous avez spécifié dans la AWS IoT règle.

1. Sur la page **Logs Insights**, choisissez **Run query**. 

# Journalisation des appels AWS IoT d'API à l'aide AWS CloudTrail
<a name="iot-using-cloudtrail"></a>

AWS IoT est intégré à AWS CloudTrail un service qui fournit un enregistrement des actions entreprises par un utilisateur, un rôle ou un AWS service dans AWS IoT. CloudTrail capture tous les appels d'API AWS IoT sous forme d'événements, y compris les appels depuis la AWS IoT console et les appels de code vers le AWS IoT APIs. Si vous créez un suivi, vous pouvez activer la diffusion continue d' CloudTrailévénements vers un compartiment Amazon S3, y compris les événements pour AWS IoT. Si vous ne configurez pas de suivi, vous pouvez toujours consulter les événements les plus récents dans la CloudTrail console dans **Historique des événements**. À l'aide des informations collectées par CloudTrail, vous pouvez déterminer la demande qui a été faite AWS IoT, l'adresse IP à partir de laquelle la demande a été faite, qui a fait la demande, quand elle a été faite et d'autres détails.

Pour en savoir plus CloudTrail, consultez le [guide de AWS CloudTrail l'utilisateur](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/). 

## AWS IoT informations dans CloudTrail
<a name="aws-iot-info-in-cloudtrail"></a>

CloudTrail est activé sur votre compte Compte AWS lorsque vous créez le compte. Lorsqu'une activité se produit dans AWS IoT, cette activité est enregistrée dans un CloudTrail événement avec d'autres événements de AWS service dans **l'historique des événements**. Vous pouvez consulter, rechercher et télécharger les événements récents dans votre Compte AWS. Pour plus d'informations, consultez la section [Affichage des événements avec l'historique des CloudTrail événements](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/view-cloudtrail-events.html). 

Pour un enregistrement continu des événements dans votre Compte AWS, y compris les événements pour AWS IoT, créez un journal d'activité. Un suivi permet CloudTrail de fournir des fichiers journaux à un compartiment Amazon S3. Par défaut, lorsque vous créez un parcours dans la console, celui-ci s'applique à tous les Région AWS s. Le journal enregistre les événements de tous les Région AWS s de la AWS partition et transmet les fichiers journaux au compartiment Amazon S3 que vous spécifiez. Vous pouvez configurer d'autres AWS services pour analyser plus en détail les données d'événements collectées dans les CloudTrail journaux et agir en conséquence. Pour en savoir plus, consultez : 
+  [Présentation de la création d’un journal d’activité](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-create-and-update-a-trail.html) 
+  [CloudTrail Services et intégrations pris en charge](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-aws-service-specific-topics.html#cloudtrail-aws-service-specific-topics-integrations) 
+  [Configuration des notifications Amazon SNS pour CloudTrail](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/getting_notifications_top_level.html) 
+  [Réception de fichiers CloudTrail journaux de plusieurs régions](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/receive-cloudtrail-log-files-from-multiple-regions.html) et [réception de fichiers CloudTrail journaux de plusieurs comptes](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-receive-logs-from-multiple-accounts.html) 

**Note**  
AWS IoT les actions du plan de données (côté appareil) ne sont pas enregistrées CloudTrail. CloudWatch À utiliser pour surveiller ces actions.

D'une manière générale, les actions du plan de AWS IoT contrôle qui apportent des modifications sont enregistrées par CloudTrail. Des appels tels que des entrées **CreateThing**CreateKeysAndCertificate****, **UpdateCertificate**et des CloudTrail entrées, tandis que des appels tels **ListTopicRules**que **ListThings**et non.

Chaque événement ou entrée de journal contient des informations sur la personne ayant initié la demande. Les informations relatives à l’identité permettent de déterminer les éléments suivants : 
+ Si la demande a été effectuée avec des informations d’identification d’utilisateur root ou IAM.
+ Si la demande a été effectuée avec des informations d’identification de sécurité temporaires pour un rôle ou un utilisateur fédéré.
+ Si la demande a été faite par un autre AWS service.

Pour plus d’informations, consultez la section [Élément userIdentity CloudTrail ](https://docs.aws.amazon.com/awscloudtrail/latest/userguide/cloudtrail-event-reference-user-identity.html). 

AWS IoT les actions sont documentées dans la [référence de AWS IoT l'API](https://docs.aws.amazon.com/iot/latest/apireference/). AWS IoT Wireless les actions sont documentées dans la [référence de AWS IoT Wireless l'API](https://docs.aws.amazon.com/iot-wireless/latest/apireference/welcome.html). 

## Comprendre les entrées du fichier AWS IoT journal
<a name="understanding-aws-iot-entries"></a>

Un suivi est une configuration qui permet de transmettre des événements sous forme de fichiers journaux à un compartiment Amazon S3 que vous spécifiez. CloudTrail les fichiers journaux contiennent une ou plusieurs entrées de journal. Un événement représente une demande unique provenant de n'importe quelle source et inclut des informations sur l'action demandée, la date et l'heure de l'action, les paramètres de la demande, etc. CloudTrail les fichiers journaux ne constituent pas une trace ordonnée des appels d'API publics, ils n'apparaissent donc pas dans un ordre spécifique. 

L'exemple suivant montre une entrée de CloudTrail journal illustrant l'`AttachPolicy`action.

```
{
    "timestamp":"1460159496",
    "AdditionalEventData":"",
    "Annotation":"",
    "ApiVersion":"",
    "ErrorCode":"",
    "ErrorMessage":"",
    "EventID":"8bff4fed-c229-4d2d-8264-4ab28a487505",
    "EventName":"AttachPolicy",
    "EventTime":"2016-04-08T23:51:36Z",
    "EventType":"AwsApiCall",
    "ReadOnly":"",
    "RecipientAccountList":"",
    "RequestID":"d4875df2-fde4-11e5-b829-23bf9b56cbcd",
    "RequestParamters":{
        "principal":"arn:aws:iot:us-east-1:123456789012:cert/528ce36e8047f6a75ee51ab7beddb4eb268ad41d2ea881a10b67e8e76924d894",
        "policyName":"ExamplePolicyForIoT"
    },
    "Resources":"",
    "ResponseElements":"",
    "SourceIpAddress":"52.90.213.26",
    "UserAgent":"aws-internal/3",
    "UserIdentity":{
        "type":"AssumedRole",
        "principalId":"AKIAI44QH8DHBEXAMPLE",
        "arn":"arn:aws:sts::12345678912:assumed-role/iotmonitor-us-east-1-beta-InstanceRole-1C5T1YCYMHPYT/i-35d0a4b6",
        "accountId":"222222222222",
        "accessKeyId":"access-key-id",
        "sessionContext":{
            "attributes":{
                "mfaAuthenticated":"false",
                "creationDate":"Fri Apr 08 23:51:10 UTC 2016"
            },
            "sessionIssuer":{
                "type":"Role",
                "principalId":"AKIAI44QH8DHBEXAMPLE",
                "arn":"arn:aws:iam::123456789012:role/executionServiceEC2Role/iotmonitor-us-east-1-beta-InstanceRole-1C5T1YCYMHPYT",
                "accountId":"222222222222",
                "userName":"iotmonitor-us-east-1-InstanceRole-1C5T1YCYMHPYT"
            }
        },
        "invokedBy":{
            "serviceAccountId":"111111111111"
        }
    },
    "VpcEndpointId":""
}
```