AWS IoT GreengrassJournaux de surveillance - AWS IoT Greengrass

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 GreengrassJournaux de surveillance

AWS IoT Greengrass se compose du service cloud et du logiciel AWS IoT Greengrass Core. 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 de journal AWS IoT Greengrass comportent un horodatage, un niveau de journalisation, ainsi que 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 plus d’informations, consultez Activer la journalisation dans CloudWatch Logs.

Accéder aux journaux du système de fichiers

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 de secrets.

  • 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

Les considérations suivantes s'appliquent lorsque vous utilisez les journaux du système de fichiers :

  • Autorisations de l'utilisateur root

    Vous devez disposer d'autorisations pour pouvoir lire les journaux AWS IoT Greengrass sur le 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.

  • 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 du gestionnaire de journaux. Vous pouvez configurer la limite d'espace disque de journal de chaque composant sur le composant du gestionnaire de journaux.

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

    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:\greengrass\v2 par le chemin d'accès au dossier AWS IoT Greengrass racine, puis remplacez com.example. HelloWorldavec 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 pour analyser les journaux Greengrass sur un périphérique principal. Pour utiliser la logs commande, vous devez configurer le noyau Greengrass pour générer des fichiers journaux au format JSON. Pour plus d’informations, consultez Interface de ligne de commande Greengrass et journaux.

CloudWatch Journaux d'accès

Vous pouvez déployer le composant du gestionnaire de journaux pour configurer le périphérique principal afin qu'il écrive dans CloudWatch Logs. Pour plus d’informations, consultez Activer la journalisation dans 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.

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.

    • 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 plus d’informations, consultez Types de composants.

  • region— La AWS région utilisée par l'appareil principal.

  • componentName— Le nom du composant. Pour les journaux système, cette valeur estSystem.

Nom du flux de log
/date/thing/thingName

Le nom du flux de journal utilise les variables suivantes :

  • date— La date du journal, par exemple2020/12/15. Le composant du gestionnaire de journaux utilise le yyyy/MM/dd format.

  • thingName— Le nom de l'appareil principal.

Note

Si le nom d'un objet contient deux points (:), le gestionnaire de journaux remplace les deux points par un signe plus (+).

Les considérations suivantes s'appliquent lorsque vous utilisez le composant du gestionnaire de CloudWatch journaux pour écrire dans Logs :

  • 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 leperiodicUploadIntervalSec. Pour plus d'informations sur la configuration de cet intervalle périodique, consultez la section 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.

    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.

  • 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 dans le Références générales AWS.

Accédez aux journaux de service du système

Si vous configurez le logiciel AWS IoT Greengrass Core en tant que service système, 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
  2. 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.

  2. Sélectionnez Windows Logs pour le développer.

  3. Choisissez Application pour afficher les journaux des services de l'application.

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

Activer la journalisation dans CloudWatch Logs

Vous pouvez déployer le composant du gestionnaire de journaux 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, 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 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 et des composants du plugin.

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

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

Lorsque vous déployez le composant gestionnaire de journaux, vous pouvez également configurer les limites d'espace disque et indiquer si le périphérique principal supprime les fichiers journaux après les avoir écrits dans CloudWatch Logs. Pour plus d’informations, consultez Configurer la journalisation pour AWS IoT Greengrass.

Configurer la journalisation pour AWS IoT Greengrass

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 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. Pour plus d’informations, consultez Activer la journalisation dans 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 journaux des composants.

  • 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.logobjet 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 composants.

  • 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 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 () 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 () 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. 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 journaux des composants.

  • 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 (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 () 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 () logging.outputDirectory du composant Greengrass nucleus.

Journaux AWS CloudTrail

AWS IoT Greengrasss'intègre AWS CloudTrail à un service qui fournit un enregistrement des actions entreprises par un utilisateur, un rôle ou Service AWS dansAWS IoT Greengrass. Pour plus d'informations, consultez Enregistrez les appels AWS IoT Greengrass V2 d'API avec AWS CloudTrail.