

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.

# AWS IoT Greengrass Journaux de surveillance
<a name="monitor-logs"></a>

AWS IoT Greengrass comprend le service cloud et le logiciel AWS IoT Greengrass de base. Le logiciel AWS IoT Greengrass Core peut écrire des CloudWatch journaux sur Amazon Logs et dans le système de fichiers local de l'appareil principal. Les composants Greengrass qui s'exécutent sur le périphérique principal peuvent également écrire des journaux dans Logs et dans le système de fichiers local. CloudWatch Vous pouvez utiliser les journaux pour surveiller les événements et résoudre les problèmes. Toutes les entrées du AWS IoT Greengrass journal incluent un horodatage, un niveau de journalisation et des informations sur l'événement.

Par défaut, le logiciel AWS IoT Greengrass Core écrit les journaux uniquement dans le système de fichiers local. Vous pouvez consulter les journaux du système de fichiers en temps réel afin de pouvoir déboguer les composants Greengrass que vous développez et déployez. Vous pouvez également configurer un périphérique principal pour écrire des journaux dans CloudWatch des journaux, afin de pouvoir dépanner le périphérique principal sans accéder au système de fichiers local. Pour de plus amples informations, veuillez consulter [Activer la journalisation dans CloudWatch Logs](#enable-cloudwatch-logs).

**Topics**
+ [Accéder aux journaux du système de fichiers](#access-local-logs)
+ [CloudWatch Journaux d'accès](#access-cloudwatch-logs)
+ [Accédez aux journaux de service du système](#access-system-service-logs)
+ [Activer la journalisation dans CloudWatch Logs](#enable-cloudwatch-logs)
+ [Configurer la journalisation pour AWS IoT Greengrass](#configure-logging)
+ [AWS CloudTrail journaux](#cloudtrail-integration)

## Accéder aux journaux du système de fichiers
<a name="access-local-logs"></a>

Le logiciel AWS IoT Greengrass Core stocke les journaux dans le `/greengrass/v2/logs` dossier d'un périphérique principal, où se `/greengrass/v2` trouve le chemin d'accès au dossier AWS IoT Greengrass racine. La structure du dossier logs est la suivante.

```
/greengrass/v2
└── logs
    ├── greengrass.log
    ├── greengrass_2021_09_14_15_0.log
    ├── ComponentName.log
    ├── ComponentName_2021_09_14_15_0.log
    └── main.log
```
+ `greengrass.log`— Le fichier journal du logiciel AWS IoT Greengrass Core. Utilisez ce fichier journal pour afficher des informations en temps réel sur les composants et les déploiements. Ce fichier journal inclut les journaux du noyau Greengrass, qui est le cœur du logiciel AWS IoT Greengrass Core, et les composants du plugin, tels que le gestionnaire de [journaux et le gestionnaire](log-manager-component.md) de [secrets](secret-manager-component.md).
+ `ComponentName.log`— Fichiers journaux des composants Greengrass. Utilisez les fichiers journaux des composants pour afficher des informations en temps réel sur un composant Greengrass qui s'exécute sur le périphérique principal. Les composants génériques et les composants Lambda écrivent une sortie standard (stdout) et une erreur standard (stderr) dans ces fichiers journaux.
+ `main.log`— Le fichier journal du `main` service qui gère le cycle de vie des composants. Ce fichier journal sera toujours vide.

Pour plus d'informations sur les différences entre les composants du plugin, les composants génériques et les composants Lambda, consultez. [Types de composants](develop-greengrass-components.md#component-types)

Les considérations suivantes s'appliquent lorsque vous utilisez les journaux du système de fichiers :
+ **Autorisations de l'utilisateur root**

  Vous devez disposer des autorisations root pour lire AWS IoT Greengrass les journaux du système de fichiers.
+ **Rotation du fichier journal**

  Le logiciel AWS IoT Greengrass Core fait pivoter les fichiers journaux toutes les heures ou lorsqu'ils dépassent une limite de taille de fichier. Les fichiers journaux pivotés contiennent un horodatage dans leur nom de fichier. Par exemple, un fichier journal du logiciel AWS IoT Greengrass Core pivoté peut être nommé`greengrass_2021_09_14_15_0.log`. La limite de taille de fichier par défaut est de 1 024 Ko (1 Mo). Vous pouvez configurer la limite de taille de fichier sur le composant [Greengrass nucleus](greengrass-nucleus-component.md).
+ **Suppression du fichier journal**

  Le logiciel AWS IoT Greengrass Core nettoie les fichiers journaux antérieurs lorsque la taille des fichiers journaux du logiciel AWS IoT Greengrass Core ou des fichiers journaux des composants Greengrass, y compris les fichiers journaux pivotés, dépasse une limite d'espace disque. La limite d'espace disque par défaut pour le journal du logiciel AWS IoT Greengrass Core et pour chaque journal des composants est de 10 240 Ko (10 Mo). Vous pouvez configurer la limite d'espace disque des journaux du logiciel AWS IoT Greengrass Core sur le composant [Greengrass nucleus ou sur le composant](greengrass-nucleus-component.md) du [gestionnaire de journaux](log-manager-component.md). Vous pouvez configurer la limite d'espace disque de journal de chaque composant sur le [composant du gestionnaire de journaux](log-manager-component.md).

**Pour consulter le fichier journal du logiciel AWS IoT Greengrass Core**
+ Exécutez la commande suivante pour afficher le fichier journal en temps réel. Remplacez `/greengrass/v2` par le chemin d'accès au dossier AWS IoT Greengrass racine.

------
#### [ Linux or Unix ]

  ```
  sudo tail -f /greengrass/v2/logs/greengrass.log
  ```

------
#### [ Windows Command Prompt (CMD) ]

  ```
  type C:\greengrass\v2\logs\com.example.HelloWorld.log
  ```

  <a name="windows-cmd-type-observe-logs"></a>La `type` commande écrit le contenu du fichier sur le terminal. Exécutez cette commande plusieurs fois pour observer les modifications apportées au fichier.

------
#### [ PowerShell ]

  ```
  gc C:\greengrass\v2\logs\greengrass.log -Tail 10 -Wait
  ```

------

**Pour consulter le fichier journal d'un composant**
+ Exécutez la commande suivante pour afficher le fichier journal en temps réel. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par le chemin d'accès au dossier AWS IoT Greengrass racine, puis remplacez *com.example.HelloWorld* par le nom du composant.

------
#### [ Linux or Unix ]

  ```
  sudo tail -f /greengrass/v2/logs/com.example.HelloWorld.log
  ```

------
#### [ PowerShell ]

  ```
  gc C:\greengrass\v2\logs\com.example.HelloWorld.log -Tail 10 -Wait
  ```

------

Vous pouvez également utiliser la `logs` commande de la [CLI Greengrass](greengrass-cli-component.md) pour analyser les journaux Greengrass sur un périphérique principal. Pour utiliser la `logs` commande, vous devez configurer le [noyau Greengrass](greengrass-nucleus-component.md) pour générer des fichiers journaux au format JSON. Pour plus d’informations, consultez [Interface de ligne de commande Greengrass](gg-cli.md) et [journaux](gg-cli-logs.md).

## CloudWatch Journaux d'accès
<a name="access-cloudwatch-logs"></a>

Vous pouvez déployer le [composant du gestionnaire de journaux](log-manager-component.md) pour configurer le périphérique principal afin qu'il écrive dans CloudWatch Logs. Pour de plus amples informations, veuillez consulter [Activer la journalisation dans CloudWatch Logs](#enable-cloudwatch-logs). Vous pouvez ensuite consulter les journaux sur la page **Logs** de la CloudWatch console Amazon ou à l'aide de l'API CloudWatch Logs.<a name="log-manager-log-group-stream-format"></a>

**Nom du groupe de journaux**  

```
/aws/greengrass/componentType/region/componentName
```
Le nom du groupe de journaux utilise les variables suivantes :  
+ `componentType`— Le type du composant, qui peut être l'un des suivants :
  + `GreengrassSystemComponent`— Ce groupe de journaux inclut les journaux des composants du noyau et du plugin, qui s'exécutent dans la même JVM que le noyau Greengrass. Le composant fait partie du noyau de [Greengrass](greengrass-nucleus-component.md).
  + `UserComponent`— Ce groupe de journaux inclut les journaux des composants génériques, des composants Lambda et d'autres applications de l'appareil. Le composant ne fait pas partie du noyau de Greengrass.

  Pour de plus amples informations, veuillez consulter [Types de composants](develop-greengrass-components.md#component-types).
+ `region`— La AWS région utilisée par l'appareil principal.
+ `componentName`— Le nom du composant. Pour les journaux système, cette valeur est`System`.

**Nom du flux de log**  

```
/date/thing/thingName
```
Le nom du flux de journal utilise les variables suivantes :  
+ `date`— La date du journal, telle que`2020/12/15`. Le composant du gestionnaire de journaux utilise le `yyyy/MM/dd` format.
+ `thingName`— Le nom de l'appareil principal.
Si le nom d'un objet contient deux points (`:`), le gestionnaire de journaux remplace les deux points par un signe plus (`+`).

<a name="log-manager-considerations-intro"></a>Les considérations suivantes s'appliquent lorsque vous utilisez le composant du gestionnaire de CloudWatch journaux pour écrire dans Logs :<a name="log-manager-considerations"></a>
+ **Retards de journalisation**
**Note**  
Nous vous recommandons de passer à la version 2.3.0 du gestionnaire de journaux, qui réduit les délais de journalisation pour les fichiers journaux actifs et pivotés. Lorsque vous passez à Log Manager 2.3.0, nous vous recommandons également de passer à Greengrass nucleus 2.9.1.

  Le composant du gestionnaire de journaux version 2.2.8 (et versions antérieures) traite et télécharge les journaux uniquement à partir de fichiers journaux ayant fait l'objet d'une rotation. Par défaut, le logiciel AWS IoT Greengrass Core fait pivoter les fichiers journaux toutes les heures ou une fois qu'ils atteignent 1 024 Ko. Par conséquent, le composant du gestionnaire de journaux ne télécharge les journaux qu'une fois que le logiciel AWS IoT Greengrass Core ou un composant Greengrass a écrit plus de 1 024 Ko de journaux. Vous pouvez configurer une limite de taille de fichier journal inférieure afin de provoquer une rotation plus fréquente des fichiers journaux. Le composant du gestionnaire de journaux télécharge donc les CloudWatch journaux dans Logs plus fréquemment.

  Le composant du gestionnaire de journaux version 2.3.0 (et versions ultérieures) traite et télécharge tous les journaux. Lorsque vous rédigez un nouveau journal, la version 2.3.0 (et versions ultérieures) du gestionnaire de journaux traite et télécharge directement le fichier journal actif au lieu d'attendre qu'il fasse l'objet d'une rotation. Cela signifie que vous pouvez consulter le nouveau journal en 5 minutes ou moins.

  Le composant du gestionnaire de journaux télécharge régulièrement de nouveaux journaux. Par défaut, le composant du gestionnaire de journaux télécharge de nouveaux journaux toutes les 5 minutes. Vous pouvez configurer un intervalle de téléchargement plus court, afin que le composant du gestionnaire de journaux télécharge les CloudWatch journaux vers Logs plus fréquemment en configurant le`periodicUploadIntervalSec`. Pour plus d'informations sur la configuration de cet intervalle périodique, consultez [la section Configuration](https://docs.aws.amazon.com/greengrass/v2/developerguide/log-manager-component.html#log-manager-component-configuration).

  Les journaux peuvent être téléchargés en temps quasi réel à partir du même système de fichiers Greengrass. Si vous devez observer les journaux en temps réel, pensez à utiliser les [journaux du système de fichiers](#access-local-logs).
**Note**  
Si vous utilisez différents systèmes de fichiers pour y écrire des journaux, le gestionnaire de journaux revient au comportement des composants du gestionnaire de journaux dans les versions 2.2.8 et antérieures. Pour plus d'informations sur l'accès aux journaux du système de fichiers, voir [Accès aux journaux du système de fichiers](https://docs.aws.amazon.com/greengrass/v2/developerguide/monitor-logs.html#access-local-logs).
+ **Horloge oblique**

  Le composant du gestionnaire de journaux utilise le processus de signature standard de Signature version 4 pour créer des demandes d'API destinées à CloudWatch Logs. Si l'heure système d'un appareil principal est désynchronisée de plus de 15 minutes, CloudWatch Logs rejette les demandes. Pour plus d'informations, consultez [Processus de signature Signature Version 4](https://docs.aws.amazon.com/general/latest/gr/signature-version-4.html) dans le *Références générales AWS*.

## Accédez aux journaux de service du système
<a name="access-system-service-logs"></a>

Si vous [configurez le logiciel AWS IoT Greengrass Core en tant que service système](configure-greengrass-core-v2.md#configure-system-service), vous pouvez consulter les journaux des services système pour résoudre des problèmes, tels que l'échec du démarrage du logiciel.

**Pour afficher les journaux de service du système (CLI)**

1. Exécutez la commande suivante pour afficher les journaux de service du système logiciel AWS IoT Greengrass Core.

------
#### [ Linux or Unix (systemd) ]

   ```
   sudo journalctl -u greengrass.service
   ```

------
#### [ Windows Command Prompt (CMD) ]

   ```
   type C:\greengrass\v2\logs\greengrass.wrapper.log
   ```

------
#### [ PowerShell ]

   ```
   gc C:\greengrass\v2\logs\greengrass.wrapper.log
   ```

------

1. Sur les appareils Windows, le logiciel AWS IoT Greengrass Core crée un fichier journal distinct pour les erreurs de service système. Exécutez la commande suivante pour afficher les journaux d'erreurs du service système.

------
#### [ Windows Command Prompt (CMD) ]

   ```
   type C:\greengrass\v2\logs\greengrass.err.log
   ```

------
#### [ PowerShell ]

   ```
   gc C:\greengrass\v2\logs\greengrass.err.log
   ```

------

Sur les appareils Windows, vous pouvez également utiliser l'application **Event Viewer** pour consulter les journaux des services du système.

**Pour consulter les journaux des services Windows (Observateur d'événements)**

1. Ouvrez l'application **Event Viewer**.

1. Sélectionnez **Windows Logs** pour le développer.

1. Choisissez **Application** pour afficher les journaux des services des applications.

1. Recherchez et ouvrez les journaux d'événements dont **la source** est **greengrass**.

## Activer la journalisation dans CloudWatch Logs
<a name="enable-cloudwatch-logs"></a>

Vous pouvez déployer le [composant du gestionnaire de journaux](log-manager-component.md) pour configurer un périphérique principal afin d'écrire des CloudWatch journaux dans Logs. Vous pouvez activer CloudWatch les journaux pour les journaux du logiciel AWS IoT Greengrass Core, et vous pouvez activer CloudWatch les journaux pour des composants spécifiques de Greengrass.

**Note**  
Le rôle d'échange de jetons du périphérique principal Greengrass doit permettre au périphérique principal d'écrire dans CloudWatch Logs, comme illustré dans l'exemple de politique IAM suivant. Si vous avez [installé le logiciel AWS IoT Greengrass Core avec provisionnement automatique des ressources](quick-installation.md), votre appareil principal dispose de ces autorisations.  

```
{
  "Version": "2012-10-17",		 	 	 
  "Statement": [
    {
      "Action": [
        "logs:CreateLogGroup",
        "logs:CreateLogStream",
        "logs:PutLogEvents",
        "logs:DescribeLogStreams"
      ],
      "Effect": "Allow",
      "Resource": "arn:aws:logs:*:*:*"
    }
  ]
}
```

Pour configurer un périphérique principal afin d'écrire les journaux du logiciel AWS IoT Greengrass Core dans CloudWatch les journaux, [créez un déploiement](create-deployments.md) qui spécifie une mise à jour de configuration `true` définie pour le `aws.greengrass.LogManager` composant. `uploadToCloudWatch` AWS IoT Greengrass Les journaux du logiciel de base incluent les journaux du [noyau Greengrass](greengrass-nucleus-component.md) et des composants du [plugin](develop-greengrass-components.md#component-types).

```
{
  "logsUploaderConfiguration": {
    "systemLogsConfiguration": {
      "uploadToCloudWatch": "true"
    }
  }
}
```

Pour configurer un périphérique principal afin d'écrire les journaux d'un composant Greengrass dans Logs, [créez un déploiement qui spécifie une](create-deployments.md) mise à jour de configuration ajoutant le composant à la liste des configurations de journalisation des composants. CloudWatch Lorsque vous ajoutez un composant à cette liste, le composant du gestionnaire de journaux écrit ses journaux dans CloudWatch Logs. Les journaux des composants incluent les journaux des [composants génériques et des composants Lambda](develop-greengrass-components.md#component-types).

```
{
  "logsUploaderConfiguration": {
    "componentLogsConfigurationMap": {
      "com.example.HelloWorld": {
      
      }
    }
  }
}
```

Lorsque vous déployez le composant du gestionnaire de journaux, vous pouvez également configurer les limites d'espace disque et indiquer si le périphérique principal supprime les fichiers CloudWatch journaux après les avoir écrits dans Logs. Pour de plus amples informations, veuillez consulter [Configurer la journalisation pour AWS IoT Greengrass](#configure-logging).

## Configurer la journalisation pour AWS IoT Greengrass
<a name="configure-logging"></a>

Vous pouvez configurer les options suivantes pour personnaliser la journalisation pour les appareils principaux de Greengrass. Pour configurer ces options, [créez un déploiement qui spécifie une](create-deployments.md) mise à jour de configuration du noyau Greengrass ou des composants du gestionnaire de journaux.
+ **Écrire des journaux dans des CloudWatch journaux**

  Pour dépanner à distance les périphériques principaux, vous pouvez configurer les périphériques principaux pour écrire les journaux des logiciels et des composants AWS IoT Greengrass principaux dans les CloudWatch journaux. Pour ce faire, déployez et configurez le [composant du gestionnaire de journaux](log-manager-component.md). Pour de plus amples informations, veuillez consulter [Activer la journalisation dans CloudWatch Logs](#enable-cloudwatch-logs).
+ **Suppression des fichiers journaux téléchargés**

  Pour réduire l'utilisation de l'espace disque, vous pouvez configurer les périphériques principaux pour qu'ils suppriment les fichiers journaux après les avoir écrits dans CloudWatch Logs. Pour plus d'informations, consultez le `deleteLogFileAfterCloudUpload` paramètre du composant du gestionnaire de journaux, que vous pouvez spécifier pour les journaux du [logiciel AWS IoT Greengrass Core et les](log-manager-component.md#log-manager-component-configuration-system-logs-configuration) [journaux des composants](log-manager-component.md#log-manager-component-configuration-component-logs-configuration).
+ **Limites d'espace disque pour les journaux**

  Pour limiter l'utilisation de l'espace disque, vous pouvez configurer l'espace disque maximal pour chaque journal, y compris ses fichiers journaux pivotés, sur un périphérique principal. Par exemple, vous pouvez configurer l'espace disque combiné maximal pour les `greengrass.log` fichiers faisant l'`greengrass.log`objet d'une rotation. Pour plus d'informations, consultez le paramètre du composant Greengrass nucleus et le `logging.totalLogsSizeKB` paramètre du composant du gestionnaire de `diskSpaceLimit` journaux, que vous pouvez spécifier pour les journaux du [logiciel AWS IoT Greengrass Core et les journaux des](log-manager-component.md#log-manager-component-configuration-system-logs-configuration) [composants](log-manager-component.md#log-manager-component-configuration-component-logs-configuration).
+ **Limite de taille du fichier journal**

  Vous pouvez configurer la taille de fichier maximale pour chaque fichier journal. Lorsqu'un fichier journal dépasse cette limite de taille, le logiciel AWS IoT Greengrass Core crée un nouveau fichier journal. Le [composant du gestionnaire de journaux](log-manager-component.md) version 2.28 (et versions antérieures) écrit uniquement les fichiers CloudWatch journaux pivotés dans Logs. Vous pouvez donc spécifier une limite de taille de fichier inférieure pour écrire des journaux dans Logs plus CloudWatch fréquemment. Le composant du gestionnaire de journaux version 2.3.0 (et versions ultérieures) traite et télécharge tous les journaux au lieu d'attendre leur rotation. Pour plus d'informations, consultez le [paramètre de limite de taille du fichier journal](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-log-file-size) () `logging.fileSizeKB` du composant Greengrass nucleus.
+ **Niveaux de journalisation minimaux**

  Vous pouvez configurer le niveau de journalisation minimal que le composant Greengrass nucleus écrit dans les journaux du système de fichiers. Par exemple, vous pouvez spécifier des journaux de `DEBUG` niveau pour faciliter le dépannage, ou vous pouvez spécifier des journaux de `ERROR` niveau pour réduire le nombre de journaux créés par un périphérique principal. Pour plus d'informations, consultez le [paramètre de niveau logarithmique](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-log-level) () `logging.level` du composant Greengrass nucleus.

  Vous pouvez également configurer le niveau de journalisation minimal que le composant du gestionnaire de CloudWatch journaux écrit dans Logs. Par exemple, vous pouvez spécifier un niveau de journalisation plus élevé pour réduire les [coûts de journalisation](https://aws.amazon.com/cloudwatch/pricing/). Pour plus d'informations, consultez le `minimumLogLevel` paramètre du composant du gestionnaire de journaux, que vous pouvez spécifier pour les journaux du [logiciel AWS IoT Greengrass Core et les](log-manager-component.md#log-manager-component-configuration-system-logs-configuration) [journaux des composants](log-manager-component.md#log-manager-component-configuration-component-logs-configuration).
+ **Intervalle pour vérifier les journaux à écrire dans CloudWatch Logs**

  Pour augmenter ou diminuer la fréquence à laquelle le composant du gestionnaire de journaux écrit des CloudWatch journaux dans Logs, vous pouvez configurer l'intervalle entre lequel il vérifie la présence de nouveaux fichiers journaux à écrire. Par exemple, vous pouvez spécifier un intervalle plus court pour afficher les CloudWatch journaux dans Logs plus tôt que vous ne le feriez avec l'intervalle de 5 minutes par défaut. Vous pouvez spécifier un intervalle plus élevé pour réduire les coûts, car le composant du gestionnaire de journaux regroupe les fichiers journaux en moins de demandes. Pour plus d'informations, consultez le [paramètre d'intervalle de téléchargement](log-manager-component.md#log-manager-component-configuration-periodic-upload-interval-sec) (`periodicUploadIntervalSec`) du composant du gestionnaire de journaux.
+ **Format du journal**

  Vous pouvez choisir si le logiciel AWS IoT Greengrass Core écrit les journaux au format texte ou JSON. Choisissez le format texte si vous lisez les journaux, ou choisissez le format JSON si vous utilisez une application pour lire ou analyser les journaux. Pour plus d'informations, consultez le [paramètre de format de log](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-logging-format) () `logging.format` du composant Greengrass nucleus.
+ **Dossier des journaux du système de fichiers local**

  Vous pouvez remplacer le dossier des `/greengrass/v2/logs` journaux par un autre dossier sur le périphérique principal. Pour plus d'informations, consultez le [paramètre de répertoire de sortie](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-log-level) () `logging.outputDirectory` du composant Greengrass nucleus.

## AWS CloudTrail journaux
<a name="cloudtrail-integration"></a>

AWS IoT Greengrass s'intègre AWS CloudTrailà un service qui fournit un enregistrement des actions entreprises par un utilisateur, un rôle ou Service AWS dans AWS IoT Greengrass. Pour de plus amples informations, veuillez consulter [Enregistrez les appels AWS IoT Greengrass V2 d'API avec AWS CloudTrail](logging-using-cloudtrail.md).