Gestionnaire de journaux - 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.

Gestionnaire de journaux

Le composant du gestionnaire de journaux (aws.greengrass.LogManager) télécharge les journaux des appareils AWS IoT Greengrass principaux vers Amazon CloudWatch Logs. Vous pouvez télécharger des journaux à partir du noyau Greengrass, d'autres composants de Greengrass et d'autres applications et services qui ne sont pas des composants de Greengrass. Pour plus d'informations sur la façon de surveiller les journaux dans CloudWatch les journaux et sur le système de fichiers local, consultezAWS IoT GreengrassJournaux de surveillance.

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 soumis à une rotation. 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 soit pivoté. 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, consultez la section 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 API demandes adressé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.

Pour plus d'informations sur les groupes de journaux et les flux de journaux vers lesquels ce composant télécharge les journaux, consultezUtilisation.

Versions

Les versions de ce composant sont les suivantes :

  • 2.3.x

  • 2.2.x

  • 2,1x

  • 2,0.x

Type

Ce composant est un composant de plugin (aws.greengrass.plugin). Le noyau Greengrass exécute ce composant dans la même machine virtuelle Java (JVM) que le noyau. Le noyau redémarre lorsque vous modifiez la version de ce composant sur le périphérique principal.

Ce composant utilise le même fichier journal que le noyau Greengrass. Pour de plus amples informations, veuillez consulter AWS IoT GreengrassJournaux de surveillance.

Pour de plus amples informations, veuillez consulter Types de composants.

Système d’exploitation

Ce composant peut être installé sur les appareils principaux qui exécutent les systèmes d'exploitation suivants :

  • Linux

  • Windows

Prérequis

Ce composant répond aux exigences suivantes :

  • Le rôle d'appareil Greengrass doit autoriser les logs:DescribeLogStreams actionslogs:CreateLogGroup, logs:CreateLogStreamlogs:PutLogEvents, et, comme indiqué dans l'exemple IAM de politique suivant.

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

    Le rôle d'appareil Greengrass que vous créez lorsque vous installez le logiciel AWS IoT Greengrass Core inclut par défaut les autorisations indiquées dans cet exemple de politique.

    Pour plus d'informations, consultez la section Utilisation de politiques basées sur l'identité (IAMpolitiques) pour les CloudWatch journaux dans le guide de l'utilisateur Amazon CloudWatch Logs.

  • Le composant du gestionnaire de journaux est compatible pour s'exécuter dans unVPC. Pour déployer ce composant dans unVPC, les éléments suivants sont requis.

    • Le composant du gestionnaire de journaux doit disposer d'une connectivité logs.region.amazonaws.com dont le VPC point de terminaison est decom.amazonaws.us-east-1.logs.

Points de terminaison et ports

Ce composant doit être capable d'effectuer des demandes sortantes vers les points de terminaison et les ports suivants, en plus des points de terminaison et des ports requis pour le fonctionnement de base. Pour de plus amples informations, veuillez consulter Autoriser le trafic des appareils via un proxy ou un pare-feu.

Point de terminaison Port Obligatoire Description

logs.region.amazonaws.com

443 Non

Obligatoire si vous écrivez des journaux dans CloudWatch Logs.

Dépendances

Lorsque vous déployez un composant, il déploie AWS IoT Greengrass également des versions compatibles de ses dépendances. Cela signifie que vous devez satisfaire aux exigences relatives au composant et à toutes ses dépendances pour réussir le déploiement du composant. Cette section répertorie les dépendances des versions publiées de ce composant et les contraintes de version sémantiques qui définissent les versions des composants pour chaque dépendance. Vous pouvez également consulter les dépendances de chaque version du composant dans la AWS IoT Greengrass console. Sur la page de détails du composant, recherchez la liste des dépendances.

2.3.8

Le tableau suivant répertorie les dépendances pour la version 2.3.8 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau de Greengrass >=2,10 <2,14.0 Flexible
2.3.7

Le tableau suivant répertorie les dépendances pour la version 2.3.7 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau de Greengrass >=2,1,0 <2,13,0 Flexible
2.3.5 and 2.3.6

Le tableau suivant répertorie les dépendances pour les versions 2.3.5 et 2.3.6 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau de Greengrass >=2,1,0 <2,12,0 Flexible
2.3.3 – 2.3.4

Le tableau suivant répertorie les dépendances pour les versions 2.3.3 à 2.3.4 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau de Greengrass >=2,1,0 <2,11,0 Flexible
2.2.8 – 2.3.2

Le tableau suivant répertorie les dépendances pour les versions 2.2.8 à 2.3.2 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau de Greengrass >=2,10 <2,1,0 Flexible
2.2.7

Le tableau suivant répertorie les dépendances pour la version 2.2.7 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau de Greengrass >=2,10 <2,9,0 Flexible
2.2.6

Le tableau suivant répertorie les dépendances pour la version 2.2.6 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau de Greengrass >=2,10 <2,8,0 Flexible
2.2.5

Le tableau suivant répertorie les dépendances pour la version 2.2.5 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau de Greengrass >=2,10 <2,7,0 Flexible
2.2.1 - 2.2.4

Le tableau suivant répertorie les dépendances pour les versions 2.2.1 à 2.2.4 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau de Greengrass >=2,10 <2,6,0 Flexible
2.1.3 and 2.2.0

Le tableau suivant répertorie les dépendances pour les versions 2.1.3 et 2.2.0 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau de Greengrass >=2,10 <2,5,0 Flexible
2.1.2

Le tableau suivant répertorie les dépendances pour la version 2.1.2 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau de Greengrass >=2,10 <2,4,0 Flexible
2.1.1

Le tableau suivant répertorie les dépendances pour la version 2.1.1 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau de Greengrass >=2,10 <2,3,0 Flexible
2.1.0

Le tableau suivant répertorie les dépendances pour la version 2.1.0 de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau de Greengrass >=2,10 <2,2,0 Flexible
2.0.x

Le tableau suivant répertorie les dépendances pour la version 2.0.x de ce composant.

Dépendance Versions compatibles Type de dépendance
Noyau de Greengrass >=2,0,3 <2,10 Flexible

Pour plus d'informations sur les dépendances des composants, consultez la référence de la recette des composants.

Configuration

Ce composant fournit les paramètres de configuration suivants que vous pouvez personnaliser lorsque vous déployez le composant.

v2.3.6 – v2.3.7
logsUploaderConfiguration

(Facultatif) Configuration des journaux que le composant du gestionnaire de journaux télécharge. Cet objet contient les informations suivantes :

systemLogsConfiguration

(Facultatif) Configuration des journaux du système du logiciel AWS IoT Greengrass Core, qui incluent les journaux du noyau Greengrass et des composants du plugin. Spécifiez cette configuration pour permettre au composant du gestionnaire de journaux de gérer les journaux système. Cet objet contient les informations suivantes :

uploadToCloudWatch

(Facultatif) Vous pouvez télécharger les journaux du système dans CloudWatch Logs.

Par défaut : false

minimumLogLevel

(Facultatif) Le niveau minimum de messages de journal à télécharger. Ce niveau minimum s'applique uniquement si vous configurez le composant Greengrass nucleus pour générer des journaux de JSON format. Pour activer les journaux de JSON format, spécifiez JSON le paramètre de format de journalisation (logging.format).

Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :

  • DEBUG

  • INFO

  • WARN

  • ERROR

Par défaut : INFO

diskSpaceLimit

(Facultatif) Taille totale maximale des fichiers journaux du système Greengrass, dans l'unité que vous spécifiez. diskSpaceLimitUnit Lorsque la taille totale des fichiers journaux du système Greengrass dépasse cette taille totale maximale, le logiciel AWS IoT Greengrass Core supprime les plus anciens fichiers journaux du système Greengrass.

Ce paramètre est équivalent au paramètre de limite de taille logarithmique (totalLogsSizeKB) du composant du noyau Greengrass. Le logiciel AWS IoT Greengrass Core utilise le minimum des deux valeurs comme taille maximale totale du journal du système Greengrass.

diskSpaceLimitUnit

(Facultatif) L'unité pour lediskSpaceLimit. Sélectionnez parmi les options suivantes :

  • KB— kilo-octets

  • MB— mégaoctets

  • GB— gigaoctets

Par défaut : KB

deleteLogFileAfterCloudUpload

(Facultatif) Vous pouvez supprimer un fichier journal une fois que le composant du gestionnaire de journaux a chargé les journaux dans CloudWatch Logs.

Par défaut : false

componentLogsConfigurationMap

(Facultatif) Carte des configurations de journal pour les composants du périphérique principal. Chaque componentName objet de cette carte définit la configuration du journal pour le composant ou l'application. Le composant du gestionnaire de journaux télécharge les journaux de ces composants dans CloudWatch Logs.

Important

Nous vous recommandons vivement d'utiliser une seule clé de configuration par composant. Vous ne devez cibler qu'un groupe de fichiers dont un seul fichier journal est activement écrit lorsque vous utilisez lelogFileRegex. Le non-respect de cette recommandation peut entraîner le téléchargement de journaux dupliqués vers CloudWatch. Si vous ciblez plusieurs fichiers journaux actifs avec une seule expression régulière, nous vous recommandons de passer à la version 2.3.1 ou ultérieure du gestionnaire de journaux et d'envisager de modifier votre configuration à l'aide de l'exemple de configuration.

Note

Si vous effectuez une mise à niveau depuis une version du gestionnaire de journaux antérieure à la version 2.2.0, vous pouvez continuer à utiliser la componentLogsConfiguration liste au lieu de. componentLogsConfigurationMap Toutefois, nous vous recommandons vivement d'utiliser le format cartographique afin de pouvoir utiliser les mises à jour de fusion et de réinitialisation pour modifier les configurations de composants spécifiques. Pour plus d'informations sur le componentLogsConfiguration paramètre, consultez les paramètres de configuration pour la version 2.1.x de ce composant.

componentName

La configuration du journal pour componentName composant ou application pour cette configuration de journal. Vous pouvez spécifier le nom d'un composant Greengrass ou une autre valeur pour identifier ce groupe de logs.

Chaque objet contient les informations suivantes :

minimumLogLevel

(Facultatif) Le niveau minimum de messages de journal à télécharger. Ce niveau minimum s'applique uniquement si les journaux de ce composant utilisent un JSON format spécifique, que vous pouvez trouver dans le référentiel du module de AWS IoT Greengrass journalisation sur GitHub.

Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :

  • DEBUG

  • INFO

  • WARN

  • ERROR

Par défaut : INFO

diskSpaceLimit

(Facultatif) Taille totale maximale de tous les fichiers journaux pour ce composant, dans l'unité que vous spécifiezdiskSpaceLimitUnit. Lorsque la taille totale des fichiers journaux de ce composant dépasse cette taille totale maximale, le logiciel AWS IoT Greengrass Core supprime les fichiers journaux les plus anciens de ce composant.

Ce paramètre est lié au paramètre de limite de taille logarithmique (totalLogsSizeKB) du composant du noyau Greengrass. Le logiciel AWS IoT Greengrass Core utilise le minimum des deux valeurs comme taille maximale totale du journal pour ce composant.

diskSpaceLimitUnit

(Facultatif) L'unité pour lediskSpaceLimit. Sélectionnez parmi les options suivantes :

  • KB— kilo-octets

  • MB— mégaoctets

  • GB— gigaoctets

Par défaut : KB

logFileDirectoryPath

(Facultatif) Le chemin d'accès au dossier contenant les fichiers journaux de ce composant.

Il n'est pas nécessaire de spécifier ce paramètre pour les composants Greengrass qui impriment en sortie standard (stdout) et en erreur standard (stderr).

Par défaut: /greengrass/v2/logs.

logFileRegex

(Facultatif) Expression régulière qui spécifie le format de nom de fichier journal utilisé par le composant ou l'application. Le composant du gestionnaire de journaux utilise cette expression régulière pour identifier les fichiers journaux dans le dossier situé àlogFileDirectoryPath.

Il n'est pas nécessaire de spécifier ce paramètre pour les composants Greengrass qui impriment en sortie standard (stdout) et en erreur standard (stderr).

Si votre composant ou application fait pivoter les fichiers journaux, spécifiez une expression régulière correspondant aux noms des fichiers journaux pivotés. Par exemple, vous pouvez spécifier hello_world\\\\w*.log de télécharger les journaux d'une application Hello World. Le \\\\w* modèle correspond à zéro ou plusieurs caractères de mot, y compris les caractères alphanumériques et les traits de soulignement. Cette expression régulière fait correspondre les fichiers journaux avec et sans horodatage dans leur nom. Dans cet exemple, le gestionnaire de journaux télécharge les fichiers journaux suivants :

  • hello_world.log— Le fichier journal le plus récent de l'application Hello World.

  • hello_world_2020_12_15_17_0.log— Un ancien fichier journal de l'application Hello World.

Par défaut :componentName\\\\w*.log, où componentName est le nom du composant pour cette configuration de journal.

deleteLogFileAfterCloudUpload

(Facultatif) Vous pouvez supprimer un fichier journal une fois que le composant du gestionnaire de journaux a chargé les journaux dans CloudWatch Logs.

Par défaut : false

multiLineStartPattern

(Facultatif) Expression régulière qui identifie le moment où un message de journal sur une nouvelle ligne est un nouveau message de journal. Si l'expression régulière ne correspond pas à la nouvelle ligne, le composant du gestionnaire de journaux ajoute la nouvelle ligne au message de journal de la ligne précédente.

Par défaut, le composant du gestionnaire de journaux vérifie si la ligne commence par un caractère d'espace, tel qu'un onglet ou un espace. Si ce n'est pas le cas, le gestionnaire de journaux traite cette ligne comme un nouveau message de journal. Dans le cas contraire, il ajoute cette ligne au message du journal actuel. Ce comportement garantit que le composant du gestionnaire de journaux ne divise pas les messages qui s'étendent sur plusieurs lignes, tels que les traces de pile.

periodicUploadIntervalSec

(Facultatif) Période en secondes pendant laquelle le composant du gestionnaire de journaux vérifie la présence de nouveaux fichiers journaux à télécharger.

Par défaut : 300 (5 minutes)

Minimum : 0.000001 (1 microseconde)

deprecatedVersionSupport

Indique si le gestionnaire de journaux doit utiliser les améliorations de vitesse de journalisation introduites dans le gestionnaire de journaux v2.3.5. Définissez la valeur sur false pour utiliser les améliorations.

Si vous définissez cette valeur sur false lors de la mise à niveau depuis la version 2.3.1 ou une version antérieure du gestionnaire de journaux, des entrées de journal dupliquées peuvent être téléchargées.

L’argument par défaut est true.

Exemple : mise à jour de la fusion de configurations

L'exemple de configuration suivant indique de télécharger les journaux du système et les journaux des com.example.HelloWorld composants dans CloudWatch Logs.

{ "logsUploaderConfiguration": { "systemLogsConfiguration": { "uploadToCloudWatch": "true", "minimumLogLevel": "INFO", "diskSpaceLimit": "10", "diskSpaceLimitUnit": "MB", "deleteLogFileAfterCloudUpload": "false" }, "componentLogsConfigurationMap": { "com.example.HelloWorld": { "minimumLogLevel": "INFO", "diskSpaceLimit": "20", "diskSpaceLimitUnit": "MB", "deleteLogFileAfterCloudUpload": "false" } } }, "periodicUploadIntervalSec": "300", "deprecatedVersionSupport": "false" }
Exemple : Configuration pour télécharger plusieurs fichiers journaux actifs à l'aide du gestionnaire de journaux v2.3.1

L'exemple de configuration suivant est recommandé si vous souhaitez cibler plusieurs fichiers journaux actifs. Cet exemple de configuration indique dans quels fichiers journaux actifs vous souhaitez télécharger CloudWatch. À l'aide de cet exemple de configuration, la configuration téléchargera également tous les fichiers pivotés correspondant aulogFileRegex. Cet exemple de configuration est pris en charge sur le gestionnaire de journaux v2.3.1.

{ "logsUploaderConfiguration": { "componentLogsConfigurationMap": { "com.example.A": { "logFileRegex": "com.example.A\\w*.log", "deleteLogFileAfterCloudUpload": "false" } "com.example.B": { "logFileRegex": "com.example.B\\w*.log", "deleteLogFileAfterCloudUpload": "false" } } }, "periodicUploadIntervalSec": "10" }
v2.3.x
logsUploaderConfiguration

(Facultatif) Configuration des journaux que le composant du gestionnaire de journaux télécharge. Cet objet contient les informations suivantes :

systemLogsConfiguration

(Facultatif) Configuration des journaux du système du logiciel AWS IoT Greengrass Core, qui incluent les journaux du noyau Greengrass et des composants du plugin. Spécifiez cette configuration pour permettre au composant du gestionnaire de journaux de gérer les journaux système. Cet objet contient les informations suivantes :

uploadToCloudWatch

(Facultatif) Vous pouvez télécharger les journaux du système dans CloudWatch Logs.

Par défaut : false

minimumLogLevel

(Facultatif) Le niveau minimum de messages de journal à télécharger. Ce niveau minimum s'applique uniquement si vous configurez le composant Greengrass nucleus pour générer des journaux de JSON format. Pour activer les journaux de JSON format, spécifiez JSON le paramètre de format de journalisation (logging.format).

Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :

  • DEBUG

  • INFO

  • WARN

  • ERROR

Par défaut : INFO

diskSpaceLimit

(Facultatif) Taille totale maximale des fichiers journaux du système Greengrass, dans l'unité que vous spécifiez. diskSpaceLimitUnit Lorsque la taille totale des fichiers journaux du système Greengrass dépasse cette taille totale maximale, le logiciel AWS IoT Greengrass Core supprime les plus anciens fichiers journaux du système Greengrass.

Ce paramètre est équivalent au paramètre de limite de taille logarithmique (totalLogsSizeKB) du composant du noyau Greengrass. Le logiciel AWS IoT Greengrass Core utilise le minimum des deux valeurs comme taille maximale totale du journal du système Greengrass.

diskSpaceLimitUnit

(Facultatif) L'unité pour lediskSpaceLimit. Sélectionnez parmi les options suivantes :

  • KB— kilo-octets

  • MB— mégaoctets

  • GB— gigaoctets

Par défaut : KB

deleteLogFileAfterCloudUpload

(Facultatif) Vous pouvez supprimer un fichier journal une fois que le composant du gestionnaire de journaux a chargé les journaux dans CloudWatch Logs.

Par défaut : false

componentLogsConfigurationMap

(Facultatif) Carte des configurations de journal pour les composants du périphérique principal. Chaque componentName objet de cette carte définit la configuration du journal pour le composant ou l'application. Le composant du gestionnaire de journaux télécharge les journaux de ces composants dans CloudWatch Logs.

Important

Nous vous recommandons vivement d'utiliser une seule clé de configuration par composant. Vous ne devez cibler qu'un groupe de fichiers dont un seul fichier journal est activement écrit lorsque vous utilisez lelogFileRegex. Le non-respect de cette recommandation peut entraîner le téléchargement de journaux dupliqués vers CloudWatch. Si vous ciblez plusieurs fichiers journaux actifs avec une seule expression régulière, nous vous recommandons de passer à la version 2.3.1 du gestionnaire de journaux et d'envisager de modifier votre configuration à l'aide de l'exemple de configuration.

Note

Si vous effectuez une mise à niveau depuis une version du gestionnaire de journaux antérieure à la version 2.2.0, vous pouvez continuer à utiliser la componentLogsConfiguration liste au lieu de. componentLogsConfigurationMap Toutefois, nous vous recommandons vivement d'utiliser le format cartographique afin de pouvoir utiliser les mises à jour de fusion et de réinitialisation pour modifier les configurations de composants spécifiques. Pour plus d'informations sur le componentLogsConfiguration paramètre, consultez les paramètres de configuration pour la version 2.1.x de ce composant.

componentName

La configuration du journal pour componentName composant ou application pour cette configuration de journal. Vous pouvez spécifier le nom d'un composant Greengrass ou une autre valeur pour identifier ce groupe de logs.

Chaque objet contient les informations suivantes :

minimumLogLevel

(Facultatif) Le niveau minimum de messages de journal à télécharger. Ce niveau minimum s'applique uniquement si les journaux de ce composant utilisent un JSON format spécifique, que vous pouvez trouver dans le référentiel du module de AWS IoT Greengrass journalisation sur GitHub.

Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :

  • DEBUG

  • INFO

  • WARN

  • ERROR

Par défaut : INFO

diskSpaceLimit

(Facultatif) Taille totale maximale de tous les fichiers journaux pour ce composant, dans l'unité que vous spécifiezdiskSpaceLimitUnit. Lorsque la taille totale des fichiers journaux de ce composant dépasse cette taille totale maximale, le logiciel AWS IoT Greengrass Core supprime les fichiers journaux les plus anciens de ce composant.

Ce paramètre est lié au paramètre de limite de taille logarithmique (totalLogsSizeKB) du composant du noyau Greengrass. Le logiciel AWS IoT Greengrass Core utilise le minimum des deux valeurs comme taille maximale totale du journal pour ce composant.

diskSpaceLimitUnit

(Facultatif) L'unité pour lediskSpaceLimit. Sélectionnez parmi les options suivantes :

  • KB— kilo-octets

  • MB— mégaoctets

  • GB— gigaoctets

Par défaut : KB

logFileDirectoryPath

(Facultatif) Le chemin d'accès au dossier contenant les fichiers journaux de ce composant.

Il n'est pas nécessaire de spécifier ce paramètre pour les composants Greengrass qui impriment en sortie standard (stdout) et en erreur standard (stderr).

Par défaut: /greengrass/v2/logs.

logFileRegex

(Facultatif) Expression régulière qui spécifie le format de nom de fichier journal utilisé par le composant ou l'application. Le composant du gestionnaire de journaux utilise cette expression régulière pour identifier les fichiers journaux dans le dossier situé àlogFileDirectoryPath.

Il n'est pas nécessaire de spécifier ce paramètre pour les composants Greengrass qui impriment en sortie standard (stdout) et en erreur standard (stderr).

Si votre composant ou application fait pivoter les fichiers journaux, spécifiez une expression régulière correspondant aux noms des fichiers journaux pivotés. Par exemple, vous pouvez spécifier hello_world\\\\w*.log de télécharger les journaux d'une application Hello World. Le \\\\w* modèle correspond à zéro ou plusieurs caractères de mot, y compris les caractères alphanumériques et les traits de soulignement. Cette expression régulière fait correspondre les fichiers journaux avec et sans horodatage dans leur nom. Dans cet exemple, le gestionnaire de journaux télécharge les fichiers journaux suivants :

  • hello_world.log— Le fichier journal le plus récent de l'application Hello World.

  • hello_world_2020_12_15_17_0.log— Un ancien fichier journal de l'application Hello World.

Par défaut :componentName\\\\w*.log, où componentName est le nom du composant pour cette configuration de journal.

deleteLogFileAfterCloudUpload

(Facultatif) Vous pouvez supprimer un fichier journal une fois que le composant du gestionnaire de journaux a chargé les journaux dans CloudWatch Logs.

Par défaut : false

multiLineStartPattern

(Facultatif) Expression régulière qui identifie le moment où un message de journal sur une nouvelle ligne est un nouveau message de journal. Si l'expression régulière ne correspond pas à la nouvelle ligne, le composant du gestionnaire de journaux ajoute la nouvelle ligne au message de journal de la ligne précédente.

Par défaut, le composant du gestionnaire de journaux vérifie si la ligne commence par un caractère d'espace, tel qu'un onglet ou un espace. Si ce n'est pas le cas, le gestionnaire de journaux traite cette ligne comme un nouveau message de journal. Dans le cas contraire, il ajoute cette ligne au message du journal actuel. Ce comportement garantit que le composant du gestionnaire de journaux ne divise pas les messages qui s'étendent sur plusieurs lignes, tels que les traces de pile.

periodicUploadIntervalSec

(Facultatif) Période en secondes pendant laquelle le composant du gestionnaire de journaux vérifie la présence de nouveaux fichiers journaux à télécharger.

Par défaut : 300 (5 minutes)

Minimum : 0.000001 (1 microseconde)

Exemple : mise à jour de la fusion de configurations

L'exemple de configuration suivant indique de télécharger les journaux du système et les journaux des com.example.HelloWorld composants dans CloudWatch Logs.

{ "logsUploaderConfiguration": { "systemLogsConfiguration": { "uploadToCloudWatch": "true", "minimumLogLevel": "INFO", "diskSpaceLimit": "10", "diskSpaceLimitUnit": "MB", "deleteLogFileAfterCloudUpload": "false" }, "componentLogsConfigurationMap": { "com.example.HelloWorld": { "minimumLogLevel": "INFO", "diskSpaceLimit": "20", "diskSpaceLimitUnit": "MB", "deleteLogFileAfterCloudUpload": "false" } } }, "periodicUploadIntervalSec": "300" }
Exemple : Configuration pour télécharger plusieurs fichiers journaux actifs à l'aide du gestionnaire de journaux v2.3.1

L'exemple de configuration suivant est recommandé si vous souhaitez cibler plusieurs fichiers journaux actifs. Cet exemple de configuration indique dans quels fichiers journaux actifs vous souhaitez télécharger CloudWatch. À l'aide de cet exemple de configuration, la configuration téléchargera également tous les fichiers pivotés correspondant aulogFileRegex. Cet exemple de configuration est pris en charge sur le gestionnaire de journaux v2.3.1.

{ "logsUploaderConfiguration": { "componentLogsConfigurationMap": { "com.example.A": { "logFileRegex": "com.example.A\\w*.log", "deleteLogFileAfterCloudUpload": "false" } "com.example.B": { "logFileRegex": "com.example.B\\w*.log", "deleteLogFileAfterCloudUpload": "false" } } }, "periodicUploadIntervalSec": "10" }
v2.2.x
logsUploaderConfiguration

(Facultatif) Configuration des journaux que le composant du gestionnaire de journaux télécharge. Cet objet contient les informations suivantes :

systemLogsConfiguration

(Facultatif) Configuration des journaux du système du logiciel AWS IoT Greengrass Core, qui incluent les journaux du noyau Greengrass et des composants du plugin. Spécifiez cette configuration pour permettre au composant du gestionnaire de journaux de gérer les journaux système. Cet objet contient les informations suivantes :

uploadToCloudWatch

(Facultatif) Vous pouvez télécharger les journaux du système dans CloudWatch Logs.

Par défaut : false

minimumLogLevel

(Facultatif) Le niveau minimum de messages de journal à télécharger. Ce niveau minimum s'applique uniquement si vous configurez le composant Greengrass nucleus pour générer des journaux de JSON format. Pour activer les journaux de JSON format, spécifiez JSON le paramètre de format de journalisation (logging.format).

Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :

  • DEBUG

  • INFO

  • WARN

  • ERROR

Par défaut : INFO

diskSpaceLimit

(Facultatif) Taille totale maximale des fichiers journaux du système Greengrass, dans l'unité que vous spécifiez. diskSpaceLimitUnit Lorsque la taille totale des fichiers journaux du système Greengrass dépasse cette taille totale maximale, le logiciel AWS IoT Greengrass Core supprime les plus anciens fichiers journaux du système Greengrass.

Ce paramètre est équivalent au paramètre de limite de taille logarithmique (totalLogsSizeKB) du composant du noyau Greengrass. Le logiciel AWS IoT Greengrass Core utilise le minimum des deux valeurs comme taille maximale totale du journal du système Greengrass.

diskSpaceLimitUnit

(Facultatif) L'unité pour lediskSpaceLimit. Sélectionnez parmi les options suivantes :

  • KB— kilo-octets

  • MB— mégaoctets

  • GB— gigaoctets

Par défaut : KB

deleteLogFileAfterCloudUpload

(Facultatif) Vous pouvez supprimer un fichier journal une fois que le composant du gestionnaire de journaux a chargé les journaux dans CloudWatch Logs.

Par défaut : false

componentLogsConfigurationMap

(Facultatif) Carte des configurations de journal pour les composants du périphérique principal. Chaque componentName objet de cette carte définit la configuration du journal pour le composant ou l'application. Le composant du gestionnaire de journaux télécharge les journaux de ces composants dans CloudWatch Logs.

Note

Si vous effectuez une mise à niveau depuis une version du gestionnaire de journaux antérieure à la version 2.2.0, vous pouvez continuer à utiliser la componentLogsConfiguration liste au lieu de. componentLogsConfigurationMap Toutefois, nous vous recommandons vivement d'utiliser le format cartographique afin de pouvoir utiliser les mises à jour de fusion et de réinitialisation pour modifier les configurations de composants spécifiques. Pour plus d'informations sur le componentLogsConfiguration paramètre, consultez les paramètres de configuration pour la version 2.1.x de ce composant.

componentName

La configuration du journal pour componentName composant ou application pour cette configuration de journal. Vous pouvez spécifier le nom d'un composant Greengrass ou une autre valeur pour identifier ce groupe de logs.

Chaque objet contient les informations suivantes :

minimumLogLevel

(Facultatif) Le niveau minimum de messages de journal à télécharger. Ce niveau minimum s'applique uniquement si les journaux de ce composant utilisent un JSON format spécifique, que vous pouvez trouver dans le référentiel du module de AWS IoT Greengrass journalisation sur GitHub.

Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :

  • DEBUG

  • INFO

  • WARN

  • ERROR

Par défaut : INFO

diskSpaceLimit

(Facultatif) Taille totale maximale de tous les fichiers journaux pour ce composant, dans l'unité que vous spécifiezdiskSpaceLimitUnit. Lorsque la taille totale des fichiers journaux de ce composant dépasse cette taille totale maximale, le logiciel AWS IoT Greengrass Core supprime les fichiers journaux les plus anciens de ce composant.

Ce paramètre est lié au paramètre de limite de taille logarithmique (totalLogsSizeKB) du composant du noyau Greengrass. Le logiciel AWS IoT Greengrass Core utilise le minimum des deux valeurs comme taille maximale totale du journal pour ce composant.

diskSpaceLimitUnit

(Facultatif) L'unité pour lediskSpaceLimit. Sélectionnez parmi les options suivantes :

  • KB— kilo-octets

  • MB— mégaoctets

  • GB— gigaoctets

Par défaut : KB

logFileDirectoryPath

(Facultatif) Le chemin d'accès au dossier contenant les fichiers journaux de ce composant.

Il n'est pas nécessaire de spécifier ce paramètre pour les composants Greengrass qui impriment en sortie standard (stdout) et en erreur standard (stderr).

Par défaut: /greengrass/v2/logs.

logFileRegex

(Facultatif) Expression régulière qui spécifie le format de nom de fichier journal utilisé par le composant ou l'application. Le composant du gestionnaire de journaux utilise cette expression régulière pour identifier les fichiers journaux dans le dossier situé àlogFileDirectoryPath.

Il n'est pas nécessaire de spécifier ce paramètre pour les composants Greengrass qui impriment en sortie standard (stdout) et en erreur standard (stderr).

Si votre composant ou application fait pivoter les fichiers journaux, spécifiez une expression régulière correspondant aux noms des fichiers journaux pivotés. Par exemple, vous pouvez spécifier hello_world\\\\w*.log de télécharger les journaux d'une application Hello World. Le \\\\w* modèle correspond à zéro ou plusieurs caractères de mot, y compris les caractères alphanumériques et les traits de soulignement. Cette expression régulière fait correspondre les fichiers journaux avec et sans horodatage dans leur nom. Dans cet exemple, le gestionnaire de journaux télécharge les fichiers journaux suivants :

  • hello_world.log— Le fichier journal le plus récent de l'application Hello World.

  • hello_world_2020_12_15_17_0.log— Un ancien fichier journal de l'application Hello World.

Par défaut :componentName\\\\w*.log, où componentName est le nom du composant pour cette configuration de journal.

deleteLogFileAfterCloudUpload

(Facultatif) Vous pouvez supprimer un fichier journal une fois que le composant du gestionnaire de journaux a chargé les journaux dans CloudWatch Logs.

Par défaut : false

multiLineStartPattern

(Facultatif) Expression régulière qui identifie le moment où un message de journal sur une nouvelle ligne est un nouveau message de journal. Si l'expression régulière ne correspond pas à la nouvelle ligne, le composant du gestionnaire de journaux ajoute la nouvelle ligne au message de journal de la ligne précédente.

Par défaut, le composant du gestionnaire de journaux vérifie si la ligne commence par un caractère d'espace, tel qu'un onglet ou un espace. Si ce n'est pas le cas, le gestionnaire de journaux traite cette ligne comme un nouveau message de journal. Dans le cas contraire, il ajoute cette ligne au message du journal actuel. Ce comportement garantit que le composant du gestionnaire de journaux ne divise pas les messages qui s'étendent sur plusieurs lignes, tels que les traces de pile.

periodicUploadIntervalSec

(Facultatif) Période en secondes pendant laquelle le composant du gestionnaire de journaux vérifie la présence de nouveaux fichiers journaux à télécharger.

Par défaut : 300 (5 minutes)

Minimum : 0.000001 (1 microseconde)

Exemple : mise à jour de la fusion de configurations

L'exemple de configuration suivant indique de télécharger les journaux du système et les journaux des com.example.HelloWorld composants dans CloudWatch Logs.

{ "logsUploaderConfiguration": { "systemLogsConfiguration": { "uploadToCloudWatch": "true", "minimumLogLevel": "INFO", "diskSpaceLimit": "10", "diskSpaceLimitUnit": "MB", "deleteLogFileAfterCloudUpload": "false" }, "componentLogsConfigurationMap": { "com.example.HelloWorld": { "minimumLogLevel": "INFO", "diskSpaceLimit": "20", "diskSpaceLimitUnit": "MB", "deleteLogFileAfterCloudUpload": "false" } } }, "periodicUploadIntervalSec": "300" }
v2.1.x
logsUploaderConfiguration

(Facultatif) Configuration des journaux que le composant du gestionnaire de journaux télécharge. Cet objet contient les informations suivantes :

systemLogsConfiguration

(Facultatif) Configuration des journaux du système du logiciel AWS IoT Greengrass Core, qui incluent les journaux du noyau Greengrass et des composants du plugin. Spécifiez cette configuration pour permettre au composant du gestionnaire de journaux de gérer les journaux système. Cet objet contient les informations suivantes :

uploadToCloudWatch

(Facultatif) Vous pouvez télécharger les journaux du système dans CloudWatch Logs.

Par défaut : false

minimumLogLevel

(Facultatif) Le niveau minimum de messages de journal à télécharger. Ce niveau minimum s'applique uniquement si vous configurez le composant Greengrass nucleus pour générer des journaux de JSON format. Pour activer les journaux de JSON format, spécifiez JSON le paramètre de format de journalisation (logging.format).

Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :

  • DEBUG

  • INFO

  • WARN

  • ERROR

Par défaut : INFO

diskSpaceLimit

(Facultatif) Taille totale maximale des fichiers journaux du système Greengrass, dans l'unité que vous spécifiez. diskSpaceLimitUnit Lorsque la taille totale des fichiers journaux du système Greengrass dépasse cette taille totale maximale, le logiciel AWS IoT Greengrass Core supprime les plus anciens fichiers journaux du système Greengrass.

Ce paramètre est équivalent au paramètre de limite de taille logarithmique (totalLogsSizeKB) du composant du noyau Greengrass. Le logiciel AWS IoT Greengrass Core utilise le minimum des deux valeurs comme taille maximale totale du journal du système Greengrass.

diskSpaceLimitUnit

(Facultatif) L'unité pour lediskSpaceLimit. Sélectionnez parmi les options suivantes :

  • KB— kilo-octets

  • MB— mégaoctets

  • GB— gigaoctets

Par défaut : KB

deleteLogFileAfterCloudUpload

(Facultatif) Vous pouvez supprimer un fichier journal une fois que le composant du gestionnaire de journaux a chargé les journaux dans CloudWatch Logs.

Par défaut : false

componentLogsConfiguration

(Facultatif) Liste des configurations de journal pour les composants du périphérique principal. Chaque configuration de cette liste définit la configuration du journal pour un composant ou une application. Le composant du gestionnaire de journaux télécharge les journaux de ces composants dans Logs. CloudWatch

Chaque objet contient les informations suivantes :

componentName

Nom du composant ou de l'application pour cette configuration de journal. Vous pouvez spécifier le nom d'un composant Greengrass ou une autre valeur pour identifier ce groupe de logs.

minimumLogLevel

(Facultatif) Le niveau minimum de messages de journal à télécharger. Ce niveau minimum s'applique uniquement si les journaux de ce composant utilisent un JSON format spécifique, que vous pouvez trouver dans le référentiel du module de AWS IoT Greengrass journalisation sur GitHub.

Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :

  • DEBUG

  • INFO

  • WARN

  • ERROR

Par défaut : INFO

diskSpaceLimit

(Facultatif) Taille totale maximale de tous les fichiers journaux pour ce composant, dans l'unité que vous spécifiezdiskSpaceLimitUnit. Lorsque la taille totale des fichiers journaux de ce composant dépasse cette taille totale maximale, le logiciel AWS IoT Greengrass Core supprime les fichiers journaux les plus anciens de ce composant.

Ce paramètre est lié au paramètre de limite de taille logarithmique (totalLogsSizeKB) du composant du noyau Greengrass. Le logiciel AWS IoT Greengrass Core utilise le minimum des deux valeurs comme taille maximale totale du journal pour ce composant.

diskSpaceLimitUnit

(Facultatif) L'unité pour lediskSpaceLimit. Sélectionnez parmi les options suivantes :

  • KB— kilo-octets

  • MB— mégaoctets

  • GB— gigaoctets

Par défaut : KB

logFileDirectoryPath

(Facultatif) Le chemin d'accès au dossier contenant les fichiers journaux de ce composant.

Il n'est pas nécessaire de spécifier ce paramètre pour les composants Greengrass qui impriment en sortie standard (stdout) et en erreur standard (stderr).

Par défaut: /greengrass/v2/logs.

logFileRegex

(Facultatif) Expression régulière qui spécifie le format de nom de fichier journal utilisé par le composant ou l'application. Le composant du gestionnaire de journaux utilise cette expression régulière pour identifier les fichiers journaux dans le dossier situé àlogFileDirectoryPath.

Il n'est pas nécessaire de spécifier ce paramètre pour les composants Greengrass qui impriment en sortie standard (stdout) et en erreur standard (stderr).

Si votre composant ou application fait pivoter les fichiers journaux, spécifiez une expression régulière correspondant aux noms des fichiers journaux pivotés. Par exemple, vous pouvez spécifier hello_world\\\\w*.log de télécharger les journaux d'une application Hello World. Le \\\\w* modèle correspond à zéro ou plusieurs caractères de mot, y compris les caractères alphanumériques et les traits de soulignement. Cette expression régulière fait correspondre les fichiers journaux avec et sans horodatage dans leur nom. Dans cet exemple, le gestionnaire de journaux télécharge les fichiers journaux suivants :

  • hello_world.log— Le fichier journal le plus récent de l'application Hello World.

  • hello_world_2020_12_15_17_0.log— Un ancien fichier journal de l'application Hello World.

Par défaut :componentName\\\\w*.log, où componentName est le nom du composant pour cette configuration de journal.

deleteLogFileAfterCloudUpload

(Facultatif) Vous pouvez supprimer un fichier journal une fois que le composant du gestionnaire de journaux a chargé les journaux dans CloudWatch Logs.

Par défaut : false

multiLineStartPattern

(Facultatif) Expression régulière qui identifie le moment où un message de journal sur une nouvelle ligne est un nouveau message de journal. Si l'expression régulière ne correspond pas à la nouvelle ligne, le composant du gestionnaire de journaux ajoute la nouvelle ligne au message de journal de la ligne précédente.

Par défaut, le composant du gestionnaire de journaux vérifie si la ligne commence par un caractère d'espace, tel qu'un onglet ou un espace. Si ce n'est pas le cas, le gestionnaire de journaux traite cette ligne comme un nouveau message de journal. Dans le cas contraire, il ajoute cette ligne au message du journal actuel. Ce comportement garantit que le composant du gestionnaire de journaux ne divise pas les messages qui s'étendent sur plusieurs lignes, tels que les traces de pile.

periodicUploadIntervalSec

(Facultatif) Période en secondes pendant laquelle le composant du gestionnaire de journaux vérifie la présence de nouveaux fichiers journaux à télécharger.

Par défaut : 300 (5 minutes)

Minimum : 0.000001 (1 microseconde)

Exemple : mise à jour de la fusion de configurations

L'exemple de configuration suivant indique de télécharger les journaux du système et les journaux des com.example.HelloWorld composants dans CloudWatch Logs.

{ "logsUploaderConfiguration": { "systemLogsConfiguration": { "uploadToCloudWatch": "true", "minimumLogLevel": "INFO", "diskSpaceLimit": "10", "diskSpaceLimitUnit": "MB", "deleteLogFileAfterCloudUpload": "false" }, "componentLogsConfiguration": [ { "componentName": "com.example.HelloWorld", "minimumLogLevel": "INFO", "diskSpaceLimit": "20", "diskSpaceLimitUnit": "MB", "deleteLogFileAfterCloudUpload": "false" } ] }, "periodicUploadIntervalSec": "300" }
v2.0.x
logsUploaderConfiguration

(Facultatif) Configuration des journaux que le composant du gestionnaire de journaux télécharge. Cet objet contient les informations suivantes :

systemLogsConfiguration

(Facultatif) Configuration des journaux du système du logiciel AWS IoT Greengrass Core. Spécifiez cette configuration pour permettre au composant du gestionnaire de journaux de gérer les journaux système. Cet objet contient les informations suivantes :

uploadToCloudWatch

(Facultatif) Vous pouvez télécharger les journaux du système dans CloudWatch Logs.

Par défaut : false

minimumLogLevel

(Facultatif) Le niveau minimum de messages de journal à télécharger. Ce niveau minimum s'applique uniquement si vous configurez le composant Greengrass nucleus pour générer des journaux de JSON format. Pour activer les journaux de JSON format, spécifiez JSON le paramètre de format de journalisation (logging.format).

Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :

  • DEBUG

  • INFO

  • WARN

  • ERROR

Par défaut : INFO

diskSpaceLimit

(Facultatif) Taille totale maximale des fichiers journaux du système Greengrass, dans l'unité que vous spécifiez. diskSpaceLimitUnit Lorsque la taille totale des fichiers journaux du système Greengrass dépasse cette taille totale maximale, le logiciel AWS IoT Greengrass Core supprime les plus anciens fichiers journaux du système Greengrass.

Ce paramètre est équivalent au paramètre de limite de taille logarithmique (totalLogsSizeKB) du composant du noyau Greengrass. Le logiciel AWS IoT Greengrass Core utilise le minimum des deux valeurs comme taille maximale totale du journal du système Greengrass.

diskSpaceLimitUnit

(Facultatif) L'unité pour lediskSpaceLimit. Sélectionnez parmi les options suivantes :

  • KB— kilo-octets

  • MB— mégaoctets

  • GB— gigaoctets

Par défaut : KB

deleteLogFileAfterCloudUpload

(Facultatif) Vous pouvez supprimer un fichier journal une fois que le composant du gestionnaire de journaux a chargé les journaux dans CloudWatch Logs.

Par défaut : false

componentLogsConfiguration

(Facultatif) Liste des configurations de journal pour les composants du périphérique principal. Chaque configuration de cette liste définit la configuration du journal pour un composant ou une application. Le composant du gestionnaire de journaux télécharge les journaux de ces composants dans Logs. CloudWatch

Chaque objet contient les informations suivantes :

componentName

Nom du composant ou de l'application pour cette configuration de journal. Vous pouvez spécifier le nom d'un composant Greengrass ou une autre valeur pour identifier ce groupe de logs.

minimumLogLevel

(Facultatif) Le niveau minimum de messages de journal à télécharger. Ce niveau minimum s'applique uniquement si les journaux de ce composant utilisent un JSON format spécifique, que vous pouvez trouver dans le référentiel du module de AWS IoT Greengrass journalisation sur GitHub.

Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :

  • DEBUG

  • INFO

  • WARN

  • ERROR

Par défaut : INFO

diskSpaceLimit

(Facultatif) Taille totale maximale de tous les fichiers journaux pour ce composant, dans l'unité que vous spécifiezdiskSpaceLimitUnit. Lorsque la taille totale des fichiers journaux de ce composant dépasse cette taille totale maximale, le logiciel AWS IoT Greengrass Core supprime les fichiers journaux les plus anciens de ce composant.

Ce paramètre est lié au paramètre de limite de taille logarithmique (totalLogsSizeKB) du composant du noyau Greengrass. Le logiciel AWS IoT Greengrass Core utilise le minimum des deux valeurs comme taille maximale totale du journal pour ce composant.

diskSpaceLimitUnit

(Facultatif) L'unité pour lediskSpaceLimit. Sélectionnez parmi les options suivantes :

  • KB— kilo-octets

  • MB— mégaoctets

  • GB— gigaoctets

Par défaut : KB

logFileDirectoryPath

Le chemin d'accès au dossier contenant les fichiers journaux de ce composant.

Pour télécharger les journaux d'un composant Greengrass/greengrass/v2/logs, spécifiez-le et remplacez-le par votre dossier /greengrass/v2 racine Greengrass.

logFileRegex

Expression régulière qui spécifie le format de nom de fichier journal utilisé par le composant ou l'application. Le composant du gestionnaire de journaux utilise cette expression régulière pour identifier les fichiers journaux dans le dossier situé àlogFileDirectoryPath.

Pour télécharger les journaux d'un composant Greengrass, spécifiez une expression régulière correspondant aux noms des fichiers journaux pivotés. Par exemple, vous pouvez spécifier com.example.HelloWorld\\w*.log de télécharger les journaux d'un composant Hello World. Le \\w* modèle correspond à zéro ou plusieurs caractères de mot, y compris les caractères alphanumériques et les traits de soulignement. Cette expression régulière fait correspondre les fichiers journaux avec et sans horodatage dans leur nom. Dans cet exemple, le gestionnaire de journaux télécharge les fichiers journaux suivants :

  • com.example.HelloWorld.log— Le fichier journal le plus récent pour le composant Hello World.

  • com.example.HelloWorld_2020_12_15_17_0.log— Un ancien fichier journal pour le composant Hello World. Le noyau Greengrass ajoute un horodatage rotatif aux fichiers journaux.

deleteLogFileAfterCloudUpload

(Facultatif) Vous pouvez supprimer un fichier journal une fois que le composant du gestionnaire de journaux a chargé les journaux dans CloudWatch Logs.

Par défaut : false

multiLineStartPattern

(Facultatif) Expression régulière qui identifie le moment où un message de journal sur une nouvelle ligne est un nouveau message de journal. Si l'expression régulière ne correspond pas à la nouvelle ligne, le composant du gestionnaire de journaux ajoute la nouvelle ligne au message de journal de la ligne précédente.

Par défaut, le composant du gestionnaire de journaux vérifie si la ligne commence par un caractère d'espace, tel qu'un onglet ou un espace. Si ce n'est pas le cas, le gestionnaire de journaux traite cette ligne comme un nouveau message de journal. Dans le cas contraire, il ajoute cette ligne au message du journal actuel. Ce comportement garantit que le composant du gestionnaire de journaux ne divise pas les messages qui s'étendent sur plusieurs lignes, tels que les traces de pile.

periodicUploadIntervalSec

(Facultatif) Période en secondes pendant laquelle le composant du gestionnaire de journaux vérifie la présence de nouveaux fichiers journaux à télécharger.

Par défaut : 300 (5 minutes)

Minimum : 0.000001 (1 microseconde)

Exemple : mise à jour de la fusion de configurations

L'exemple de configuration suivant indique de télécharger les journaux du système et les journaux des com.example.HelloWorld composants dans CloudWatch Logs.

{ "logsUploaderConfiguration": { "systemLogsConfiguration": { "uploadToCloudWatch": "true", "minimumLogLevel": "INFO", "diskSpaceLimit": "10", "diskSpaceLimitUnit": "MB", "deleteLogFileAfterCloudUpload": "false" }, "componentLogsConfiguration": [ { "componentName": "com.example.HelloWorld", "minimumLogLevel": "INFO", "logFileDirectoryPath": "/greengrass/v2/logs", "logFileRegex": "com.example.HelloWorld\\w*.log", "diskSpaceLimit": "20", "diskSpaceLimitUnit": "MB", "deleteLogFileAfterCloudUpload": "false" } ] }, "periodicUploadIntervalSec": "300" }

Utilisation

Le composant du gestionnaire de journaux est chargé vers les groupes de journaux et les flux de journaux suivants.

2.1.0 and later
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 de la même manière 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 de plus amples informations, veuillez consulter 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, telle que2020/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 (+).

2.0.x
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— Le composant fait partie du noyau de Greengrass.

    • UserComponent— Le composant ne fait pas partie du noyau de Greengrass. Le gestionnaire de journaux utilise ce type pour les composants Greengrass et les autres applications de l'appareil.

  • 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/deploymentTargets/thingName

Le nom du flux de journal utilise les variables suivantes :

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

  • deploymentTargets— Les objets dont les déploiements incluent le composant. Le composant du gestionnaire de journaux sépare chaque cible par une barre oblique. Si le composant s'exécute sur le périphérique principal à la suite d'un déploiement local, cette valeur estLOCAL_DEPLOYMENT.

    Prenons un exemple où vous avez un périphérique principal nommé MyGreengrassCore et où le périphérique principal a deux déploiements :

    • Un déploiement qui cible le périphérique principal,MyGreengrassCore.

    • Un déploiement qui cible un groupe d'objets nomméMyGreengrassCoreGroup, qui contient le périphérique principal.

    Les deploymentTargets pour cet appareil principal sontthing/MyGreengrassCore/thinggroup/MyGreengrassCoreGroup.

  • thingName— Le nom de l'appareil principal.

Formats pour les entrées du journal.

Le noyau Greengrass écrit les fichiers journaux sous forme de chaîne ou JSON de format. Pour les journaux système, vous pouvez contrôler le format en définissant le format champ de l'loggingentrée. Vous pouvez trouver l'loggingentrée dans le fichier de configuration du composant Greengrass nucleus. Pour plus d'informations, consultez la section Configuration du noyau de Greengrass.

Le format de texte est de forme libre et accepte n'importe quelle chaîne. Le message de service d'état du parc suivant est un exemple de journalisation au format chaîne :

2023-03-26T18:18:27.271Z [INFO] (pool-1-thread-2) com.aws.greengrass.status.FleetStatusService: fss-status-update-published. Status update published to FSS. {trigger=CADENCE, serviceName=FleetStatusService, currentState=RUNNING}

Vous devez utiliser ce JSON format si vous souhaitez afficher les journaux à l'aide de la commande Greengrass CLI logs ou interagir avec les journaux par programmation. L'exemple suivant décrit la JSON forme :

{ "loggerName": <string>, "level": <"DEBUG" | "INFO" | "ERROR" | "TRACE" | "WARN">, "eventType": <string, optional>, "cause": <string, optional>, "contexts": {}, "thread": <string>, "message": <string>, "timestamp": <epoch time> # Needs to be epoch time }

Pour contrôler la sortie des journaux de votre composant, vous pouvez utiliser l'option minimumLogLevel de configuration. Pour utiliser cette option, votre composant doit écrire ses entrées de journal au JSON format. Vous devez utiliser le même format que le fichier journal du système.

Fichier journal local

Ce composant utilise le même fichier journal que le composant Greengrass nucleus.

Linux
/greengrass/v2/logs/greengrass.log
Windows
C:\greengrass\v2\logs\greengrass.log
Pour consulter les journaux de ce composant
  • Exécutez la commande suivante sur le périphérique principal pour afficher le fichier journal de ce composant en temps réel. Remplacer /greengrass/v2 ou C:\greengrass\v2 avec le chemin d'accès au dossier AWS IoT Greengrass racine.

    Linux
    sudo tail -f /greengrass/v2/logs/greengrass.log
    Windows (PowerShell)
    Get-Content C:\greengrass\v2\logs\greengrass.log -Tail 10 -Wait

Journal des modifications

Le tableau suivant décrit les modifications apportées à chaque version du composant.

Version

Modifications

2.3.8

Version mise à jour pour la version 2.13.0 de Greengrass Nucleus.

2.3.7

Version mise à jour pour la version 2.12.0 de Greengrass Nucleus.

2.3.6

Corrections de bogues et améliorations
  • Ajuste les niveaux de journalisation pour certaines erreurs.

2.3.5

Améliorations

Améliore la vitesse de téléchargement des journaux.

Version mise à jour pour la version 2.11.0 de Greengrass Nucleus.

2.3.4

Corrections de bogues et améliorations
  • Permet de définir le periodicUploadIntervalSec paramètre sur des valeurs fractionnaires. Le minimum est de 1 microseconde.

  • Résout un problème en raison duquel le gestionnaire de journaux ne respectait pas les CloudWatch putLogEvents limites.

2.3.3

Version mise à jour pour la version 2.10.0 de Greengrass Nucleus.

2.3.2

Corrections de bogues et améliorations
  • Améliore la gestion de l'espace afin que les fichiers journaux ne soient pas supprimés avant leur téléchargement.

  • Résout les problèmes liés à la gestion du cache.

  • Corrections de bogues et améliorations mineures supplémentaires.

2.3.1

Corrections de bogues et améliorations
  • Résout un problème selon lequel les groupes de fichiers cibles contenant plusieurs fichiers journaux actifs téléchargeaient des entrées dupliquées vers CloudWatch.

  • Corrections de bogues et améliorations mineures supplémentaires.

2.3.0

Note

Nous vous recommandons de passer à Greengrass nucleus 2.9.1 lors de la mise à niveau vers le gestionnaire de journaux 2.3.0.

Nouvelles fonctionnalités

Réduit les délais de journalisation en traitant et en téléchargeant directement les fichiers journaux actifs au lieu d'attendre la rotation des nouveaux fichiers.

Corrections de bogues et améliorations
  • Améliore la prise en charge de la rotation des journaux lors de la rotation de fichiers portant un nom unique.

  • Corrections de bogues et améliorations mineures supplémentaires.

2.2.8

Version mise à jour pour la version 2.9.0 de Greengrass Nucleus.

2.2.7

Version mise à jour pour la version 2.8.0 de Greengrass Nucleus.

2.2.6

Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.

2.2.5

Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.

2.2.4

Corrections de bogues et améliorations
  • Améliore la stabilité lors de la gestion de configurations non valides.

  • Corrections et améliorations mineures supplémentaires.

2.2.3

Corrections de bogues et améliorations
  • Améliore la stabilité dans certains scénarios où le composant redémarre ou rencontre des erreurs.

  • Résout les problèmes liés à l'échec du téléchargement de messages et de fichiers journaux volumineux dans certains scénarios.

  • Résout les problèmes liés à la façon dont ce composant gère les mises à jour de réinitialisation de configuration.

  • Résout un problème où une valeur null diskSpaceLimit de configuration empêchait le déploiement du composant.

2.2.2

Corrections de bogues et améliorations
  • Ajoute la prise en charge des messages de journal d'une taille supérieure à 256 kilo-octets. Le composant du gestionnaire de journaux divise ces messages de journal volumineux en plusieurs messages portant le même horodatage des événements de journal.

2.2.1

Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.

2.2.0

Nouvelle fonctionnalité
  • Ajoute le paramètre componentLogsConfigurationMap de configuration pour prendre en charge un format de carte pour les configurations du journal des composants. Chaque componentName objet de la carte définit la configuration du journal pour un composant ou une application.

2.1.3

Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.

2.1.2

Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.

2.1.1

Corrections de bogues et améliorations
  • Résout un problème en raison duquel la configuration du journal système n'était pas mise à jour dans certains cas.

2.1.0

Corrections de bogues et améliorations
  • Utilisez des valeurs par défaut pour logFileDirectoryPath et logFileRegex qui fonctionnent pour les composants Greengrass qui impriment en sortie standard (stdout) et en erreur standard (stderr).

  • Acheminez correctement le trafic via un proxy réseau configuré lors du téléchargement des CloudWatch journaux vers Logs.

  • Gérez correctement les caractères deux-points (:) dans les noms des flux de log. CloudWatch Les noms des flux de journaux ne prennent pas en charge les deux-points.

  • Simplifiez les noms des flux de journaux en supprimant les noms de groupes d'objets du flux de journaux.

  • Supprimez un message du journal des erreurs qui s'imprime lors d'un comportement normal.

2,0.x

Première version.