

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-composants fournis
<a name="public-components"></a>

AWS IoT Greengrass fournit et gère des composants prédéfinis que vous pouvez déployer sur vos appareils. Ces composants incluent des fonctionnalités (telles que le gestionnaire de flux), des connecteurs AWS IoT Greengrass V1 (tels que CloudWatch les métriques) et des outils de développement locaux (tels que la AWS IoT Greengrass CLI). Vous pouvez [déployer ces composants](manage-deployments.md) sur vos appareils pour leur fonctionnalité autonome, ou vous pouvez les utiliser comme dépendances dans vos composants [Greengrass personnalisés](develop-greengrass-components.md).

**Note**  <a name="component-nucleus-dependency-update-note"></a>
Plusieurs composants AWS fournis dépendent de versions mineures spécifiques du noyau Greengrass. En raison de cette dépendance, vous devez mettre à jour ces composants lorsque vous mettez à jour le noyau Greengrass vers une nouvelle version mineure. Pour plus d'informations sur les versions spécifiques du noyau dont dépend chaque composant, consultez la rubrique correspondante sur les composants. Pour plus d'informations sur la mise à jour du noyau, consultez[Mettre à jour le logiciel AWS IoT Greengrass principal (OTA)](update-greengrass-core-v2.md).

<a name="component-table-type-description"></a>Lorsqu'un composant possède un type de composant à la fois générique et Lambda, la version actuelle du composant est le type générique et une version précédente du composant est le type Lambda.


| Composant | Description | [Type de composant](develop-greengrass-components.md#component-types) | Systèmes d'exploitation pris en charge | [Open source](open-source.md) | Compatibilité avec Nucleus Lite | 
| --- | --- | --- | --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | Le noyau du logiciel AWS IoT Greengrass Core. Utilisez ce composant pour configurer et mettre à jour le logiciel sur vos appareils principaux. | Noyau | Linux, Windows | [Oui](https://github.com/aws-greengrass/aws-greengrass-nucleus) | Non | 
| [Greengrass Nucleus Lite](greengrass-nucleus-lite-component.md) | Un noyau léger pour les appareils aux ressources limitées, optimisé pour les appareils périphériques à faible coût et les applications à volume élevé | NucleusLite | Linux | [Oui](https://github.com/aws-greengrass/aws-greengrass-lite) | Non | 
| <a name="client-device-auth-component-table-row"></a>[Authentification de l'appareil client](client-device-auth-component.md) | Permet aux appareils IoT locaux, appelés appareils clients, de se connecter à l'appareil principal. | Plugin | Linux, Windows | [Oui](https://github.com/aws-greengrass/aws-greengrass-client-device-auth) | Non | 
| [CloudWatch métriques](cloudwatch-metrics-component.md) | Publie des statistiques personnalisées sur Amazon CloudWatch. | Générique, Lambda | Linux, Windows | [Oui](https://github.com/aws-greengrass/aws-greengrass-cloudwatch-metrics) | Oui | 
| [AWS IoT Device Defender](device-defender-component.md) | Informe les administrateurs des modifications de l'état de l'appareil principal Greengrass afin d'identifier les comportements inhabituels. | Générique, Lambda | Linux, Windows | [Oui](https://github.com/aws-greengrass/aws-greengrass-device-defender) | Non | 
| [spouleur à disque](disk-spooler-component.md) | Active une option de stockage permanent pour les messages envoyés depuis les appareils principaux de Greengrass vers. AWS IoT Core Ce composant stockera ces messages sortants sur le disque. | Plugin | Linux, Windows | [Oui](https://github.com/aws-greengrass/aws-greengrass-disk-spooler) | Non | 
| [Gestionnaire d'applications Docker](docker-application-manager-component.md) | Permet AWS IoT Greengrass de télécharger des images Docker depuis Docker Hub et Amazon Elastic Container Registry (Amazon ECR). | Générique | Linux, Windows | Non | Intégrée | 
| [Connecteur Edge pour Kinesis Video Streams](kvs-edge-connector-component.md) | Lit les flux vidéo des caméras locales, publie les flux sur Kinesis Video Streams et affiche les flux dans les tableaux de bord Grafana avec. AWS IoT TwinMaker | Générique | Linux | Non | Non | 
| [Greengrass CLI](greengrass-cli-component.md) | Fournit une interface de ligne de commande que vous pouvez utiliser pour créer des déploiements locaux et interagir avec le périphérique principal Greengrass et ses composants. | Plugin | Linux, Windows | [Oui](https://github.com/aws-greengrass/aws-greengrass-cli) | [Non](https://github.com/aws-greengrass/aws-greengrass-lite/blob/main/docs/ggl-cli.md) | 
| <a name="ip-detector-component-table-row"></a>[Détecteur IP](ip-detector-component.md) | Transmet les informations de connectivité au AWS IoT Greengrass courtier MQTT afin que les appareils clients puissent découvrir comment se connecter. | Plugin | Linux, Windows | [Oui](https://github.com/aws-greengrass/aws-greengrass-ip-detector) | Non | 
| [Firehose](kinesis-firehose-component.md) | Publie des données via les flux de livraison Amazon Data Firehose vers des destinations situées dans le. AWS Cloud | Lambda | Linux | Non | Non | 
| [Lanceur Lambda](lambda-launcher-component.md) | Gère la configuration des processus et de l'environnement pour les fonctions Lambda. | Générique | Linux | Non | Non | 
| [Gestionnaire Lambda](lambda-manager-component.md) | Gère la communication interprocessus et le dimensionnement pour les fonctions Lambda. | Plugin | Linux | Non | Non | 
| [Environnements d’exécution (runtimes) Lambda](lambda-runtimes-component.md) | Fournit des artefacts pour chaque environnement d'exécution Lambda. | Générique | Linux | Non | Non | 
| [Routeur d'abonnement Legacy](legacy-subscription-router-component.md) | Gère les abonnements aux fonctions Lambda qui s'exécutent sur AWS IoT Greengrass la version 1. | Générique | Linux | Non | Non | 
| [Console de débogage locale](local-debug-console-component.md) | Fournit une console locale que vous pouvez utiliser pour déboguer et gérer le périphérique principal Greengrass et ses composants. | Plugin | Linux, Windows | [Oui](https://github.com/aws-greengrass/aws-greengrass-localdebugconsole) | Non | 
| [Gestionnaire de journaux](log-manager-component.md) | Collecte et télécharge les journaux sur l'appareil principal de Greengrass. | Plugin | Linux, Windows | [Oui](https://github.com/aws-greengrass/aws-greengrass-log-manager) | Non | 
| [Composants d'apprentissage automatique](machine-learning-components.md) | Fournit des modèles d'apprentissage automatique et des exemples de code d'inférence que vous pouvez utiliser pour effectuer des inférences d'apprentissage automatique sur les appareils principaux de Greengrass. | Consultez [Composants d'apprentissage automatique](machine-learning-components.md). | Non | 
| [Adaptateur de protocole Modbus-RTU](modbus-rtu-protocol-adapter-component.md) | Interroge les informations des appareils Modbus RTU locaux. | Lambda | Linux | Non | Non | 
| [Émetteur de télémétrie Nucleus](nucleus-emitter-component.md) | Publie les données de télémétrie relatives à l'état du système recueillies depuis le noyau vers un sujet local ou un sujet AWS IoT Core MQTT. | Plugin | Linux, Windows | [Oui](https://github.com/aws-greengrass/aws-greengrass-telemetry-nucleus-emitter) | Non | 
| <a name="mqtt-bridge-component-table-row"></a>[Pont MQTT](mqtt-bridge-component.md) | Relaie les messages MQTT entre les appareils clients, AWS IoT Greengrass publie/abonnement locaux, et. AWS IoT Core | Plugin | Linux, Windows | [Oui](https://github.com/aws-greengrass/aws-greengrass-mqtt-bridge) | Non | 
| <a name="mqtt-broker-moquette-component-table-row"></a>[Courtier MQTT 3.1.1 (Moquette)](mqtt-broker-moquette-component.md) | Exécute un broker MQTT 3.1.1 qui gère les messages entre les appareils clients et le périphérique principal. | Plugin | Linux, Windows | [Oui](https://github.com/aws-greengrass/aws-greengrass-moquette-mqtt) | Non | 
| <a name="mqtt-broker-emqx-component-table-row"></a>[Courtier MQTT 5 (EMQX)](mqtt-broker-emqx-component.md) | Exécute un broker MQTT 5 qui gère les messages entre les appareils clients et le périphérique principal. | Générique | Linux, Windows | Non | Non | 
| [Fournisseur PKCS \$111](pkcs11-provider-component.md) | Permet aux composants Greengrass d'accéder à une clé privée et à un certificat que vous stockez en toute sécurité dans un module de sécurité matériel (HSM). | Plugin | Linux | [Oui](https://github.com/aws-greengrass/aws-greengrass-pkcs11-provider) | Intégrée | 
| [Directeur des services secrets](secret-manager-component.md) | Déploie les secrets à partir de AWS Secrets Manager secrets afin que vous puissiez utiliser en toute sécurité des informations d'identification, telles que des mots de passe, dans des composants personnalisés de l'appareil principal de Greengrass. | Plugin | Linux, Windows | [Oui](https://github.com/aws-greengrass/aws-greengrass-secret-manager) | Non | 
| [Tunneling sécurisé](secure-tunneling-component.md) | Permet des connexions tunnelisées AWS IoT sécurisées que vous pouvez utiliser pour établir des communications bidirectionnelles avec les principaux appareils de Greengrass qui se trouvent derrière des pare-feux restreints. | Générique | Linux | Non | Oui | 
| <a name="shadow-manager-component-table-row"></a>[Shadow Manager](shadow-manager-component.md) | Permet l'interaction avec les ombres sur le périphérique principal. Il gère le stockage des documents cachés ainsi que la synchronisation des états d'ombre locaux avec le service AWS IoT Device Shadow. | Plugin | Linux, Windows | [Oui](https://github.com/aws-greengrass/aws-greengrass-shadow-manager) | Non | 
| [Amazon SNS](sns-component.md) | Publie des messages sur les rubriques Amazon SNS. | Lambda | Linux | Non | Non | 
| [Gestionnaire de flux](stream-manager-component.md) | Diffuse de gros volumes de données provenant de sources locales vers le AWS Cloud. | Générique | Linux, Windows | Non | Oui | 
| [Redirecteur de journal du système](system-log-forwarder-component.md) | Téléchargez les journaux systemd-journald dans le. AWS Cloud | Générique | Linux | [Oui](https://github.com/aws-greengrass/aws-greengrass-system-log-forwarder) | Oui | 
| [Agent Systems Manager](systems-manager-agent-component.md) | Gérez le périphérique principal avec AWS Systems Manager, qui vous permet de patcher des appareils, d'exécuter des commandes, etc. | Générique | Linux | [Oui](https://github.com/aws/amazon-ssm-agent/blob/mainline/packaging/greengrass/component.json) | Non | 
| [Service d'échange de jetons](token-exchange-service-component.md) | Fournit des AWS informations d'identification que vous pouvez utiliser pour interagir avec AWS les services. | Générique | Linux, Windows | Non | Intégrée | 
| [Collecteur IoT SiteWise OPC UA](iotsitewise-opcua-collector-component.md) | Collecte des données à partir des serveurs OPC-UA. | Générique | Linux, Windows | Non | Non | 
| [Simulateur de source de données IoT SiteWise OPC UA](iotsitewise-opcua-data-source-simulator-component.md) | Exécute un serveur OPC-UA local qui génère des exemples de données. | Générique | Linux, Windows | Non | Non | 
| [SiteWise Éditeur IoT](iotsitewise-publisher-component.md) | Publie des données dans le AWS cloud. | Générique | Linux, Windows | Non | Non | 
| [SiteWise Processeur IoT](iotsitewise-processor-component.md) | Traite les données sur les appareils principaux de Greengrass. | Générique | Linux, Windows | Non | Non | 

# Noyau de Greengrass
<a name="greengrass-nucleus-component"></a>

Le composant Greengrass nucleus (`aws.greengrass.Nucleus`) est un composant obligatoire et le minimum requis pour exécuter le logiciel AWS IoT Greengrass Core sur un appareil. Vous pouvez configurer ce composant pour personnaliser et mettre à jour votre logiciel AWS IoT Greengrass Core à distance. Déployez ce composant pour configurer des paramètres tels que le proxy, le rôle de l'appareil et AWS IoT la configuration des objets sur vos appareils principaux.

**Note**  
À partir de la version 2.14.0 de Greengrass, une version optimisée de l'environnement d'exécution des périphériques Nucleus est disponible pour les appareils à faible encombrement mémoire. Consultez [Greengrass nucleus lite](https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html) pour plus d'informations sur sa configuration et son utilisation.

**Important**  
Lorsque la version du composant du noyau change, ou lorsque vous modifiez certains paramètres de configuration, le logiciel AWS IoT Greengrass Core, qui inclut le noyau et tous les autres composants de votre appareil, redémarre pour appliquer les modifications.   
<a name="component-patch-update"></a>Lorsque vous déployez un composant, AWS IoT Greengrass installe les dernières versions prises en charge de toutes les dépendances de ce composant. De ce fait, les nouvelles versions de correctif des composants publics AWS fournis peuvent être automatiquement déployées sur vos appareils principaux si vous ajoutez de nouveaux appareils à un groupe d'objets ou si vous mettez à jour le déploiement qui cible ces appareils. Certaines mises à jour automatiques, telles que la mise à jour du noyau, peuvent provoquer le redémarrage inattendu de vos appareils.   
<a name="component-version-pinning"></a>Pour éviter les mises à jour involontaires d'un composant en cours d'exécution sur votre appareil, nous vous recommandons d'inclure directement votre version préférée de ce composant lorsque vous [créez un déploiement](create-deployments.md). Pour plus d'informations sur le comportement de mise à jour du logiciel AWS IoT Greengrass Core, consultez[Mettre à jour le logiciel AWS IoT Greengrass principal (OTA)](update-greengrass-core-v2.md).

**Topics**
+ [Versions](#greengrass-nucleus-component-versions)
+ [Exigences relatives aux dispositifs](#greengrass-v2-requirements)
+ [Plateformes prises en charge](#greengrass-v2-supported-platforms)
+ [Système d’exploitation](#greengrass-nucleus-component-os-support)
+ [Prérequis](#greengrass-nucleus-component-requirements)
+ [Dépendances](#greengrass-nucleus-component-dependencies)
+ [Téléchargement et installation](#greengrass-nucleus-component-install)
+ [Configuration](#greengrass-nucleus-component-configuration)
+ [Fichier journal local](#greengrass-nucleus-component-log-file)
+ [Journal des modifications](#greengrass-nucleus-component-changelog)

## Versions
<a name="greengrass-nucleus-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2,17x
+ 2,16.x
+ 2,15.x
+ 2,14.x
+ 2,13.x
+ 2,12. x
+ 2,11.x
+ 2.10.x
+ 2,9. x
+ 2,8 x
+ 2.7.x
+ 2.6.x
+ 2,5.x
+ 2.4.x
+ 2.3.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Exigences relatives aux dispositifs
<a name="greengrass-v2-requirements"></a>

**Note**  
Vous pouvez utiliser AWS IoT Device Tester for AWS IoT Greengrass pour vérifier que votre appareil peut exécuter le logiciel AWS IoT Greengrass Core et communiquer avec le AWS Cloud. Pour de plus amples informations, veuillez consulter [Utilisation AWS IoT Device Tester pour la AWS IoT Greengrass V2](device-tester-for-greengrass-ug.md).

------
#### [ Linux ]
+ <a name="requirement-supported-region"></a>L'utilisation d'un ventilateur [Région AWS](https://en.wikipedia.org/wiki/Amazon_Web_Services#Availability_and_topology)qui supporte AWS IoT Greengrass V2. Pour obtenir la liste des régions prises en charge, consultez [Points de terminaison et quotas AWS IoT Greengrass V2](https://docs.aws.amazon.com/general/latest/gr/greengrassv2.html) dans le *Références générales AWS*.
+ 256 Mo d'espace disque minimum disponible pour le logiciel AWS IoT Greengrass Core. Cette exigence n'inclut pas les composants déployés sur le périphérique principal.
+ 96 Mo de RAM au minimum sont alloués au logiciel AWS IoT Greengrass Core. Cette exigence n'inclut pas les composants qui s'exécutent sur le périphérique principal. Pour de plus amples informations, veuillez consulter [Contrôlez l'allocation de mémoire grâce aux options JVM](configure-greengrass-core-v2.md#jvm-tuning).
+ Java Runtime Environment (JRE) version 8 ou supérieure. Java doit être disponible sur la variable d'environnement [PATH](https://en.wikipedia.org/wiki/PATH_(variable)) de l'appareil. Pour utiliser Java pour développer des composants personnalisés, vous devez installer un kit de développement Java (JDK). Nous vous recommandons d'utiliser les versions de support à long terme d'[Amazon Corretto](https://aws.amazon.com/corretto/) [ou](https://openjdk.java.net/) d'OpenJDK. La version 8 ou supérieure est requise.
+ [Bibliothèque GNU C](https://www.gnu.org/software/libc/) (glibc) version 2.25 ou supérieure.
+ Vous pouvez exécuter le logiciel AWS IoT Greengrass Core en tant qu'utilisateur root. Utilisez`sudo`, par exemple. Vous pouvez également exécuter le logiciel AWS IoT Greengrass Core en tant qu'utilisateur non root. Pour de plus amples informations, veuillez consulter [Configurer les appareils AWS IoT Greengrass V2 principaux en tant que périphériques non root](setup-greengrass-non-root.md).
+ L'utilisateur root qui exécute le logiciel AWS IoT Greengrass Core, par exemple`root`, doit être autorisé à fonctionner `sudo` avec n'importe quel utilisateur et n'importe quel groupe. Le `/etc/sudoers` fichier doit autoriser cet utilisateur à s'exécuter `sudo` en tant qu'autre groupe. L'autorisation accordée à l'utilisateur `/etc/sudoers` doit ressembler à l'exemple suivant.

  ```
  root    ALL=(ALL:ALL) ALL
  ```
+ Le périphérique principal doit être capable d'effectuer des demandes sortantes vers un ensemble de points de terminaison et de ports. Pour de plus amples informations, veuillez consulter [Autoriser le trafic des appareils via un proxy ou un pare-feu](allow-device-traffic.md).
+ Le `/tmp` répertoire doit être monté avec des `exec` autorisations.
+ Toutes les commandes shell suivantes :
  + `ps -ax -o pid,ppid`
  + `sudo`
  + `sh`
  + `kill`
  + `cp`
  + `chmod`
  + `rm`
  + `ln`
  + `echo`
  + `exit`
  + `id`
  + `uname`
  + `grep`
+ Votre appareil peut également nécessiter les commandes shell facultatives suivantes :
  + (Facultatif) `systemctl`. Cette commande est utilisée pour configurer le logiciel AWS IoT Greengrass Core en tant que service système.
  + (Facultatif) `useradd``groupadd`, et`usermod`. Ces commandes sont utilisées pour configurer l'utilisateur et le `ggc_user` groupe `ggc_group` système du système.
  + (Facultatif) `mkfifo`. Cette commande est utilisée pour exécuter les fonctions Lambda en tant que composants.
+ Pour configurer les limites de ressources système pour les processus des composants, votre appareil doit exécuter le noyau Linux version 2.6.24 ou ultérieure.
+ Pour exécuter les fonctions Lambda, votre appareil doit répondre à des exigences supplémentaires. Pour de plus amples informations, veuillez consulter [Exigences relatives à la fonction Lambda](setting-up.md#greengrass-v2-lambda-requirements).

------
#### [ Windows ]
+ <a name="requirement-supported-region"></a>L'utilisation d'un ventilateur [Région AWS](https://en.wikipedia.org/wiki/Amazon_Web_Services#Availability_and_topology)qui supporte AWS IoT Greengrass V2. Pour obtenir la liste des régions prises en charge, consultez [Points de terminaison et quotas AWS IoT Greengrass V2](https://docs.aws.amazon.com/general/latest/gr/greengrassv2.html) dans le *Références générales AWS*.
+ 256 Mo d'espace disque minimum disponible pour le logiciel AWS IoT Greengrass Core. Cette exigence n'inclut pas les composants déployés sur le périphérique principal.
+ 160 Mo de RAM minimum alloués au logiciel AWS IoT Greengrass Core. Cette exigence n'inclut pas les composants qui s'exécutent sur le périphérique principal. Pour de plus amples informations, veuillez consulter [Contrôlez l'allocation de mémoire grâce aux options JVM](configure-greengrass-core-v2.md#jvm-tuning).
+ Java Runtime Environment (JRE) version 8 ou supérieure. Java doit être disponible sur la variable système [PATH](https://en.wikipedia.org/wiki/PATH_(variable)) de l'appareil. Pour utiliser Java pour développer des composants personnalisés, vous devez installer un kit de développement Java (JDK). Nous vous recommandons d'utiliser les versions de support à long terme d'[Amazon Corretto](https://aws.amazon.com/corretto/) [ou](https://openjdk.java.net/) d'OpenJDK. La version 8 ou supérieure est requise. 
**Note**  
Pour utiliser la version 2.5.0 du noyau [Greengrass](#greengrass-nucleus-component), vous devez utiliser une version 64 bits du Java Runtime Environment (JRE). La version 2.5.1 de Greengrass Nucleus est compatible avec 32 bits et 64 bits. JREs
+ L'utilisateur qui installe le logiciel AWS IoT Greengrass Core doit être un administrateur.
+ Vous devez installer le logiciel AWS IoT Greengrass Core en tant que service système. Spécifiez `--setup-system-service true` le moment où vous installez le logiciel.
+ Chaque utilisateur qui exécute des processus de composants doit exister dans le LocalSystem compte, et le nom et le mot de passe de l'utilisateur doivent figurer dans l'instance Credential Manager du LocalSystem compte. Vous pouvez configurer cet utilisateur en suivant les instructions d'[installation du logiciel AWS IoT Greengrass Core](install-greengrass-core-v2.md).
+ Le périphérique principal doit être capable d'effectuer des demandes sortantes vers un ensemble de points de terminaison et de ports. Pour de plus amples informations, veuillez consulter [Autoriser le trafic des appareils via un proxy ou un pare-feu](allow-device-traffic.md).

------

## Plateformes prises en charge
<a name="greengrass-v2-supported-platforms"></a>

AWS IoT Greengrass prend officiellement en charge les appareils exécutant les plateformes suivantes. Les appareils dont les plateformes ne figurent pas dans cette liste peuvent fonctionner, mais les AWS IoT Greengrass tests ne sont effectués que sur les plateformes spécifiées.

------
#### [ Linux ]

Architectures :
+ Armv7l
+ Bras (8) AArch64
+ x86\$164

------
#### [ Windows ]

Architectures :
+ x86\$164

Versions :
+ Windows 10
+ Windows 11
+ Windows Server 2019
+ Windows Server 2022

**Note**  
Certaines AWS IoT Greengrass fonctionnalités ne sont actuellement pas prises en charge sur les appareils Windows. Pour plus d’informations, consultez [Compatibilité des fonctionnalités de Greengrass](operating-system-feature-support-matrix.md) et [Considérations relatives aux fonctionnalités](#greengrass-v2-windows-feature-considerations).

------

### Considérations relatives aux fonctionnalités
<a name="greengrass-v2-windows-feature-considerations"></a>

Certaines AWS IoT Greengrass fonctionnalités ne sont actuellement pas prises en charge sur les appareils Windows. Passez en revue les différences entre les fonctionnalités pour vérifier si un appareil Windows répond à vos exigences. Pour de plus amples informations, veuillez consulter [Compatibilité des fonctionnalités de Greengrass](operating-system-feature-support-matrix.md).

[Pour créer un système d'exploitation personnalisé basé sur Linux, vous pouvez utiliser la BitBake recette AWS IoT Greengrass du projet. `meta-aws`](https://github.com/aws/meta-aws/tree/master/recipes-iot) Le `meta-aws` projet fournit des recettes que vous pouvez utiliser pour développer des fonctionnalités logicielles de AWS pointe dans des systèmes [Linux embarqués](https://elinux.org/) conçus avec [OpenEmbedded](https://www.openembedded.org/wiki/Main_Page)des frameworks de construction Yocto Project. Le projet [Yocto est un projet](https://www.yoctoproject.org/) de collaboration open source qui vous aide à créer des systèmes Linux personnalisés pour les applications embarquées, quelle que soit l'architecture matérielle. La BitBake recette pour AWS IoT Greengrass installer, configurer et exécuter automatiquement le logiciel AWS IoT Greengrass Core sur votre appareil.

Les plateformes Linux peuvent également fonctionner AWS IoT Greengrass dans un conteneur Docker. Pour de plus amples informations, veuillez consulter [Exécuter le logiciel AWS IoT Greengrass Core dans un conteneur Docker](run-greengrass-docker.md). 

## Système d’exploitation
<a name="greengrass-nucleus-component-os-support"></a>

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

Pour de plus amples informations, veuillez consulter [Plateformes prises en charge](#greengrass-v2-supported-platforms).

## Prérequis
<a name="greengrass-nucleus-component-requirements"></a>

Les appareils doivent répondre à certaines exigences pour installer et exécuter le noyau Greengrass et le logiciel AWS IoT Greengrass Core. Pour de plus amples informations, veuillez consulter [Exigences relatives aux dispositifs](#greengrass-v2-requirements).

Le composant Greengrass nucleus est compatible pour fonctionner dans un VPC. Pour déployer ce composant dans un VPC, les éléments suivants sont requis.
+ Le composant Greengrass nucleus doit disposer d'une connectivité AWS IoT data, d' AWS IoT informations d'identification et d'Amazon S3.

## Dépendances
<a name="greengrass-nucleus-component-dependencies"></a>

Le noyau Greengrass n'inclut aucune dépendance entre les composants. Cependant, plusieurs composants AWS fournis incluent le noyau en tant que dépendance. Pour de plus amples informations, veuillez consulter [AWS-composants fournis](public-components.md).

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Téléchargement et installation
<a name="greengrass-nucleus-component-install"></a>

Vous pouvez télécharger un programme d'installation qui configure le composant Greengrass nucleus sur votre appareil. Ce programme d'installation configure votre appareil en tant qu'appareil principal de Greengrass. Vous pouvez effectuer deux types d'installations : une installation rapide qui crée les AWS ressources nécessaires pour vous, ou une installation manuelle dans laquelle vous créez les AWS ressources vous-même. Pour de plus amples informations, veuillez consulter [Installation du logiciel AWS IoT Greengrass de base](install-greengrass-core-v2.md).

Vous pouvez également suivre un tutoriel pour installer le noyau Greengrass et découvrir le développement des composants Greengrass. Pour de plus amples informations, veuillez consulter [Tutoriel : Débuter avec AWS IoT Greengrass V2](getting-started.md).

## Configuration
<a name="greengrass-nucleus-component-configuration"></a>

Ce composant fournit les paramètres de configuration suivants que vous pouvez personnaliser lorsque vous déployez le composant. Certains paramètres nécessitent le redémarrage du logiciel AWS IoT Greengrass Core pour être pris en compte. Pour plus d'informations sur les raisons et les modalités de configuration de ce composant, consultez[Configuration du logiciel AWS IoT Greengrass de base](configure-greengrass-core-v2.md).

`iotRoleAlias`  
<a name="nucleus-component-configuration-iot-role-alias"></a>Alias de AWS IoT rôle qui pointe vers un rôle IAM d'échange de jetons. Le fournisseur AWS IoT d'informations d'identification assume ce rôle pour permettre au dispositif principal de Greengrass d'interagir avec AWS les services. Pour de plus amples informations, veuillez consulter [Autoriser les appareils principaux à interagir avec les AWS services](device-service-role.md).  
Lorsque vous exécutez le logiciel AWS IoT Greengrass Core avec `--provision true` cette option, le logiciel fournit un alias de rôle et définit sa valeur dans le composant du noyau.

  `interpolateComponentConfiguration`   
(Facultatif) Vous pouvez activer le noyau Greengrass pour interpoler les [variables de recette des composants dans les configurations des composants](component-recipe-reference.md#recipe-variables) et [fusionner](update-component-configurations.md#merge-configuration-update-recipe-variables) les mises à jour de configuration. Nous vous recommandons de définir cette option sur `true` afin que le périphérique principal puisse exécuter les composants Greengrass qui utilisent des variables de recette dans leurs configurations.  
Cette fonctionnalité est disponible pour les versions 2.6.0 et ultérieures de ce composant.  
Valeur par défaut : `false`

`networkProxy`  
(Facultatif) Le proxy réseau à utiliser pour toutes les connexions. Pour de plus amples informations, veuillez consulter [Connexion au port 443 ou via un proxy réseau](configure-greengrass-core-v2.md#configure-alpn-network-proxy).  
<a name="nucleus-component-parameter-restart-para"></a>Lorsque vous déployez une modification de ce paramètre de configuration, le logiciel AWS IoT Greengrass Core redémarre pour que la modification prenne effet.
Cet objet contient les informations suivantes :    
`noProxyAddresses`  
(Facultatif) Liste séparée par des virgules d'adresses IP ou de noms d'hôtes exemptés du proxy.  
`proxy`  
Le proxy auquel se connecter. Cet objet contient les informations suivantes :    
`url`  
URL du serveur proxy au format`scheme://userinfo@host:port`.  <a name="nucleus-component-configuration-proxy-url-segments"></a>
+ `scheme`— Le schéma, qui doit être `http` ou`https`.
**Important**  
<a name="https-proxy-greengrass-nucleus-requirement"></a>Les appareils principaux de Greengrass doivent exécuter [Greengrass nucleus](#greengrass-nucleus-component) v2.5.0 ou version ultérieure pour utiliser les proxys HTTPS.  
Si vous configurez un proxy HTTPS, vous devez ajouter le certificat CA du serveur proxy au certificat CA racine Amazon de l'appareil principal. Pour de plus amples informations, veuillez consulter [Permettre au périphérique principal de faire confiance à un proxy HTTPS](configure-greengrass-core-v2.md#https-proxy-certificate-trust).
+ `userinfo`— (Facultatif) Les informations relatives au nom d'utilisateur et au mot de passe. Si vous spécifiez ces informations dans le`url`, le périphérique principal de Greengrass ignore les `username` champs et. `password`
+ `host`— Le nom d'hôte ou l'adresse IP du serveur proxy.
+ `port`— (Facultatif) Le numéro de port. Si vous ne spécifiez pas le port, le périphérique principal de Greengrass utilise les valeurs par défaut suivantes :
  + `http`— 80
  + `https`— 443  
`username`  
(Facultatif) Le nom d'utilisateur qui authentifie le serveur proxy.  
`password`  
(Facultatif) Le mot de passe qui authentifie le serveur proxy.

`mqtt`  
(Facultatif) La configuration MQTT pour le périphérique principal de Greengrass. Pour de plus amples informations, veuillez consulter [Connexion au port 443 ou via un proxy réseau](configure-greengrass-core-v2.md#configure-alpn-network-proxy).  
<a name="nucleus-component-parameter-restart-para"></a>Lorsque vous déployez une modification de ce paramètre de configuration, le logiciel AWS IoT Greengrass Core redémarre pour que la modification prenne effet.
Cet objet contient les informations suivantes :    
`port`  
(Facultatif) Port à utiliser pour les connexions MQTT.  
Valeur par défaut : `8883`  
`keepAliveTimeoutMs`  
(Facultatif) Durée en millisecondes entre chaque `PING` message envoyé par le client pour maintenir la connexion MQTT active. Cette valeur doit être supérieure à`pingTimeoutMs`.  
Par défaut : `60000` (60 secondes)  
`pingTimeoutMs`  
(Facultatif) Durée en millisecondes pendant laquelle le client attend de recevoir un `PINGACK` message du serveur. Si le délai d'attente dépasse le délai imparti, le périphérique principal ferme et rouvre la connexion MQTT. Cette valeur doit être inférieure à`keepAliveTimeoutMs`.  
Par défaut : `30000` (30 secondes)  
`operationTimeoutMs`  
(Facultatif) Durée en millisecondes pendant laquelle le client attend la fin des opérations MQTT (telles que `CONNECT` ou). `PUBLISH` Cette option ne s'applique pas aux messages MQTT `PING` ou Keep Alive.  
Par défaut : `30000` (30 secondes)  
`maxInFlightPublishes`  
(Facultatif) Le nombre maximum de messages MQTT QoS 1 non reconnus qui peuvent être envoyés en même temps.  
Cette fonctionnalité est disponible pour les versions 2.1.0 et ultérieures de ce composant.  
Valeur par défaut : `5`  
Plage valide : valeur maximale de 100  
`maxMessageSizeInBytes`  
(Facultatif) Taille maximale d'un message MQTT. Si un message dépasse cette taille, le noyau de Greengrass rejette le message avec une erreur.  
Cette fonctionnalité est disponible pour les versions 2.1.0 et ultérieures de ce composant.  
Par défaut : `131072` (128 Ko)  
Plage valide : valeur maximale de `2621440` (2,5 Mo)  
`maxPublishRetry`  
(Facultatif) Le nombre maximum de fois que vous pouvez réessayer un message qui ne parvient pas à être publié. Vous pouvez spécifier de `-1` réessayer un nombre illimité de fois.  
Cette fonctionnalité est disponible pour les versions 2.1.0 et ultérieures de ce composant.  
Valeur par défaut : `100`  
`spooler`  
(Facultatif) Configuration du spouleur MQTT pour le périphérique principal Greengrass. Cet objet contient les informations suivantes :    
`storageType`  
Type de stockage pour le stockage des messages. S'`storageType`il est défini sur`Disk`, il `pluginName` peut être configuré. Vous pouvez spécifier `Memory` ou `Disk`.  
[Cette fonctionnalité est disponible pour les versions 2.11.0 et ultérieures du composant Greengrass nucleus.](#greengrass-nucleus-component)  
Si le spouleur MQTT `storageType` est réglé sur `Disk` et que vous souhaitez rétrograder Greengrass nucleus de la version 2.11.x à une version antérieure, vous devez rétablir la configuration sur. `Memory` La seule configuration prise en charge dans les `storageType` versions 2.10.x et antérieures de Greengrass nucleus est. `Memory` Le non-respect de ces instructions peut entraîner la rupture du spouleur. Cela empêcherait votre appareil principal Greengrass d'envoyer des messages MQTT au. AWS Cloud
Valeur par défaut : `Memory`  
`pluginName`  
(Facultatif) Le nom du composant du plugin. Ce composant ne sera utilisé que s'il `storageType` est défini sur`Disk`. Cette option utilise par défaut le Greengrass fourni par [spouleur à disque](disk-spooler-component.md) Greengrass `aws.greengrass.DiskSpooler` et l'utilisera.  
[Cette fonctionnalité est disponible pour les versions 2.11.0 et ultérieures du composant Greengrass nucleus.](#greengrass-nucleus-component)  
Valeur par défaut : `"aws.greengrass.DiskSpooler"`  
`maxSizeInBytes`  
(Facultatif) Taille maximale du cache dans lequel le périphérique principal stocke les messages MQTT non traités en mémoire. Si le cache est plein, les nouveaux messages sont rejetés.  
Par défaut : `2621440` (2,5 Mo)  
`keepQos0WhenOffline`  
(Facultatif) Vous pouvez mettre en attente les messages MQTT QoS 0 que le périphérique principal reçoit lorsqu'il est hors ligne. Si vous définissez cette option sur`true`, le périphérique principal met en attente les messages QoS 0 qu'il ne peut pas envoyer lorsqu'il est hors ligne. Si vous définissez cette option sur`false`, le périphérique principal supprime ces messages. Le périphérique principal met toujours en attente les messages QoS 1, sauf si la bobine est pleine.  
Valeur par défaut : `false`  
`version`  
(Facultatif) La version de MQTT. Vous pouvez spécifier `mqtt3` ou `mqtt5`.  
[Cette fonctionnalité est disponible pour les versions 2.10.0 et ultérieures du composant Greengrass nucleus.](#greengrass-nucleus-component)  
Valeur par défaut : `mqtt5`  
`receiveMaximum`  
(Facultatif) Le nombre maximum de paquets QoS1 non reconnus que le broker peut envoyer.  
[Cette fonctionnalité est disponible pour les versions 2.10.0 et ultérieures du composant Greengrass nucleus.](#greengrass-nucleus-component)  
Valeur par défaut : `100`  
`sessionExpirySeconds`  
(Facultatif) Durée en secondes que vous pouvez demander à IoT Core pour qu'une session dure. La durée par défaut est la durée maximale prise en charge par AWS IoT Core.  
[Cette fonctionnalité est disponible pour les versions 2.10.0 et ultérieures du composant Greengrass nucleus.](#greengrass-nucleus-component)  
Valeur par défaut : `604800 (7 days)`  
`minimumReconnectDelaySeconds`  
(Facultatif) Une option pour le comportement de reconnexion. Durée minimale en secondes nécessaire à la reconnexion de MQTT.  
[Cette fonctionnalité est disponible pour les versions 2.10.0 et ultérieures du composant Greengrass nucleus.](#greengrass-nucleus-component)  
Valeur par défaut : `1`  
`maximumReconnectDelaySeconds`  
(Facultatif) Une option pour le comportement de reconnexion. Durée maximale en secondes pendant laquelle MQTT se reconnecte.  
[Cette fonctionnalité est disponible pour les versions 2.10.0 et ultérieures du composant Greengrass nucleus.](#greengrass-nucleus-component)  
Valeur par défaut : `120`  
`minimumConnectedTimeBeforeRetryResetSeconds`  
(Facultatif) Une option pour le comportement de reconnexion. Durée en secondes pendant laquelle une connexion doit être active avant que le délai de nouvelle tentative ne soit rétabli au minimum.  
[Cette fonctionnalité est disponible pour les versions 2.10.0 et ultérieures du composant Greengrass nucleus.](#greengrass-nucleus-component)  
Valeur par défaut : `30`

  `jvmOptions`  
(Facultatif) Les options JVM à utiliser pour exécuter le logiciel AWS IoT Greengrass Core. Pour plus d'informations sur les options JVM recommandées pour exécuter le logiciel AWS IoT Greengrass Core, consultez[Contrôlez l'allocation de mémoire grâce aux options JVM](configure-greengrass-core-v2.md#jvm-tuning).  
<a name="nucleus-component-parameter-restart-para"></a>Lorsque vous déployez une modification de ce paramètre de configuration, le logiciel AWS IoT Greengrass Core redémarre pour que la modification prenne effet.

`iotDataEndpoint`  
<a name="nucleus-component-configuration-iot-data-endpoint"></a>Le point AWS IoT de terminaison de données pour votre Compte AWS.  
<a name="nucleus-component-set-iot-endpoints"></a>Lorsque vous exécutez le logiciel AWS IoT Greengrass Core avec `--provision true` cette option, le logiciel obtient vos données et vos informations d'identification à partir des points de terminaison AWS IoT et les place dans le composant Nucleus.

`iotCredEndpoint`  
<a name="nucleus-component-configuration-iot-cred-endpoint"></a>Le point de terminaison des informations d' AWS IoT identification de votre Compte AWS.  
<a name="nucleus-component-set-iot-endpoints"></a>Lorsque vous exécutez le logiciel AWS IoT Greengrass Core avec `--provision true` cette option, le logiciel obtient vos données et vos informations d'identification à partir des points de terminaison AWS IoT et les place dans le composant Nucleus.

`greengrassDataPlaneEndpoint`  
Cette fonctionnalité est disponible dans les versions 2.7.0 et ultérieures de ce composant.  
Pour de plus amples informations, veuillez consulter [Utiliser un certificat d'appareil signé par une autorité de certification privée](configure-greengrass-core-v2.md#configure-nucleus-private-ca).

`greengrassDataPlanePort`  
Cette fonctionnalité est disponible dans les versions 2.0.4 et ultérieures de ce composant.  
(Facultatif) Port à utiliser pour les connexions au plan de données. Pour de plus amples informations, veuillez consulter [Connexion au port 443 ou via un proxy réseau](configure-greengrass-core-v2.md#configure-alpn-network-proxy).  
Vous devez spécifier un port sur lequel l'appareil peut établir des connexions sortantes. Si vous spécifiez un port bloqué, l'appareil ne pourra pas se connecter pour AWS IoT Greengrass recevoir des déploiements.
Sélectionnez l’une des options suivantes :  
+ `443`
+ `8443`
Valeur par défaut : `8443`

`awsRegion`  
Le Région AWS à utiliser.

`runWithDefault`  
L'utilisateur du système à utiliser pour exécuter les composants.  
<a name="nucleus-component-parameter-restart-para"></a>Lorsque vous déployez une modification de ce paramètre de configuration, le logiciel AWS IoT Greengrass Core redémarre pour que la modification prenne effet.
Cet objet contient les informations suivantes :    
`posixUser`  
Le nom ou l'ID de l'utilisateur du système et, éventuellement, du groupe système que le périphérique principal utilise pour exécuter les composants génériques et Lambda. Spécifiez l'utilisateur et le groupe en les séparant par deux points (`:`) au format suivant : `user:group`. Le groupe est facultatif. Si vous ne spécifiez aucun groupe, le logiciel AWS IoT Greengrass Core utilise le groupe principal pour l'utilisateur. Par exemple, vous définissez `ggc_user` ou `ggc_user:ggc_group`. Pour de plus amples informations, veuillez consulter [Configurer l'utilisateur qui exécute les composants](configure-greengrass-core-v2.md#configure-component-user).  
Lorsque vous exécutez le programme d'installation du logiciel AWS IoT Greengrass Core avec l'`--component-default-user ggc_user:ggc_group`option, le logiciel définit ce paramètre dans le composant Nucleus.  
`windowsUser`  
Cette fonctionnalité est disponible dans les versions 2.5.0 et ultérieures de ce composant.  
Nom de l'utilisateur Windows à utiliser pour exécuter ce composant sur les appareils principaux de Windows. L'utilisateur doit exister sur chaque appareil principal de Windows, et son nom et son mot de passe doivent être stockés dans l'instance Credentials Manager du LocalSystem compte. Pour de plus amples informations, veuillez consulter [Configurer l'utilisateur qui exécute les composants](configure-greengrass-core-v2.md#configure-component-user).  
Lorsque vous exécutez le programme d'installation du logiciel AWS IoT Greengrass Core avec l'`--component-default-user ggc_user`option, le logiciel définit ce paramètre dans le composant Nucleus.  
`systemResourceLimits`  
Cette fonctionnalité est disponible dans les versions 2.4.0 et ultérieures de ce composant. AWS IoT Greengrass ne prend actuellement pas en charge cette fonctionnalité sur les appareils Windows principaux.   
Les limites de ressources système à appliquer par défaut aux processus de composants Lambda génériques et non conteneurisés. Vous pouvez annuler les limites de ressources système pour des composants individuels lorsque vous créez un déploiement. Pour de plus amples informations, veuillez consulter [Configuration des limites de ressources système pour les composants](configure-greengrass-core-v2.md#configure-component-system-resource-limits).  
Cet objet contient les informations suivantes :    
`cpus`  
 <a name="system-resource-limits-cpu-definition-each"></a>Temps processeur maximal que les processus de chaque composant peuvent utiliser sur le périphérique principal. Le temps processeur total d'un appareil principal est équivalent au nombre de cœurs processeurs de l'appareil. Par exemple, sur un périphérique principal doté de 4 cœurs de processeur, vous pouvez définir cette valeur `2` pour limiter les processus de chaque composant à 50 % d'utilisation de chaque cœur de processeur. Sur un appareil doté d'un cœur de processeur, vous pouvez définir cette valeur `0.25` pour limiter les processus de chaque composant à 25 % d'utilisation du processeur. Si vous définissez cette valeur sur un nombre supérieur au nombre de cœurs de processeur, le logiciel AWS IoT Greengrass Core ne limite pas l'utilisation du processeur par les composants.   
`memory`  
 <a name="system-resource-limits-memory-definition-each"></a>Quantité maximale de RAM (en kilo-octets) que les processus de chaque composant peuvent utiliser sur le périphérique principal. 

 `s3EndpointType`   
(Facultatif) Type de point de terminaison S3. Ce paramètre ne prendra effet que pour la région USA Est (Virginie du Nord`us-east-1`) (). La définition de ce paramètre depuis une autre région sera ignorée. Sélectionnez l’une des options suivantes :  
+ `REGIONAL`— Le client S3 et l'URL présignée utilisent le point de terminaison régional.
+ `GLOBAL`— Le client S3 et l'URL présignée utilisent l'ancien point de terminaison.
+ `DUALSTACK`— L'URL présignée S3 utilise le point de terminaison dualstack.
Valeur par défaut : `GLOBAL`

 `fipsMode`   
(Facultatif) Fait en sorte que Greengrass utilise les points de terminaison FIPS. Pour plus d'informations sur la façon d'activer les points de terminaison FIPS, consultez la section Points de terminaison [FIPS](FIPS.html).  
Sélectionnez l’une des options suivantes :  
+ `true`Lorsqu'il est défini sur true, les points de terminaison utiliseront le point de terminaison FIPS.
+ `false`Lorsque la valeur est fausse, les points de terminaison n'utiliseront pas le point de terminaison FIPS.
Valeur par défaut : `false`

`logging`  
(Facultatif) Configuration de journalisation pour le périphérique principal. Pour plus d'informations sur la configuration et l'utilisation des journaux Greengrass, consultez. [AWS IoT Greengrass Journaux de surveillance](monitor-logs.md)  
Cet objet contient les informations suivantes :    
  `level`   
(Facultatif) Le niveau minimum de messages de journal à afficher.  
Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valeur par défaut : `INFO`  
  `format`   
(Facultatif) Format de données des journaux. Sélectionnez l’une des options suivantes :  
+ `TEXT`— Choisissez cette option si vous souhaitez afficher les journaux sous forme de texte.
+ `JSON`— Choisissez cette option si vous souhaitez afficher les journaux à l'aide de la [commande Greengrass CLI logs](gg-cli-logs.md) ou interagir avec les journaux par programmation.
Valeur par défaut : `TEXT`  
`outputType`  
(Facultatif) Type de sortie pour les journaux. Sélectionnez l’une des options suivantes :  
+ `FILE`— Le logiciel AWS IoT Greengrass Core génère des journaux dans les fichiers du répertoire que vous spécifiez`outputDirectory`.
+ `CONSOLE`— Le logiciel AWS IoT Greengrass Core imprime les journaux sur`stdout`. Choisissez cette option pour afficher les journaux au fur et à mesure que le périphérique principal les imprime.
Valeur par défaut : `FILE`  
  `fileSizeKB`   
(Facultatif) Taille maximale de chaque fichier journal (en kilo-octets). Lorsqu'un fichier journal dépasse cette taille maximale, le logiciel AWS IoT Greengrass Core crée un nouveau fichier journal.  
<a name="nucleus-component-logging-parameter-file-only"></a>Ce paramètre s'applique uniquement lorsque vous spécifiez `FILE` pour`outputType`.  
Valeur par défaut : `1024`  
  `totalLogsSizeKB`   
(Facultatif) Taille totale maximale des fichiers journaux (en kilo-octets) pour chaque composant, y compris le noyau de Greengrass. [Les fichiers journaux du noyau Greengrass incluent également les journaux des composants du plugin.](develop-greengrass-components.md#component-types) Lorsque la taille totale des fichiers journaux d'un composant dépasse cette taille maximale, le logiciel AWS IoT Greengrass Core supprime les fichiers journaux les plus anciens de ce composant.  
Ce paramètre est équivalent au paramètre de [limite d'espace disque](log-manager-component.md#log-manager-component-configuration) (`diskSpaceLimit`) [du composant du gestionnaire de journaux](log-manager-component.md), que vous pouvez spécifier pour le noyau Greengrass (système) et pour chaque composant. Le logiciel AWS IoT Greengrass Core utilise le minimum des deux valeurs comme taille maximale totale du log pour le noyau Greengrass et chaque composant.  
<a name="nucleus-component-logging-parameter-file-only"></a>Ce paramètre s'applique uniquement lorsque vous spécifiez `FILE` pour`outputType`.  
Valeur par défaut : `10240`  
  `outputDirectory`   
(Facultatif) Le répertoire de sortie pour les fichiers journaux.  
<a name="nucleus-component-logging-parameter-file-only"></a>Ce paramètre s'applique uniquement lorsque vous spécifiez `FILE` pour`outputType`.  
Par défaut :`/greengrass/v2/logs`, où se `/greengrass/v2` trouve le dossier AWS IoT Greengrass racine.

  `fleetstatus`   
Ce paramètre est disponible dans les versions 2.1.0 et ultérieures de ce composant.  
(Facultatif) Configuration de l'état du parc pour le périphérique principal.  
Cet objet contient les informations suivantes :    
`periodicStatusPublishIntervalSeconds`  
(Facultatif) Durée (en secondes) entre laquelle le périphérique principal publie l'état de l'appareil sur le AWS Cloud.  
Minimum : `86400` (24 heures)  
Par défaut : `86400` (24 heures)

  `telemetry`   
(Facultatif) Configuration de la télémétrie de l'état du système pour le périphérique principal. Pour plus d'informations sur les métriques de télémétrie et sur la manière d'agir sur les données de télémétrie, consultez. [Collectez les données de télémétrie relatives à l'état du système à partir des principaux appareils AWS IoT Greengrass](telemetry.md)  
Cet objet contient les informations suivantes :    
`enabled`  
(Facultatif) Vous pouvez activer ou désactiver la télémétrie.  
Valeur par défaut : `true`  
`periodicAggregateMetricsIntervalSeconds`  
(Facultatif) Intervalle (en secondes) pendant lequel le périphérique principal agrège les métriques.  
Si vous définissez cette valeur en dessous de la valeur minimale prise en charge, le noyau utilise plutôt la valeur par défaut.  
Minimum : `3600`  
Valeur par défaut : `3600`  
`periodicPublishMetricsIntervalSeconds`  
(Facultatif) Durée (en secondes) entre laquelle le périphérique principal publie des métriques de télémétrie sur. AWS Cloud  
Si vous définissez cette valeur en dessous de la valeur minimale prise en charge, le noyau utilise plutôt la valeur par défaut.  
Minimum : `86400`  
Valeur par défaut : `86400`

`deploymentPollingFrequencySeconds`  
(Facultatif) Période en secondes pendant laquelle demander les notifications de déploiement.  
Valeur par défaut : `15`

`componentStoreMaxSizeBytes`  
(Facultatif) Taille maximale sur le disque du magasin de composants, qui comprend les recettes de composants et les artefacts.  
Par défaut : `10000000000` (10 Go)

  `platformOverride`   
(Facultatif) Un dictionnaire d'attributs identifiant la plate-forme de l'appareil principal. Utilisez-le pour définir des attributs de plate-forme personnalisés que les recettes de composants peuvent utiliser pour identifier le cycle de vie et les artefacts appropriés pour le composant. Par exemple, vous pouvez définir un attribut de capacité matérielle pour déployer uniquement l'ensemble minimal d'artefacts nécessaires à l'exécution d'un composant. Pour plus d'informations, consultez le [paramètre de plateforme du manifeste](component-recipe-reference.md#component-platform-definition) dans la recette du composant.  
Vous pouvez également utiliser ce paramètre pour remplacer les attributs `os` et les attributs de `architecture` plate-forme du périphérique principal.

  `httpClient`   
Ce paramètre est disponible dans les versions 2.5.0 et ultérieures de ce composant.  
(Facultatif) Configuration du client HTTP pour le périphérique principal. Ces options de configuration s'appliquent à toutes les requêtes HTTP effectuées par ce composant. Si un périphérique principal fonctionne sur un réseau plus lent, vous pouvez augmenter ces délais d'expiration pour éviter que les requêtes HTTP n'expirent.  
Cet objet contient les informations suivantes :    
`connectionTimeoutMs`  
(Facultatif) Durée (en millisecondes) d'attente avant l'ouverture d'une connexion avant l'expiration de la demande de connexion.  
Par défaut : `2000` (2 secondes)  
`socketTimeoutMs`  
(Facultatif) Durée (en millisecondes) pendant laquelle les données doivent être transférées via une connexion ouverte avant l'expiration de la connexion.  
Par défaut : `30000` (30 secondes)

  `deploymentConfigurationTimeSource`   
Ce paramètre est disponible dans les versions 2.15.0 et ultérieures de ce composant.  
(Facultatif) L'horodatage à utiliser lors du traitement d'un déploiement. La valeur par défaut est`deploymentCreationTime`.  
Cet objet contient les valeurs suivantes :    
`deploymentCreationTime`  
La valeur par défaut de`deploymentConfigurationTimeSource`. L'appareil utilise l'horodatage de création du déploiement pour résoudre les conflits de clés de configuration pendant le traitement. Lorsque ce comportement est sélectionné, la configuration du périphérique local détenue par le noyau peut avoir un horodatage supérieur à celui du déploiement entrant et rejette les modifications de configuration entrantes qui sont désormais considérées comme obsolètes.  
`deploymentProcessingTime`  
L'appareil utilise son horodatage local pour résoudre les conflits de clés de configuration lors du processus de déploiement. Lors du traitement, le périphérique met à jour les configurations en fonction de l'horodatage du traitement plutôt que de l'horodatage de création du déploiement. Ce comportement suppose que l'horloge de l'appareil est correctement calibrée.  
Configurez ce paramètre de noyau dans l'image ou l'installation initiale de votre appareil plutôt que par le biais d'un déploiement lorsque vous souhaitez que les nouveaux appareils utilisent ce comportement lors de la première connexion. Utilisez l'[https://docs.aws.amazon.com/greengrass/v2/developerguide/configure-installer.html](https://docs.aws.amazon.com/greengrass/v2/developerguide/configure-installer.html)option du programme d'installation de Nucleus Classic pour cette configuration.  
Cette configuration initiale est essentielle car les appareils traitent plusieurs déploiements dans un ordre arbitraire. Sans configuration initiale appropriée, un appareil peut traiter les déploiements en utilisant le `deploymentCreationTime` comportement par défaut avant de recevoir le déploiement qui définit la configuration du noyau sur`deploymentProcessingTime`.

**Example Exemple : mise à jour de la fusion de configurations**  

```
{
  "iotRoleAlias": "GreengrassCoreTokenExchangeRoleAlias",
  "networkProxy": {
    "noProxyAddresses": "http://192.168.0.1,www.example.com",
    "proxy": {
      "url": "http://my-proxy-server:1100",
      "username": "Mary_Major",
      "password": "pass@word1357"
    }
  },
  "mqtt": {
    "port": 443
  },
  "greengrassDataPlanePort": 443,
  "jvmOptions": "-Xmx64m",
  "runWithDefault": {
    "posixUser": "ggc_user:ggc_group"
  }
}
```

## Fichier journal local
<a name="greengrass-nucleus-component-log-file"></a>

Ce composant utilise le fichier journal suivant.

------
#### [ 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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par 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
<a name="greengrass-nucleus-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.17.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.16.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.16.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html) [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.15.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.15.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html) [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.14.3  |  Corrections de bugs et améliorations [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.14.2  |  Corrections de bugs et améliorations [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.14.1  |  Corrections de bugs et améliorations [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.14.0  |  Cette version n'est plus disponible. Les améliorations apportées à cette version sont disponibles dans les versions ultérieures de ce composant.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.13.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.12,6  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2,1,5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.12.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.12.3  |   Cette version n'est plus disponible. Les améliorations apportées à cette version sont disponibles dans les versions ultérieures de ce composant.  Corrections de bugs et améliorations [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.12.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.12.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.12.0  |  <a name="changelog-nucleus-2.12.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.11.3  |  <a name="changelog-nucleus-2.11.3"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.11.2  |  <a name="changelog-nucleus-2.11.2"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.11.1  |  <a name="changelog-nucleus-2.11.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.11.0  |  <a name="changelog-nucleus-2.11.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.10.3  |  <a name="changelog-nucleus-2.10.3"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.10.2  |  <a name="changelog-nucleus-2.10.2"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.10.1  |  <a name="changelog-nucleus-2.10.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.10.0  |  <a name="changelog-nucleus-2.10.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2,9,6  |  <a name="changelog-nucleus-2.9.6"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.9.5  |  <a name="changelog-nucleus-2.9.5"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.9.4  |  <a name="changelog-nucleus-2.9.4"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.9.3  |  <a name="changelog-nucleus-2.9.3"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.9.2  |  <a name="changelog-nucleus-2.9.2"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.9.1  |  <a name="changelog-nucleus-2.9.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.9.0  |  <a name="changelog-nucleus-2.9.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.8.1  |  <a name="changelog-nucleus-2.8.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.8.0  |  <a name="changelog-nucleus-2.8.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.7.0  |  <a name="changelog-nucleus-2.7.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.6.0  |  <a name="changelog-nucleus-2.6.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.5.6  |  <a name="changelog-nucleus-2.5.6"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.5.5  |  <a name="changelog-nucleus-2.5.5"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.5.4  |  <a name="changelog-nucleus-2.5.4"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.5.3  |  <a name="changelog-nucleus-2.5.3"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.5.2  |  <a name="changelog-nucleus-2.5.2"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.5.1  |   Cette version n'est plus disponible. Les améliorations apportées à cette version sont disponibles dans les versions ultérieures de ce composant.  <a name="changelog-nucleus-2.5.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.5.0  |  <a name="changelog-nucleus-2.5.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.4.0  |  <a name="changelog-nucleus-2.4.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.3.0  |  <a name="changelog-nucleus-2.3.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.2.0  |  <a name="changelog-nucleus-2.2.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.1.0  |  <a name="changelog-nucleus-2.1.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.0.5  |  <a name="changelog-nucleus-2.0.5"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.0.4  |  <a name="changelog-nucleus-2.0.4"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-component.html)  | 
|  2.0.3  |  Première version.  | 

# Greengrass Nucleus Lite
<a name="greengrass-nucleus-lite-component"></a>

Le Greengrass nucleus lite (`aws.greengrass.NucleusLite`) est un environnement d'exécution pour les appareils à périphérie restreinte, optimisé pour un encombrement mémoire minimal (utilise moins de 5 Mo de RAM). Il a été introduit avec AWS IoT Greengrass la version 2.14.0 et est rétrocompatible avec les composants AWS IoT Greengrass génériques, l'API Greengrass V2 et le SDK.

Le Greengrass nucleus lite est proposé comme alternative au [noyau Greengrass commun (`aws.greengrass.Nucleus`) et peut être utilisé dans des flottes hétérogènes d'appareils Greengrass](https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-nucleus-component.html).

**Topics**
+ [Versions](#greengrass-nucleus-lite-component-versions)
+ [Système d’exploitation](#greengrass-nucleus-lite-component-os-support)
+ [Exigences](#greengrass-nucleus-lite-component-requirements)
+ [Compatibilité](#greengrass-nucleus-lite-component-compatibility)
+ [Téléchargement et installation](#greengrass-nucleus-lite-component-install)
+ [Configuration](#greengrass-nucleus-lite-component-configuration)
+ [Fichier journal local](#greengrass-nucleus-lite-component-log-file)
+ [Journal des modifications](#greengrass-nucleus-lite-component-changelog)

## Versions
<a name="greengrass-nucleus-lite-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2,5.x
+ 2.4.x
+ 2.3.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Système d’exploitation
<a name="greengrass-nucleus-lite-component-os-support"></a>

Ce composant peut être installé sur les appareils principaux qui exécutent les systèmes d'exploitation suivants :
+ Linux (distributions avec systemd)

Pour plus d'informations, consultez [Greengrass nucleus](https://docs.aws.amazon.com/greengrass/v2/developerguide/operating-system-feature-support-matrix.html).

## Exigences
<a name="greengrass-nucleus-lite-component-requirements"></a>

Les appareils doivent répondre à certaines exigences pour installer et exécuter le AWS IoT Greengrass Nucleus Lite et le logiciel AWS IoT Greengrass Core. Pour plus d'informations, consultez le [guide de configuration](https://github.com/aws-greengrass/aws-greengrass-lite/blob/main/docs/SETUP.md#setting-up-greengrass-nucleus-lite).
+ 5 Mo d'espace RAM pour le runtime du noyau.
+ 5 Mo de stockage (disque/flash).

Les dépendances supplémentaires du système sont documentées dans le [guide de configuration](https://github.com/aws-greengrass/aws-greengrass-lite/blob/main/docs/SETUP.md#dependencies).

Le composant Greengrass nucleus est compatible pour fonctionner dans un VPC. Pour déployer ce composant dans un VPC, les éléments suivants sont requis :
+ Le noyau Greengrass doit être connecté aux AWS IoT données, aux AWS IoT informations d'identification et à Amazon S3.

Pour exécuter AWS IoT Greengrass Nucleus Lite en tant qu'utilisateur non root, vous pouvez utiliser un conteneur sans root. Pour plus d'informations, consultez la section [Utilisation de Podman](https://github.com/aws-greengrass/aws-greengrass-lite/blob/main/docs/BUILD.md#optional-using-podman) dans le GitHub référentiel AWS IoT Greengrass Nucleus Lite.

## Compatibilité
<a name="greengrass-nucleus-lite-component-compatibility"></a>

Le AWS IoT Greengrass Nucleus Lite est compatible avec l'API AWS IoT Greengrass v2 (sous-ensemble de) et pris en charge SDKs. Cela ne dépend pas d'un langage spécifique runtimes/VMs , mais les composants ajoutés à un déploiement peuvent nécessiter la présence de runtimes spécifiques (par exemple : Java JVM, Python). Pour plus d'informations sur les fonctionnalités prises en charge par Greengrass nucleus lite, consultez. [Compatibilité des fonctionnalités de Greengrass](operating-system-feature-support-matrix.md)

## Téléchargement et installation
<a name="greengrass-nucleus-lite-component-install"></a>

Vous pouvez télécharger un package apt, le [compiler à partir des sources](https://github.com/aws-greengrass/aws-greengrass-lite/blob/main/README.md#getting-started), [utiliser une couche Yocto](https://github.com/aws4embeddedlinux/meta-aws) ou [télécharger une image Yocto prédéfinie pour un](https://github.com/aws4embeddedlinux/meta-aws-demos) appareil compatible (par exemple,). RaspberryPi Depuis la [AWS IoT Core console](https://console.aws.amazon.com/iot/home), vous pourrez télécharger un **kit de connexion** contenant toutes les informations d'identification et la configuration initiale de votre appareil. Les instructions d'installation sont incluses dans chaque méthode de distribution spécifique.

Vous pouvez également suivre un tutoriel pour installer le AWS IoT Greengrass Nucleus Lite et découvrir le développement des composants Greengrass. Pour de plus amples informations, veuillez consulter [Tutoriel : Débuter avec AWS IoT Greengrass V2](getting-started.md).

## Configuration
<a name="greengrass-nucleus-lite-component-configuration"></a>

Le noyau fournit les paramètres [de configuration](https://github.com/aws-greengrass/aws-greengrass-lite/blob/main/docs/SETUP.md#configuring-greengrass) suivants. Certains paramètres nécessitent le redémarrage du logiciel AWS IoT Greengrass Core pour être pris en compte.

`iotRoleAlias`  
Alias de AWS IoT rôle qui pointe vers un rôle IAM d'échange de jetons. Le fournisseur AWS IoT d'informations d'identification assume ce rôle pour permettre au dispositif principal de Greengrass d'interagir avec AWS les services. Pour plus d'informations, voir [Autoriser les appareils principaux à interagir avec AWS les services.](https://docs.aws.amazon.com/greengrass/v2/developerguide/device-service-role.html)

`iotDataEndpoint`  
<a name="nucleus-component-configuration-iot-data-endpoint"></a>Le point AWS IoT de terminaison de données pour votre Compte AWS.

`iotCredEndpoint`  
<a name="nucleus-component-configuration-iot-cred-endpoint"></a>Le point de terminaison des informations d' AWS IoT identification de votre Compte AWS.

`greengrassDataPlanePort`  
Port à utiliser pour les connexions au plan de données. Pour plus d'informations, voir [Connect sur le port 443 ou via un proxy réseau](https://docs.aws.amazon.com/greengrass/v2/developerguide/configure-greengrass-core-v2.html#configure-alpn-network-proxy).  
Vous devez spécifier un port sur lequel l'appareil peut établir des connexions sortantes. Si vous spécifiez un port bloqué, l'appareil ne pourra pas se connecter pour AWS IoT Greengrass recevoir des déploiements. Sélectionnez l’une des options suivantes :  
+ `443`
+ `8443`
+ Valeur par défaut : `8443`

`awsRegion`  
Le Région AWS à utiliser.

`runWithDefault`  
L'utilisateur du système à utiliser pour exécuter les composants.  
<a name="nucleus-component-parameter-restart-para"></a>Lorsque vous déployez une modification de ce paramètre de configuration, le logiciel AWS IoT Greengrass Core redémarre pour que la modification prenne effet.
Cet objet contient les informations suivantes :    
`posixUser`  
Le nom ou l'ID de l'utilisateur du système et, éventuellement, du groupe système que le périphérique principal utilise pour exécuter des composants génériques. Spécifiez l'utilisateur et le groupe en les séparant par deux points (`:`) au format suivant : `user:group`. Le groupe est facultatif. Si vous ne spécifiez aucun groupe, le logiciel AWS IoT Greengrass Core utilise le groupe principal pour l'utilisateur. Par exemple, vous définissez `ggc_user` ou `ggc_user:ggc_group`. Pour de plus amples informations, veuillez consulter [Configurer l'utilisateur qui exécute les composants](configure-greengrass-core-v2.md#configure-component-user).

`networkProxy`  
(Facultatif) Le proxy réseau à utiliser pour toutes les connexions. Pour de plus amples informations, veuillez consulter [Connexion au port 443 ou via un proxy réseau](configure-greengrass-core-v2.md#configure-alpn-network-proxy).  
Lorsque vous déployez une modification de ce paramètre de configuration, la modification prendra effet au prochain redémarrage du logiciel AWS IoT Greengrass Core.
Cet objet contient les informations suivantes :    
`noProxyAddresses`  
(Facultatif) Liste séparée par des virgules d'adresses IP ou de noms d'hôtes exemptés du proxy.  
`proxy`  
Le proxy auquel se connecter. Cet objet contient les informations suivantes :    
`url`  
URL du serveur proxy au format`http://host:port`.  
+ `scheme`— Le schéma, qui doit l'être`http`.
+ `host`— Le nom d'hôte ou l'adresse IP du serveur proxy.
+ `port`— (Facultatif) Le numéro de port. Si vous ne spécifiez pas le port, le périphérique principal de Greengrass utilise la valeur par défaut suivante :
  + `http`— 80

## Fichier journal local
<a name="greengrass-nucleus-lite-component-log-file"></a>

Les messages sont enregistrés sur stdout et les fichiers journaux sont gérés par systemd.

**Pour consulter les journaux de ce composant**
+ `journalctl`À utiliser pour consulter les journaux.

## Journal des modifications
<a name="greengrass-nucleus-lite-component-changelog"></a>


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.5.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html)  | 
|  2.4.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html)  | 
|  2.3.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html)  | 
|  2.3.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html)  | 
|  2.3.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html)  | 
|  2.3.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html)  | 
|  2.2.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html)  | 
|  2.2.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html)  | 
|  2.2.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html)  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html)  | 
|  2.0.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html)  | 
|  2.0.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-nucleus-lite-component.html)  | 
|  2.0.0  |  Première version.  | 

# Authentification de l'appareil client
<a name="client-device-auth-component"></a>

Le composant d'authentification du dispositif client (`aws.greengrass.clientdevices.Auth`) authentifie les dispositifs clients et autorise les actions du dispositif client.

**Note**  <a name="client-device-component-context"></a>
Les appareils clients sont des appareils IoT locaux qui se connectent à un appareil principal de Greengrass pour envoyer des messages MQTT et des données à traiter. Pour de plus amples informations, veuillez consulter [Interagissez avec les appareils IoT locaux](interact-with-local-iot-devices.md).

**Topics**
+ [Versions](#client-device-auth-component-versions)
+ [Type](#client-device-auth-component-type)
+ [Système d’exploitation](#client-device-auth-component-os-support)
+ [Exigences](#client-device-auth-component-requirements)
+ [Dépendances](#client-device-auth-component-dependencies)
+ [Configuration](#client-device-auth-component-configuration)
+ [Fichier journal local](#client-device-auth-component-log-file)
+ [Journal des modifications](#client-device-auth-component-changelog)

## Versions
<a name="client-device-auth-component-versions"></a>

**Note**  
La version 2.3.0 d'authentification du périphérique client n'est plus disponible. Nous vous recommandons vivement de passer à la version 2.3.1 ou ultérieure de l'authentification du périphérique client.

Les versions de ce composant sont les suivantes :
+ 2,5.x
+ 2.4.x
+ 2.3.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Type
<a name="client-device-auth-component-type"></a>

<a name="public-component-type-plugin-para1"></a>Ce composant est un composant de plugin (`aws.greengrass.plugin`). Le [noyau Greengrass](greengrass-nucleus-component.md) 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.

<a name="public-component-type-plugin-para2"></a>Ce composant utilise le même fichier journal que le noyau Greengrass. Pour de plus amples informations, veuillez consulter [AWS IoT Greengrass Journaux de surveillance](monitor-logs.md).

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="client-device-auth-component-os-support"></a>

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

## Exigences
<a name="client-device-auth-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ Le [rôle de service Greengrass](greengrass-service-role.md) doit être associé à votre autorisation Compte AWS et vous accorder cette autorisation. `iot:DescribeCertificate`
+ La AWS IoT politique de l'appareil principal doit autoriser les autorisations suivantes :
  + `greengrass:GetConnectivityInfo`, où les ressources incluent l'ARN du périphérique principal qui exécute ce composant
  + `greengrass:VerifyClientDeviceIoTCertificateAssociation`, où les ressources incluent le nom de ressource Amazon (ARN) de chaque appareil client connecté au périphérique principal
  + `greengrass:VerifyClientDeviceIdentity`
  + `greengrass:PutCertificateAuthorities`
  + `iot:Publish`, où les ressources incluent l'ARN de la rubrique MQTT suivante :
    + `$aws/things/coreDeviceThingName*-gci/shadow/get`
  + `iot:Subscribe`, où les ressources incluent les ARNs filtres thématiques MQTT suivants :
    + `$aws/things/coreDeviceThingName*-gci/shadow/update/delta`
    + `$aws/things/coreDeviceThingName*-gci/shadow/get/accepted`
  + `iot:Receive`, où les ressources incluent les ARNs rubriques MQTT suivantes :
    + `$aws/things/coreDeviceThingName*-gci/shadow/update/delta`
    + `$aws/things/coreDeviceThingName*-gci/shadow/get/accepted`

  Pour plus d’informations, consultez [AWS IoT politiques relatives aux opérations du plan de données](device-auth.md#iot-policies) et [AWS IoT Politique minimale de prise en charge des appareils clients](device-auth.md#client-device-support-minimal-iot-policy).
+ (Facultatif) Pour utiliser l'authentification hors ligne, le rôle Gestion des identités et des accès AWS (IAM) utilisé par le AWS IoT Greengrass service doit contenir l'autorisation suivante :
  + `greengrass:ListClientDevicesAssociatedWithCoreDevice`pour permettre au périphérique principal de répertorier les clients pour l'authentification hors ligne.
+ Le composant d'authentification du périphérique client est compatible pour s'exécuter dans un VPC. Pour déployer ce composant dans un VPC, les éléments suivants sont requis.
  + Le composant d'authentification de l'appareil client doit disposer d'une connectivité AWS IoT data, d' AWS IoT informations d'identification et d'Amazon S3.

### Points de terminaison et ports
<a name="client-device-auth-component-endpoints"></a>

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](allow-device-traffic.md).


| Endpoint |  Port | Obligatoire | Description | 
| --- | --- | --- | --- | 
|  `iot.region.amazonaws.com`  | 443 | Oui |  Utilisé pour obtenir des informations sur les AWS IoT certificats d'objets.  | 

## Dépendances
<a name="client-device-auth-component-dependencies"></a>

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](#client-device-auth-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.5.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,6,0 <2,17,0 | Flexible | 

------
#### [ 2.5.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,6,0 <2,16,0 | Flexible | 

------
#### [ 2.5.2 – 2.5.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,6,0 <2,15,0 | Flexible | 

------
#### [ 2.5.1 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,6,0 <2,14,0 | Flexible | 

------
#### [ 2.4.4 - 2.5.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,6,0 <2,13,0 | Flexible | 

------
#### [ 2.4.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,6,0 <2,12,0 | Flexible | 

------
#### [ 2.4.1 and 2.4.2 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,6,0 <2,11,0 | Flexible | 

------
#### [ 2.3.0 – 2.4.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,6,0 <2,1,0 | Flexible | 

------
#### [ 2.3.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,6,0 <2,1,0 | Flexible | 

------
#### [ 2.2.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,6,0 <=2,9,0 | Flexible | 

------
#### [ 2.2.2 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,6,0 <=2,8,0 | Flexible | 

------
#### [ 2.2.1 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,6,0 <2,8,0 | Flexible | 

------
#### [ 2.2.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,6,0 <2,7,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](greengrass-nucleus-component.md) | >=2,2,0 <2,7,0 | Flexible | 

------
#### [ 2.0.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,6,0 | Flexible | 

------
#### [ 2.0.2 and 2.0.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,5,0 | Flexible | 

------
#### [ 2.0.1 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,4,0 | Flexible | 

------
#### [ 2.0.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,3,0 | Flexible | 

------

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="client-device-auth-component-configuration"></a>

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

**Note**  
L'autorisation d'abonnement est évaluée lors d'une demande d'abonnement du client adressée au courtier MQTT local. Si l'autorisation d'abonnement existante du client est révoquée, le client ne pourra plus s'abonner à un sujet. Il continuera toutefois à recevoir des messages provenant de tous les sujets précédemment abonnés. Pour éviter ce comportement, le courtier MQTT local doit être redémarré après avoir révoqué l'autorisation d'abonnement afin de forcer la réautorisation des clients.  
Pour le composant du courtier MQTT 5 (EMQX), mettez à jour la `restartIdentifier` configuration pour redémarrer le courtier MQTT 5.  
Pour le composant courtier MQTT 3.1.1 (Moquette), il redémarre chaque semaine par défaut lorsque le certificat du serveur change, forçant les clients à se réautoriser. Vous pouvez forcer un redémarrage soit en modifiant les informations de connectivité (adresses IP) du périphérique principal, soit en effectuant un déploiement pour supprimer le composant broker, puis le déployer à nouveau ultérieurement.

------
#### [ v2.5.0 – 2.5.4 ]

`deviceGroups`  
Les groupes d'appareils sont des groupes d'appareils clients autorisés à se connecter et à communiquer avec un appareil principal. Utilisez des règles de sélection pour identifier les groupes d'appareils clients et définissez des *politiques d'autorisation des appareils clients* qui spécifient les autorisations pour chaque groupe d'appareils.  
Cet objet contient les informations suivantes :    
`formatVersion`  
Version du format pour cet objet de configuration.  
Sélectionnez l’une des options suivantes :  
+ `2021-03-05`  
`definitions`  
Les groupes de périphériques pour cet appareil principal. Chaque définition spécifie une *règle de sélection* pour évaluer si un appareil client est membre du groupe. Chaque définition spécifie également la politique d'autorisation à appliquer aux appareils clients qui répondent à la règle de sélection. Si un appareil client est membre de plusieurs groupes d'appareils, les autorisations de l'appareil sont comprises dans la politique d'autorisation de chaque groupe.  
Cet objet contient les informations suivantes :    
`groupNameKey`  
Nom de ce groupe d'appareils. *groupNameKey*Remplacez-le par un nom qui vous aide à identifier ce groupe d'appareils.  
Cet objet contient les informations suivantes :    
`selectionRule`  
Requête qui indique quels appareils clients sont membres de ce groupe d'appareils. Lorsqu'un dispositif client se connecte, le dispositif principal évalue cette règle de sélection pour déterminer si le dispositif client est membre de ce groupe de dispositifs. Si le dispositif client est membre, le dispositif principal utilise la politique de ce groupe d'appareils pour autoriser les actions du dispositif client.  
Chaque règle de sélection comprend au moins une *clause de règle de sélection*, qui est une requête d'expression unique pouvant correspondre aux dispositifs clients. Les règles de sélection utilisent la même syntaxe de requête que l'indexation des AWS IoT flottes. Pour plus d'informations sur la syntaxe des règles de sélection, consultez la section [Syntaxe des requêtes d'indexation du AWS IoT parc](https://docs.aws.amazon.com/iot/latest/developerguide/query-syntax.html) dans le *Guide du AWS IoT Core développeur*.  
Utilisez le `*` caractère générique pour associer plusieurs appareils clients à une seule clause de règle de sélection. Vous pouvez utiliser ce caractère générique au début et à la fin du nom de l'objet pour faire correspondre les appareils clients dont le nom commence ou se termine par la chaîne que vous spécifiez. Vous pouvez également utiliser ce caractère générique pour correspondre à tous les appareils clients.  
Pour sélectionner une valeur contenant deux points (`:`), éliminez les deux points par une barre oblique inverse ()`\`. Dans les formats tels que JSON, vous devez éviter les barres obliques inversées. Vous devez donc saisir deux barres obliques inversées avant le caractère deux-points. Par exemple, spécifiez `thingName: MyTeam\\:ClientDevice1` de sélectionner un objet dont le nom est`MyTeam:ClientDevice1`.
Vous pouvez spécifier le sélecteur suivant :  
+ `thingName`— Le nom de l' AWS IoT objet d'un appareil client.

**Example Exemple de règle de sélection**  
La règle de sélection suivante correspond aux appareils clients dont les noms sont `MyClientDevice1` ou`MyClientDevice2`.  

```
thingName: MyClientDevice1 OR thingName: MyClientDevice2
```

**Example Exemple de règle de sélection (utiliser des caractères génériques)**  
La règle de sélection suivante correspond aux appareils clients dont le nom commence par`MyClientDevice`.  

```
thingName: MyClientDevice*
```

**Example Exemple de règle de sélection (utiliser des caractères génériques)**  
La règle de sélection suivante correspond aux appareils clients dont le nom se termine par`MyClientDevice`.  

```
thingName: *MyClientDevice
```

**Example Exemple de règle de sélection (correspond à tous les appareils)**  
La règle de sélection suivante correspond à tous les appareils clients.  

```
thingName: *
```  
`policyName`  
Politique d'autorisation qui s'applique aux appareils clients de ce groupe d'appareils. Spécifiez le nom d'une politique que vous définissez dans l'`policies`objet.  
`policies`  
Les politiques d'autorisation des appareils clients pour les appareils clients qui se connectent au périphérique principal. Chaque politique d'autorisation spécifie un ensemble d'actions et les ressources sur lesquelles un appareil client peut effectuer ces actions.  
Cet objet contient les informations suivantes :    
`policyNameKey`  
Nom de cette politique d'autorisation. *policyNameKey*Remplacez-le par un nom qui vous aide à identifier cette politique d'autorisation. Vous utilisez ce nom de stratégie pour définir la stratégie qui s'applique à un groupe d'appareils.  
Cet objet contient les informations suivantes :    
`statementNameKey`  
Le nom de cette déclaration de politique. *statementNameKey*Remplacez-le par un nom qui vous aide à identifier cette déclaration de politique.  
Cet objet contient les informations suivantes :    
`operations`  
Liste des opérations permettant d'utiliser les ressources de cette politique.  
Vous pouvez inclure l'une des opérations suivantes :  
+ `mqtt:connect`— Accorde l'autorisation de se connecter à l'appareil principal. Les appareils clients doivent disposer de cette autorisation pour se connecter à un périphérique principal.

  Cette opération prend en charge les ressources suivantes :
  + `mqtt:clientId:deviceClientId`— Limitez l'accès en fonction de l'ID client utilisé par un appareil client pour se connecter au broker MQTT du périphérique principal. Remplacez *deviceClientId* par l'ID client à utiliser.
+ `mqtt:publish`— Accorde l'autorisation de publier des messages MQTT sur des sujets.

  Cette opération prend en charge les ressources suivantes :
  + <a name="client-device-authorization-policy-resource-mqtt-topic"></a>`mqtt:topic:mqttTopic`— Limitez l'accès en fonction du thème MQTT dans lequel un appareil client publie un message. Remplacez *mqttTopic* par le sujet à utiliser.

    Cette ressource ne prend pas en charge les caractères génériques des rubriques MQTT.
+ `mqtt:subscribe`— Accorde l'autorisation de s'abonner aux filtres de sujets MQTT pour recevoir des messages.

  Cette opération prend en charge les ressources suivantes :
  + `mqtt:topicfilter:mqttTopicFilter`— Limitez l'accès en fonction des sujets MQTT sur lesquels un appareil client peut s'abonner à des messages. Remplacez *mqttTopicFilter* par le filtre de rubrique à utiliser.

    Cette ressource ne prend pas en charge les caractères génériques des rubriques MQTT.  
`resources`  
La liste des ressources permettant d'effectuer les opérations prévues dans cette politique. Spécifiez les ressources qui correspondent aux opérations de cette politique. Par exemple, vous pouvez spécifier une liste de ressources thématiques MQTT (`mqtt:topic:mqttTopic`) dans une politique qui spécifie l'`mqtt:publish`opération.  
Vous pouvez spécifier le `*` caractère générique n'importe où dans la variable de ressource pour autoriser l'accès à toutes les ressources. Par exemple, vous pouvez spécifier **mqtt:topic:my\$1** d'autoriser l'accès aux ressources correspondant à cette entrée.  
La variable de ressource suivante est prise en charge :  
+ `mqtt:topic:${iot:Connection.Thing.ThingName}`

  Cela correspond au nom de l'objet dans le AWS IoT Core registre pour lequel la politique est évaluée. AWS IoT Core utilise le certificat présenté par l'appareil lorsqu'il s'authentifie pour déterminer quel élément utiliser pour vérifier la connexion. Cette variable de politique n'est disponible que lorsqu'un appareil se connecte via MQTT ou MQTT via le WebSocket protocole.  
`statementDescription`  
(Facultatif) Description de cette déclaration de politique.

`certificates`  <a name="client-device-auth-component-configuration-certificates"></a>
(Facultatif) Les options de configuration des certificats pour ce périphérique principal. Cet objet contient les informations suivantes :    
`serverCertificateValiditySeconds`  
(Facultatif) Durée (en secondes) après laquelle le certificat du serveur MQTT local expire. Vous pouvez configurer cette option pour personnaliser la fréquence à laquelle les appareils clients se déconnectent et se reconnectent au périphérique principal.  
Ce composant fait pivoter le certificat du serveur MQTT local 24 heures avant son expiration. Le courtier MQTT, tel que le [composant du courtier Moquette MQTT](mqtt-broker-moquette-component.md), génère un nouveau certificat et redémarre. Dans ce cas, tous les appareils clients connectés à ce périphérique principal sont déconnectés. Les appareils clients peuvent se reconnecter au périphérique principal après un court laps de temps.  
Par défaut : `604800` (7 jours)  
Valeur minimale : `172800` (2 jours)  
Valeur maximale : `864000` (10 jours)

`performance`  
(Facultatif) Les options de configuration des performances pour ce périphérique principal. Cet objet contient les informations suivantes :    
`maxActiveAuthTokens`  
(Facultatif) Le nombre maximum de jetons d'autorisation de l'appareil client actifs. Vous pouvez augmenter ce nombre pour permettre à un plus grand nombre d'appareils clients de se connecter à un appareil central unique, sans les réauthentifier.  
Valeur par défaut : `2500`  
`cloudRequestQueueSize`  
(Facultatif) Nombre maximal de AWS Cloud demandes à mettre en file d'attente avant que ce composant ne rejette les demandes.  
Valeur par défaut : `100`  
`maxConcurrentCloudRequests`  
(Facultatif) Le nombre maximum de demandes simultanées à envoyer au AWS Cloud. Vous pouvez augmenter ce nombre pour améliorer les performances d'authentification sur les appareils principaux auxquels vous connectez un grand nombre d'appareils clients.  
Valeur par défaut : `1`

`certificateAuthority`  
(Facultatif) Options de configuration de l'autorité de certification pour remplacer l'autorité intermédiaire du périphérique principal par votre propre autorité de certification intermédiaire.  
Si vous configurez votre appareil principal Greengrass avec une autorité de certification (CA) personnalisée et que vous utilisez la même autorité de certification pour délivrer les certificats des appareils clients, Greengrass contourne les contrôles de politique d'autorisation pour les opérations MQTT du périphérique client. Le composant d'authentification du périphérique client fait entièrement confiance aux clients à l'aide de certificats signés par l'autorité de certification pour laquelle il est configuré.  
Pour limiter ce comportement lors de l'utilisation d'une autorité de certification personnalisée, créez et signez les appareils clients à l'aide d'une autorité de certification différente ou d'une autorité de certification intermédiaire, puis ajustez les `certificateChainUri` champs `certificateUri` et pour qu'ils pointent vers l'autorité de certification intermédiaire appropriée.
 Cet objet contient les informations suivantes.    
URI du certificat  
Emplacement du certificat. Il peut s'agir d'un URI de système de fichiers ou d'un URI pointant vers un certificat stocké dans un module de sécurité matériel.  
`certificateChainUri`  
Emplacement de la chaîne de certificats pour l'autorité de certification du périphérique principal. Il doit s'agir de la chaîne de certificats complète remontant à votre autorité de certification racine. Il peut s'agir d'un URI de système de fichiers ou d'un URI pointant vers une chaîne de certificats stockée dans un module de sécurité matériel.  
`privateKeyUri`  
Emplacement de la clé privée de l'appareil principal. Il peut s'agir d'un URI de système de fichiers ou d'un URI pointant vers une clé privée de certificat stockée dans un module de sécurité matériel.

`security`  
(Facultatif) Options de configuration de sécurité pour ce périphérique principal. Cet objet contient les informations suivantes.    
`clientDeviceTrustDurationMinutes`  
Durée en minutes pendant laquelle les informations d'authentification d'un appareil client peuvent être fiables avant qu'il ne soit nécessaire de s'authentifier à nouveau auprès du périphérique principal. La valeur par défaut est 1.

`metrics`  
(Facultatif) Les options de métriques pour ce périphérique principal. Les mesures d'erreur ne s'afficheront qu'en cas d'erreur d'authentification du périphérique client. Cet objet contient les informations suivantes :    
`disableMetrics`  
Si le `disableMetrics` champ est défini sur`true`, l'authentification de l'appareil client ne collectera pas de métriques.  
Valeur par défaut : `false`  
`aggregatePeriodSeconds`  
Période d'agrégation en secondes qui détermine la fréquence à laquelle l'authentification du dispositif client agrège les métriques et les envoie à l'agent de télémétrie. Cela ne change pas la fréquence à laquelle les métriques sont publiées, car l'agent de télémétrie les publie toujours une fois par jour.  
Valeur par défaut : `3600`

startupTimeoutSeconds  
(Facultatif) Durée maximale en secondes pendant laquelle le composant démarre. L'état du composant passe à `ERRORED` s'il dépasse ce délai d'attente.  
Valeur par défaut : `120`

**Example Exemple : mise à jour de la fusion de configurations (à l'aide d'une politique restrictive)**  <a name="client-device-auth-component-configuration-example-restrictive"></a>
L'exemple de configuration suivant indique d'autoriser les appareils clients dont le nom commence par `MyClientDevice` à se connecter et ce, publish/subscribe sur tous les sujets.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyDeviceGroup": {
        "selectionRule": "thingName: MyClientDevice*",
        "policyName": "MyRestrictivePolicy"
      }
    },
    "policies": {
      "MyRestrictivePolicy": {
        "AllowConnect": {
          "statementDescription": "Allow client devices to connect.",
          "operations": [
            "mqtt:connect"
          ],
          "resources": [
            "*"
          ]
        },
        "AllowPublish": {
          "statementDescription": "Allow client devices to publish on test/topic.",
          "operations": [
            "mqtt:publish"
          ],
          "resources": [
            "mqtt:topic:test/topic"
          ]
        },
        "AllowSubscribe": {
          "statementDescription": "Allow client devices to subscribe to test/topic/response.",
          "operations": [
            "mqtt:subscribe"
          ],
          "resources": [
            "mqtt:topicfilter:test/topic/response"
          ]
        }
      }
    }
  }
}
```

**Example Exemple : mise à jour de la fusion de configurations (à l'aide d'une politique permissive)**  <a name="client-device-auth-component-configuration-example-permissive"></a>
L'exemple de configuration suivant indique d'autoriser tous les appareils clients à se connecter et ce, publish/subscribe sur tous les sujets.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyPermissiveDeviceGroup": {
        "selectionRule": "thingName: *",
        "policyName": "MyPermissivePolicy"
      }
    },
    "policies": {
      "MyPermissivePolicy": {
        "AllowAll": {
          "statementDescription": "Allow client devices to perform all actions.",
          "operations": [
            "*"
          ],
          "resources": [
            "*"
          ]
        }
      }
    }
  }
}
```

**Example Exemple : mise à jour de la fusion de configurations (à l'aide d'une politique de nom d'objet)**  <a name="client-device-auth-component-configuration-example-mythingname"></a>
L'exemple de configuration suivant permet aux appareils clients de publier sur des sujets commençant par le nom de l'objet du périphérique client et se terminant par la chaîne`topic`.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "myThing": {
        "selectionRule": "thingName: *",
        "policyName": "MyThingNamePolicy"
      }
    },
    "policies": {
      "MyThingNamePolicy": {
        "policyStatement": {
          "statementDescription": "mqtt publish",
          "operations": [
            "mqtt:publish"
          ],
          "resources": [
            "mqtt:topic:${iot:Connection.Thing.ThingName}/*/topic"
          ]
        }
      }
    }
  }
}
```

------
#### [ v2.4.5 ]

`deviceGroups`  
Les groupes d'appareils sont des groupes d'appareils clients autorisés à se connecter et à communiquer avec un appareil principal. Utilisez des règles de sélection pour identifier les groupes d'appareils clients et définissez des *politiques d'autorisation des appareils clients* qui spécifient les autorisations pour chaque groupe d'appareils.  
Cet objet contient les informations suivantes :    
`formatVersion`  
Version du format pour cet objet de configuration.  
Sélectionnez l’une des options suivantes :  
+ `2021-03-05`  
`definitions`  
Les groupes de périphériques pour cet appareil principal. Chaque définition spécifie une *règle de sélection* pour évaluer si un appareil client est membre du groupe. Chaque définition spécifie également la politique d'autorisation à appliquer aux appareils clients qui répondent à la règle de sélection. Si un appareil client est membre de plusieurs groupes d'appareils, les autorisations de l'appareil sont comprises dans la politique d'autorisation de chaque groupe.  
Cet objet contient les informations suivantes :    
`groupNameKey`  
Nom de ce groupe d'appareils. *groupNameKey*Remplacez-le par un nom qui vous aide à identifier ce groupe d'appareils.  
Cet objet contient les informations suivantes :    
`selectionRule`  
Requête qui indique quels appareils clients sont membres de ce groupe d'appareils. Lorsqu'un dispositif client se connecte, le dispositif principal évalue cette règle de sélection pour déterminer si le dispositif client est membre de ce groupe de dispositifs. Si le dispositif client est membre, le dispositif principal utilise la politique de ce groupe d'appareils pour autoriser les actions du dispositif client.  
Chaque règle de sélection comprend au moins une *clause de règle de sélection*, qui est une requête d'expression unique pouvant correspondre aux dispositifs clients. Les règles de sélection utilisent la même syntaxe de requête que l'indexation des AWS IoT flottes. Pour plus d'informations sur la syntaxe des règles de sélection, consultez la section [Syntaxe des requêtes d'indexation du AWS IoT parc](https://docs.aws.amazon.com/iot/latest/developerguide/query-syntax.html) dans le *Guide du AWS IoT Core développeur*.  
Utilisez le `*` caractère générique pour associer plusieurs appareils clients à une seule clause de règle de sélection. Vous pouvez utiliser ce caractère générique au début et à la fin du nom de l'objet pour faire correspondre les appareils clients dont le nom commence ou se termine par la chaîne que vous spécifiez. Vous pouvez également utiliser ce caractère générique pour correspondre à tous les appareils clients.  
Pour sélectionner une valeur contenant deux points (`:`), éliminez les deux points par une barre oblique inverse ()`\`. Dans les formats tels que JSON, vous devez éviter les barres obliques inversées. Vous devez donc saisir deux barres obliques inversées avant le caractère deux-points. Par exemple, spécifiez `thingName: MyTeam\\:ClientDevice1` de sélectionner un objet dont le nom est`MyTeam:ClientDevice1`.
Vous pouvez spécifier le sélecteur suivant :  
+ `thingName`— Le nom de l' AWS IoT objet d'un appareil client.

**Example Exemple de règle de sélection**  
La règle de sélection suivante correspond aux appareils clients dont les noms sont `MyClientDevice1` ou`MyClientDevice2`.  

```
thingName: MyClientDevice1 OR thingName: MyClientDevice2
```

**Example Exemple de règle de sélection (utiliser des caractères génériques)**  
La règle de sélection suivante correspond aux appareils clients dont le nom commence par`MyClientDevice`.  

```
thingName: MyClientDevice*
```

**Example Exemple de règle de sélection (utiliser des caractères génériques)**  
La règle de sélection suivante correspond aux appareils clients dont le nom se termine par`MyClientDevice`.  

```
thingName: *MyClientDevice
```

**Example Exemple de règle de sélection (correspond à tous les appareils)**  
La règle de sélection suivante correspond à tous les appareils clients.  

```
thingName: *
```  
`policyName`  
Politique d'autorisation qui s'applique aux appareils clients de ce groupe d'appareils. Spécifiez le nom d'une politique que vous définissez dans l'`policies`objet.  
`policies`  
Les politiques d'autorisation des appareils clients pour les appareils clients qui se connectent au périphérique principal. Chaque politique d'autorisation spécifie un ensemble d'actions et les ressources sur lesquelles un appareil client peut effectuer ces actions.  
Cet objet contient les informations suivantes :    
`policyNameKey`  
Nom de cette politique d'autorisation. *policyNameKey*Remplacez-le par un nom qui vous aide à identifier cette politique d'autorisation. Vous utilisez ce nom de stratégie pour définir la stratégie qui s'applique à un groupe d'appareils.  
Cet objet contient les informations suivantes :    
`statementNameKey`  
Le nom de cette déclaration de politique. *statementNameKey*Remplacez-le par un nom qui vous aide à identifier cette déclaration de politique.  
Cet objet contient les informations suivantes :    
`operations`  
Liste des opérations permettant d'utiliser les ressources de cette politique.  
Vous pouvez inclure l'une des opérations suivantes :  
+ `mqtt:connect`— Accorde l'autorisation de se connecter à l'appareil principal. Les appareils clients doivent disposer de cette autorisation pour se connecter à un périphérique principal.

  Cette opération prend en charge les ressources suivantes :
  + `mqtt:clientId:deviceClientId`— Limitez l'accès en fonction de l'ID client utilisé par un appareil client pour se connecter au broker MQTT du périphérique principal. Remplacez *deviceClientId* par l'ID client à utiliser.
+ `mqtt:publish`— Accorde l'autorisation de publier des messages MQTT sur des sujets.

  Cette opération prend en charge les ressources suivantes :
  + <a name="client-device-authorization-policy-resource-mqtt-topic"></a>`mqtt:topic:mqttTopic`— Limitez l'accès en fonction du thème MQTT dans lequel un appareil client publie un message. Remplacez *mqttTopic* par le sujet à utiliser.

    Cette ressource ne prend pas en charge les caractères génériques des rubriques MQTT.
+ `mqtt:subscribe`— Accorde l'autorisation de s'abonner aux filtres de sujets MQTT pour recevoir des messages.

  Cette opération prend en charge les ressources suivantes :
  + <a name="client-device-authorization-policy-resource-mqtt-topicfilter"></a>`mqtt:topicfilter:mqttTopicFilter`— Limitez l'accès en fonction des sujets MQTT sur lesquels un appareil client peut s'abonner à des messages. Remplacez *mqttTopicFilter* par le filtre de rubrique à utiliser.

    Cette ressource prend en charge les caractères génériques `+` des rubriques `#` MQTT et MQTT. Pour plus d'informations, consultez les [rubriques relatives au MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) dans le *Guide du AWS IoT Core développeur*.

    L'appareil client peut s'abonner aux filtres de rubrique exacts que vous autorisez. Par exemple, si vous autorisez l'appareil client à s'abonner à la `mqtt:topicfilter:client/+/status` ressource, il peut s'y abonner, `client/+/status` mais pas`client/client1/status`.
Vous pouvez spécifier le `*` caractère générique pour autoriser l'accès à toutes les actions.  
`resources`  
La liste des ressources permettant d'effectuer les opérations prévues dans cette politique. Spécifiez les ressources qui correspondent aux opérations de cette politique. Par exemple, vous pouvez spécifier une liste de ressources thématiques MQTT (`mqtt:topic:mqttTopic`) dans une politique qui spécifie l'`mqtt:publish`opération.  
Vous pouvez spécifier le `*` caractère générique pour autoriser l'accès à toutes les ressources. Vous ne pouvez pas utiliser le `*` caractère générique pour faire correspondre des identificateurs de ressources partiels. Par exemple, vous pouvez spécifier**"resources": "\$1"**, mais vous ne pouvez pas le faire**"resources": "mqtt:clientId:\$1"**.  
`statementDescription`  
(Facultatif) Description de cette déclaration de politique.

`certificates`  <a name="client-device-auth-component-configuration-certificates"></a>
(Facultatif) Les options de configuration des certificats pour ce périphérique principal. Cet objet contient les informations suivantes :    
`serverCertificateValiditySeconds`  
(Facultatif) Durée (en secondes) après laquelle le certificat du serveur MQTT local expire. Vous pouvez configurer cette option pour personnaliser la fréquence à laquelle les appareils clients se déconnectent et se reconnectent au périphérique principal.  
Ce composant fait pivoter le certificat du serveur MQTT local 24 heures avant son expiration. Le courtier MQTT, tel que le [composant du courtier Moquette MQTT](mqtt-broker-moquette-component.md), génère un nouveau certificat et redémarre. Dans ce cas, tous les appareils clients connectés à ce périphérique principal sont déconnectés. Les appareils clients peuvent se reconnecter au périphérique principal après un court laps de temps.  
Par défaut : `604800` (7 jours)  
Valeur minimale : `172800` (2 jours)  
Valeur maximale : `864000` (10 jours)

`performance`  
(Facultatif) Les options de configuration des performances pour ce périphérique principal. Cet objet contient les informations suivantes :    
`maxActiveAuthTokens`  
(Facultatif) Le nombre maximum de jetons d'autorisation de l'appareil client actifs. Vous pouvez augmenter ce nombre pour permettre à un plus grand nombre d'appareils clients de se connecter à un appareil central unique, sans les réauthentifier.  
Valeur par défaut : `2500`  
`cloudRequestQueueSize`  
(Facultatif) Nombre maximal de AWS Cloud demandes à mettre en file d'attente avant que ce composant ne rejette les demandes.  
Valeur par défaut : `100`  
`maxConcurrentCloudRequests`  
(Facultatif) Le nombre maximum de demandes simultanées à envoyer au AWS Cloud. Vous pouvez augmenter ce nombre pour améliorer les performances d'authentification sur les appareils principaux auxquels vous connectez un grand nombre d'appareils clients.  
Valeur par défaut : `1`

`certificateAuthority`  
(Facultatif) Options de configuration de l'autorité de certification pour remplacer l'autorité intermédiaire du périphérique principal par votre propre autorité de certification intermédiaire.  
Si vous configurez votre appareil principal Greengrass avec une autorité de certification (CA) personnalisée et que vous utilisez la même autorité de certification pour délivrer les certificats des appareils clients, Greengrass contourne les contrôles de politique d'autorisation pour les opérations MQTT du périphérique client. Le composant d'authentification du périphérique client fait entièrement confiance aux clients à l'aide de certificats signés par l'autorité de certification pour laquelle il est configuré.  
Pour limiter ce comportement lors de l'utilisation d'une autorité de certification personnalisée, créez et signez les appareils clients à l'aide d'une autorité de certification différente ou d'une autorité de certification intermédiaire, puis ajustez les `certificateChainUri` champs `certificateUri` et pour qu'ils pointent vers l'autorité de certification intermédiaire appropriée.
 Cet objet contient les informations suivantes.    
URI du certificat  
Emplacement du certificat. Il peut s'agir d'un URI de système de fichiers ou d'un URI pointant vers un certificat stocké dans un module de sécurité matériel.  
`certificateChainUri`  
Emplacement de la chaîne de certificats pour l'autorité de certification du périphérique principal. Il doit s'agir de la chaîne de certificats complète remontant à votre autorité de certification racine. Il peut s'agir d'un URI de système de fichiers ou d'un URI pointant vers une chaîne de certificats stockée dans un module de sécurité matériel.  
`privateKeyUri`  
Emplacement de la clé privée de l'appareil principal. Il peut s'agir d'un URI de système de fichiers ou d'un URI pointant vers une clé privée de certificat stockée dans un module de sécurité matériel.

`security`  
(Facultatif) Options de configuration de sécurité pour ce périphérique principal. Cet objet contient les informations suivantes.    
`clientDeviceTrustDurationMinutes`  
Durée en minutes pendant laquelle les informations d'authentification d'un appareil client peuvent être fiables avant qu'il ne soit nécessaire de s'authentifier à nouveau auprès du périphérique principal. La valeur par défaut est 1.

`metrics`  
(Facultatif) Les options de métriques pour ce périphérique principal. Les mesures d'erreur ne s'afficheront qu'en cas d'erreur d'authentification du périphérique client. Cet objet contient les informations suivantes :    
`disableMetrics`  
Si le `disableMetrics` champ est défini sur`true`, l'authentification de l'appareil client ne collectera pas de métriques.  
Valeur par défaut : `false`  
`aggregatePeriodSeconds`  
Période d'agrégation en secondes qui détermine la fréquence à laquelle l'authentification du dispositif client agrège les métriques et les envoie à l'agent de télémétrie. Cela ne change pas la fréquence à laquelle les métriques sont publiées, car l'agent de télémétrie les publie toujours une fois par jour.  
Valeur par défaut : `3600`

startupTimeoutSeconds  
(Facultatif) Durée maximale en secondes pendant laquelle le composant démarre. L'état du composant passe à `ERRORED` s'il dépasse ce délai d'attente.  
Valeur par défaut : `120`

**Example Exemple : mise à jour de la fusion de configurations (à l'aide d'une politique restrictive)**  <a name="client-device-auth-component-configuration-example-restrictive"></a>
L'exemple de configuration suivant indique d'autoriser les appareils clients dont le nom commence par `MyClientDevice` à se connecter et ce, publish/subscribe sur tous les sujets.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyDeviceGroup": {
        "selectionRule": "thingName: MyClientDevice*",
        "policyName": "MyRestrictivePolicy"
      }
    },
    "policies": {
      "MyRestrictivePolicy": {
        "AllowConnect": {
          "statementDescription": "Allow client devices to connect.",
          "operations": [
            "mqtt:connect"
          ],
          "resources": [
            "*"
          ]
        },
        "AllowPublish": {
          "statementDescription": "Allow client devices to publish on test/topic.",
          "operations": [
            "mqtt:publish"
          ],
          "resources": [
            "mqtt:topic:test/topic"
          ]
        },
        "AllowSubscribe": {
          "statementDescription": "Allow client devices to subscribe to test/topic/response.",
          "operations": [
            "mqtt:subscribe"
          ],
          "resources": [
            "mqtt:topicfilter:test/topic/response"
          ]
        }
      }
    }
  }
}
```

**Example Exemple : mise à jour de la fusion de configurations (à l'aide d'une politique permissive)**  <a name="client-device-auth-component-configuration-example-permissive"></a>
L'exemple de configuration suivant indique d'autoriser tous les appareils clients à se connecter et ce, publish/subscribe sur tous les sujets.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyPermissiveDeviceGroup": {
        "selectionRule": "thingName: *",
        "policyName": "MyPermissivePolicy"
      }
    },
    "policies": {
      "MyPermissivePolicy": {
        "AllowAll": {
          "statementDescription": "Allow client devices to perform all actions.",
          "operations": [
            "*"
          ],
          "resources": [
            "*"
          ]
        }
      }
    }
  }
}
```

------
#### [ v2.4.2 - v2.4.4 ]

`deviceGroups`  <a name="client-device-auth-component-configuration-devicegroups"></a>
Les groupes d'appareils sont des groupes d'appareils clients autorisés à se connecter et à communiquer avec un appareil principal. Utilisez des règles de sélection pour identifier les groupes d'appareils clients et définissez des *politiques d'autorisation des appareils clients* qui spécifient les autorisations pour chaque groupe d'appareils.  
Cet objet contient les informations suivantes :    
`formatVersion`  
Version du format pour cet objet de configuration.  
Sélectionnez l’une des options suivantes :  
+ `2021-03-05`  
`definitions`  
Les groupes de périphériques pour cet appareil principal. Chaque définition spécifie une *règle de sélection* pour évaluer si un appareil client est membre du groupe. Chaque définition spécifie également la politique d'autorisation à appliquer aux appareils clients qui répondent à la règle de sélection. Si un appareil client est membre de plusieurs groupes d'appareils, les autorisations de l'appareil sont comprises dans la politique d'autorisation de chaque groupe.  
Cet objet contient les informations suivantes :    
`groupNameKey`  
Nom de ce groupe d'appareils. *groupNameKey*Remplacez-le par un nom qui vous aide à identifier ce groupe d'appareils.  
Cet objet contient les informations suivantes :    
`selectionRule`  
Requête qui indique quels appareils clients sont membres de ce groupe d'appareils. Lorsqu'un dispositif client se connecte, le dispositif principal évalue cette règle de sélection pour déterminer si le dispositif client est membre de ce groupe de dispositifs. Si le dispositif client est membre, le dispositif principal utilise la politique de ce groupe d'appareils pour autoriser les actions du dispositif client.  
Chaque règle de sélection comprend au moins une *clause de règle de sélection*, qui est une requête d'expression unique pouvant correspondre aux dispositifs clients. Les règles de sélection utilisent la même syntaxe de requête que l'indexation des AWS IoT flottes. Pour plus d'informations sur la syntaxe des règles de sélection, consultez la section [Syntaxe des requêtes d'indexation du AWS IoT parc](https://docs.aws.amazon.com/iot/latest/developerguide/query-syntax.html) dans le *Guide du AWS IoT Core développeur*.  
Utilisez le `*` caractère générique pour associer plusieurs appareils clients à une seule clause de règle de sélection. Vous pouvez utiliser ce caractère générique à la fin du nom de l'objet pour faire correspondre les appareils clients dont le nom commence par une chaîne que vous spécifiez. Vous pouvez également utiliser ce caractère générique pour correspondre à tous les appareils clients.  
Pour sélectionner une valeur contenant deux points (`:`), éliminez les deux points par une barre oblique inverse ()`\\`. Dans les formats tels que JSON, vous devez éviter les barres obliques inversées. Vous devez donc saisir deux barres obliques inversées avant le caractère deux-points. Par exemple, spécifiez `thingName: MyTeam\\\\:ClientDevice1` de sélectionner un objet dont le nom est`MyTeam:ClientDevice1`.
Vous pouvez spécifier le sélecteur suivant :  
+ `thingName`— Le nom de l' AWS IoT objet d'un appareil client.

**Example Exemple de règle de sélection**  
La règle de sélection suivante correspond aux appareils clients dont les noms sont `MyClientDevice1` ou`MyClientDevice2`.  

```
thingName: MyClientDevice1 OR thingName: MyClientDevice2
```

**Example Exemple de règle de sélection (utiliser des caractères génériques)**  
La règle de sélection suivante correspond aux appareils clients dont le nom commence par`MyClientDevice`.  

```
thingName: MyClientDevice*
```

**Example Exemple de règle de sélection (correspond à tous les appareils)**  
La règle de sélection suivante correspond à tous les appareils clients.  

```
thingName: *
```  
`policyName`  
Politique d'autorisation qui s'applique aux appareils clients de ce groupe d'appareils. Spécifiez le nom d'une politique que vous définissez dans l'`policies`objet.  
`policies`  
Les politiques d'autorisation des appareils clients pour les appareils clients qui se connectent au périphérique principal. Chaque politique d'autorisation spécifie un ensemble d'actions et les ressources sur lesquelles un appareil client peut effectuer ces actions.  
Cet objet contient les informations suivantes :    
`policyNameKey`  
Nom de cette politique d'autorisation. *policyNameKey*Remplacez-le par un nom qui vous aide à identifier cette politique d'autorisation. Vous utilisez ce nom de stratégie pour définir la stratégie qui s'applique à un groupe d'appareils.  
Cet objet contient les informations suivantes :    
`statementNameKey`  
Le nom de cette déclaration de politique. *statementNameKey*Remplacez-le par un nom qui vous aide à identifier cette déclaration de politique.  
Cet objet contient les informations suivantes :    
`operations`  
Liste des opérations permettant d'utiliser les ressources de cette politique.  
Vous pouvez inclure l'une des opérations suivantes :  
+ `mqtt:connect`— Accorde l'autorisation de se connecter à l'appareil principal. Les appareils clients doivent disposer de cette autorisation pour se connecter à un périphérique principal.

  Cette opération prend en charge les ressources suivantes :
  + `mqtt:clientId:deviceClientId`— Limitez l'accès en fonction de l'ID client utilisé par un appareil client pour se connecter au broker MQTT du périphérique principal. Remplacez *deviceClientId* par l'ID client à utiliser.
+ `mqtt:publish`— Accorde l'autorisation de publier des messages MQTT sur des sujets.

  Cette opération prend en charge les ressources suivantes :
  + <a name="client-device-authorization-policy-resource-mqtt-topic"></a>`mqtt:topic:mqttTopic`— Limitez l'accès en fonction du thème MQTT dans lequel un appareil client publie un message. Remplacez *mqttTopic* par le sujet à utiliser.

    Cette ressource ne prend pas en charge les caractères génériques des rubriques MQTT.
+ `mqtt:subscribe`— Accorde l'autorisation de s'abonner aux filtres de sujets MQTT pour recevoir des messages.

  Cette opération prend en charge les ressources suivantes :
  + <a name="client-device-authorization-policy-resource-mqtt-topicfilter"></a>`mqtt:topicfilter:mqttTopicFilter`— Limitez l'accès en fonction des sujets MQTT sur lesquels un appareil client peut s'abonner à des messages. Remplacez *mqttTopicFilter* par le filtre de rubrique à utiliser.

    Cette ressource prend en charge les caractères génériques `+` des rubriques `#` MQTT et MQTT. Pour plus d'informations, consultez les [rubriques relatives au MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) dans le *Guide du AWS IoT Core développeur*.

    L'appareil client peut s'abonner aux filtres de rubrique exacts que vous autorisez. Par exemple, si vous autorisez l'appareil client à s'abonner à la `mqtt:topicfilter:client/+/status` ressource, il peut s'y abonner, `client/+/status` mais pas`client/client1/status`.
Vous pouvez spécifier le `*` caractère générique pour autoriser l'accès à toutes les actions.  
`resources`  
La liste des ressources permettant d'effectuer les opérations prévues dans cette politique. Spécifiez les ressources qui correspondent aux opérations de cette politique. Par exemple, vous pouvez spécifier une liste de ressources thématiques MQTT (`mqtt:topic:mqttTopic`) dans une politique qui spécifie l'`mqtt:publish`opération.  
Vous pouvez spécifier le `*` caractère générique pour autoriser l'accès à toutes les ressources. Vous ne pouvez pas utiliser le `*` caractère générique pour faire correspondre des identificateurs de ressources partiels. Par exemple, vous pouvez spécifier**"resources": "\$1"**, mais vous ne pouvez pas le faire**"resources": "mqtt:clientId:\$1"**.  
`statementDescription`  
(Facultatif) Description de cette déclaration de politique.

`certificates`  <a name="client-device-auth-component-configuration-certificates"></a>
(Facultatif) Les options de configuration des certificats pour ce périphérique principal. Cet objet contient les informations suivantes :    
`serverCertificateValiditySeconds`  
(Facultatif) Durée (en secondes) après laquelle le certificat du serveur MQTT local expire. Vous pouvez configurer cette option pour personnaliser la fréquence à laquelle les appareils clients se déconnectent et se reconnectent au périphérique principal.  
Ce composant fait pivoter le certificat du serveur MQTT local 24 heures avant son expiration. Le courtier MQTT, tel que le [composant du courtier Moquette MQTT](mqtt-broker-moquette-component.md), génère un nouveau certificat et redémarre. Dans ce cas, tous les appareils clients connectés à ce périphérique principal sont déconnectés. Les appareils clients peuvent se reconnecter au périphérique principal après un court laps de temps.  
Par défaut : `604800` (7 jours)  
Valeur minimale : `172800` (2 jours)  
Valeur maximale : `864000` (10 jours)

`performance`  
(Facultatif) Les options de configuration des performances pour ce périphérique principal. Cet objet contient les informations suivantes :    
`maxActiveAuthTokens`  
(Facultatif) Le nombre maximum de jetons d'autorisation de l'appareil client actifs. Vous pouvez augmenter ce nombre pour permettre à un plus grand nombre d'appareils clients de se connecter à un appareil central unique, sans les réauthentifier.  
Valeur par défaut : `2500`  
`cloudRequestQueueSize`  
(Facultatif) Nombre maximal de AWS Cloud demandes à mettre en file d'attente avant que ce composant ne rejette les demandes.  
Valeur par défaut : `100`  
`maxConcurrentCloudRequests`  
(Facultatif) Le nombre maximum de demandes simultanées à envoyer au AWS Cloud. Vous pouvez augmenter ce nombre pour améliorer les performances d'authentification sur les appareils principaux auxquels vous connectez un grand nombre d'appareils clients.  
Valeur par défaut : `1`

`certificateAuthority`  
(Facultatif) Options de configuration de l'autorité de certification pour remplacer l'autorité intermédiaire du périphérique principal par votre propre autorité de certification intermédiaire.  
Si vous configurez votre appareil principal Greengrass avec une autorité de certification (CA) personnalisée et que vous utilisez la même autorité de certification pour délivrer les certificats des appareils clients, Greengrass contourne les contrôles de politique d'autorisation pour les opérations MQTT du périphérique client. Le composant d'authentification du périphérique client fait entièrement confiance aux clients à l'aide de certificats signés par l'autorité de certification pour laquelle il est configuré.  
Pour limiter ce comportement lors de l'utilisation d'une autorité de certification personnalisée, créez et signez les appareils clients à l'aide d'une autorité de certification différente ou d'une autorité de certification intermédiaire, puis ajustez les `certificateChainUri` champs `certificateUri` et pour qu'ils pointent vers l'autorité de certification intermédiaire appropriée.
 Cet objet contient les informations suivantes.    
URI du certificat  
Emplacement du certificat. Il peut s'agir d'un URI de système de fichiers ou d'un URI pointant vers un certificat stocké dans un module de sécurité matériel.  
`certificateChainUri`  
Emplacement de la chaîne de certificats pour l'autorité de certification du périphérique principal. Il doit s'agir de la chaîne de certificats complète remontant à votre autorité de certification racine. Il peut s'agir d'un URI de système de fichiers ou d'un URI pointant vers une chaîne de certificats stockée dans un module de sécurité matériel.  
`privateKeyUri`  
Emplacement de la clé privée de l'appareil principal. Il peut s'agir d'un URI de système de fichiers ou d'un URI pointant vers une clé privée de certificat stockée dans un module de sécurité matériel.

`security`  
(Facultatif) Options de configuration de sécurité pour ce périphérique principal. Cet objet contient les informations suivantes.    
`clientDeviceTrustDurationMinutes`  
Durée en minutes pendant laquelle les informations d'authentification d'un appareil client peuvent être fiables avant qu'il ne soit nécessaire de s'authentifier à nouveau auprès du périphérique principal. La valeur par défaut est 1.

`metrics`  
(Facultatif) Les options de métriques pour ce périphérique principal. Les mesures d'erreur ne s'afficheront qu'en cas d'erreur d'authentification du périphérique client. Cet objet contient les informations suivantes :    
`disableMetrics`  
Si le `disableMetrics` champ est défini sur`true`, l'authentification de l'appareil client ne collectera pas de métriques.  
Valeur par défaut : `false`  
`aggregatePeriodSeconds`  
Période d'agrégation en secondes qui détermine la fréquence à laquelle l'authentification du dispositif client agrège les métriques et les envoie à l'agent de télémétrie. Cela ne change pas la fréquence à laquelle les métriques sont publiées, car l'agent de télémétrie les publie toujours une fois par jour.  
Valeur par défaut : `3600`

startupTimeoutSeconds  
(Facultatif) Durée maximale en secondes pendant laquelle le composant démarre. L'état du composant passe à `ERRORED` s'il dépasse ce délai d'attente.  
Valeur par défaut : `120`

**Example Exemple : mise à jour de la fusion de configurations (à l'aide d'une politique restrictive)**  <a name="client-device-auth-component-configuration-example-restrictive"></a>
L'exemple de configuration suivant indique d'autoriser les appareils clients dont le nom commence par `MyClientDevice` à se connecter et ce, publish/subscribe sur tous les sujets.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyDeviceGroup": {
        "selectionRule": "thingName: MyClientDevice*",
        "policyName": "MyRestrictivePolicy"
      }
    },
    "policies": {
      "MyRestrictivePolicy": {
        "AllowConnect": {
          "statementDescription": "Allow client devices to connect.",
          "operations": [
            "mqtt:connect"
          ],
          "resources": [
            "*"
          ]
        },
        "AllowPublish": {
          "statementDescription": "Allow client devices to publish on test/topic.",
          "operations": [
            "mqtt:publish"
          ],
          "resources": [
            "mqtt:topic:test/topic"
          ]
        },
        "AllowSubscribe": {
          "statementDescription": "Allow client devices to subscribe to test/topic/response.",
          "operations": [
            "mqtt:subscribe"
          ],
          "resources": [
            "mqtt:topicfilter:test/topic/response"
          ]
        }
      }
    }
  }
}
```

**Example Exemple : mise à jour de la fusion de configurations (à l'aide d'une politique permissive)**  <a name="client-device-auth-component-configuration-example-permissive"></a>
L'exemple de configuration suivant indique d'autoriser tous les appareils clients à se connecter et ce, publish/subscribe sur tous les sujets.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyPermissiveDeviceGroup": {
        "selectionRule": "thingName: *",
        "policyName": "MyPermissivePolicy"
      }
    },
    "policies": {
      "MyPermissivePolicy": {
        "AllowAll": {
          "statementDescription": "Allow client devices to perform all actions.",
          "operations": [
            "*"
          ],
          "resources": [
            "*"
          ]
        }
      }
    }
  }
}
```

------
#### [ v2.4.0 - v2.4.1 ]

`deviceGroups`  <a name="client-device-auth-component-configuration-devicegroups"></a>
Les groupes d'appareils sont des groupes d'appareils clients autorisés à se connecter et à communiquer avec un appareil principal. Utilisez des règles de sélection pour identifier les groupes d'appareils clients et définissez des *politiques d'autorisation des appareils clients* qui spécifient les autorisations pour chaque groupe d'appareils.  
Cet objet contient les informations suivantes :    
`formatVersion`  
Version du format pour cet objet de configuration.  
Sélectionnez l’une des options suivantes :  
+ `2021-03-05`  
`definitions`  
Les groupes de périphériques pour cet appareil principal. Chaque définition spécifie une *règle de sélection* pour évaluer si un appareil client est membre du groupe. Chaque définition spécifie également la politique d'autorisation à appliquer aux appareils clients qui répondent à la règle de sélection. Si un appareil client est membre de plusieurs groupes d'appareils, les autorisations de l'appareil sont comprises dans la politique d'autorisation de chaque groupe.  
Cet objet contient les informations suivantes :    
`groupNameKey`  
Nom de ce groupe d'appareils. *groupNameKey*Remplacez-le par un nom qui vous aide à identifier ce groupe d'appareils.  
Cet objet contient les informations suivantes :    
`selectionRule`  
Requête qui indique quels appareils clients sont membres de ce groupe d'appareils. Lorsqu'un dispositif client se connecte, le dispositif principal évalue cette règle de sélection pour déterminer si le dispositif client est membre de ce groupe de dispositifs. Si le dispositif client est membre, le dispositif principal utilise la politique de ce groupe d'appareils pour autoriser les actions du dispositif client.  
Chaque règle de sélection comprend au moins une *clause de règle de sélection*, qui est une requête d'expression unique pouvant correspondre aux dispositifs clients. Les règles de sélection utilisent la même syntaxe de requête que l'indexation des AWS IoT flottes. Pour plus d'informations sur la syntaxe des règles de sélection, consultez la section [Syntaxe des requêtes d'indexation du AWS IoT parc](https://docs.aws.amazon.com/iot/latest/developerguide/query-syntax.html) dans le *Guide du AWS IoT Core développeur*.  
Utilisez le `*` caractère générique pour associer plusieurs appareils clients à une seule clause de règle de sélection. Vous pouvez utiliser ce caractère générique à la fin du nom de l'objet pour faire correspondre les appareils clients dont le nom commence par une chaîne que vous spécifiez. Vous pouvez également utiliser ce caractère générique pour correspondre à tous les appareils clients.  
Pour sélectionner une valeur contenant deux points (`:`), éliminez les deux points par une barre oblique inverse ()`\\`. Dans les formats tels que JSON, vous devez éviter les barres obliques inversées. Vous devez donc saisir deux barres obliques inversées avant le caractère deux-points. Par exemple, spécifiez `thingName: MyTeam\\\\:ClientDevice1` de sélectionner un objet dont le nom est`MyTeam:ClientDevice1`.
Vous pouvez spécifier le sélecteur suivant :  
+ `thingName`— Le nom de l' AWS IoT objet d'un appareil client.

**Example Exemple de règle de sélection**  
La règle de sélection suivante correspond aux appareils clients dont les noms sont `MyClientDevice1` ou`MyClientDevice2`.  

```
thingName: MyClientDevice1 OR thingName: MyClientDevice2
```

**Example Exemple de règle de sélection (utiliser des caractères génériques)**  
La règle de sélection suivante correspond aux appareils clients dont le nom commence par`MyClientDevice`.  

```
thingName: MyClientDevice*
```

**Example Exemple de règle de sélection (correspond à tous les appareils)**  
La règle de sélection suivante correspond à tous les appareils clients.  

```
thingName: *
```  
`policyName`  
Politique d'autorisation qui s'applique aux appareils clients de ce groupe d'appareils. Spécifiez le nom d'une politique que vous définissez dans l'`policies`objet.  
`policies`  
Les politiques d'autorisation des appareils clients pour les appareils clients qui se connectent au périphérique principal. Chaque politique d'autorisation spécifie un ensemble d'actions et les ressources sur lesquelles un appareil client peut effectuer ces actions.  
Cet objet contient les informations suivantes :    
`policyNameKey`  
Nom de cette politique d'autorisation. *policyNameKey*Remplacez-le par un nom qui vous aide à identifier cette politique d'autorisation. Vous utilisez ce nom de stratégie pour définir la stratégie qui s'applique à un groupe d'appareils.  
Cet objet contient les informations suivantes :    
`statementNameKey`  
Le nom de cette déclaration de politique. *statementNameKey*Remplacez-le par un nom qui vous aide à identifier cette déclaration de politique.  
Cet objet contient les informations suivantes :    
`operations`  
Liste des opérations permettant d'utiliser les ressources de cette politique.  
Vous pouvez inclure l'une des opérations suivantes :  
+ `mqtt:connect`— Accorde l'autorisation de se connecter à l'appareil principal. Les appareils clients doivent disposer de cette autorisation pour se connecter à un périphérique principal.

  Cette opération prend en charge les ressources suivantes :
  + `mqtt:clientId:deviceClientId`— Limitez l'accès en fonction de l'ID client utilisé par un appareil client pour se connecter au broker MQTT du périphérique principal. Remplacez *deviceClientId* par l'ID client à utiliser.
+ `mqtt:publish`— Accorde l'autorisation de publier des messages MQTT sur des sujets.

  Cette opération prend en charge les ressources suivantes :
  + <a name="client-device-authorization-policy-resource-mqtt-topic"></a>`mqtt:topic:mqttTopic`— Limitez l'accès en fonction du thème MQTT dans lequel un appareil client publie un message. Remplacez *mqttTopic* par le sujet à utiliser.

    Cette ressource ne prend pas en charge les caractères génériques des rubriques MQTT.
+ `mqtt:subscribe`— Accorde l'autorisation de s'abonner aux filtres de sujets MQTT pour recevoir des messages.

  Cette opération prend en charge les ressources suivantes :
  + <a name="client-device-authorization-policy-resource-mqtt-topicfilter"></a>`mqtt:topicfilter:mqttTopicFilter`— Limitez l'accès en fonction des sujets MQTT sur lesquels un appareil client peut s'abonner à des messages. Remplacez *mqttTopicFilter* par le filtre de rubrique à utiliser.

    Cette ressource prend en charge les caractères génériques `+` des rubriques `#` MQTT et MQTT. Pour plus d'informations, consultez les [rubriques relatives au MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) dans le *Guide du AWS IoT Core développeur*.

    L'appareil client peut s'abonner aux filtres de rubrique exacts que vous autorisez. Par exemple, si vous autorisez l'appareil client à s'abonner à la `mqtt:topicfilter:client/+/status` ressource, il peut s'y abonner, `client/+/status` mais pas`client/client1/status`.
Vous pouvez spécifier le `*` caractère générique pour autoriser l'accès à toutes les actions.  
`resources`  
La liste des ressources permettant d'effectuer les opérations prévues dans cette politique. Spécifiez les ressources qui correspondent aux opérations de cette politique. Par exemple, vous pouvez spécifier une liste de ressources thématiques MQTT (`mqtt:topic:mqttTopic`) dans une politique qui spécifie l'`mqtt:publish`opération.  
Vous pouvez spécifier le `*` caractère générique pour autoriser l'accès à toutes les ressources. Vous ne pouvez pas utiliser le `*` caractère générique pour faire correspondre des identificateurs de ressources partiels. Par exemple, vous pouvez spécifier**"resources": "\$1"**, mais vous ne pouvez pas le faire**"resources": "mqtt:clientId:\$1"**.  
`statementDescription`  
(Facultatif) Description de cette déclaration de politique.

`certificates`  <a name="client-device-auth-component-configuration-certificates"></a>
(Facultatif) Les options de configuration des certificats pour ce périphérique principal. Cet objet contient les informations suivantes :    
`serverCertificateValiditySeconds`  
(Facultatif) Durée (en secondes) après laquelle le certificat du serveur MQTT local expire. Vous pouvez configurer cette option pour personnaliser la fréquence à laquelle les appareils clients se déconnectent et se reconnectent au périphérique principal.  
Ce composant fait pivoter le certificat du serveur MQTT local 24 heures avant son expiration. Le courtier MQTT, tel que le [composant du courtier Moquette MQTT](mqtt-broker-moquette-component.md), génère un nouveau certificat et redémarre. Dans ce cas, tous les appareils clients connectés à ce périphérique principal sont déconnectés. Les appareils clients peuvent se reconnecter au périphérique principal après un court laps de temps.  
Par défaut : `604800` (7 jours)  
Valeur minimale : `172800` (2 jours)  
Valeur maximale : `864000` (10 jours)

`performance`  
(Facultatif) Les options de configuration des performances pour ce périphérique principal. Cet objet contient les informations suivantes :    
`maxActiveAuthTokens`  
(Facultatif) Le nombre maximum de jetons d'autorisation de l'appareil client actifs. Vous pouvez augmenter ce nombre pour permettre à un plus grand nombre d'appareils clients de se connecter à un appareil central unique, sans les réauthentifier.  
Valeur par défaut : `2500`  
`cloudRequestQueueSize`  
(Facultatif) Nombre maximal de AWS Cloud demandes à mettre en file d'attente avant que ce composant ne rejette les demandes.  
Valeur par défaut : `100`  
`maxConcurrentCloudRequests`  
(Facultatif) Le nombre maximum de demandes simultanées à envoyer au AWS Cloud. Vous pouvez augmenter ce nombre pour améliorer les performances d'authentification sur les appareils principaux auxquels vous connectez un grand nombre d'appareils clients.  
Valeur par défaut : `1`

`certificateAuthority`  
(Facultatif) Options de configuration de l'autorité de certification pour remplacer l'autorité intermédiaire du périphérique principal par votre propre autorité de certification intermédiaire. Cet objet contient les informations suivantes.  
 Cet objet contient les informations suivantes :    
URI du certificat  
Emplacement du certificat. Il peut s'agir d'un URI de système de fichiers ou d'un URI pointant vers un certificat stocké dans un module de sécurité matériel.  
`certificateChainUri`  
Emplacement de la chaîne de certificats pour l'autorité de certification du périphérique principal. Il doit s'agir de la chaîne de certificats complète remontant à votre autorité de certification racine. Il peut s'agir d'un URI de système de fichiers ou d'un URI pointant vers une chaîne de certificats stockée dans un module de sécurité matériel.  
`privateKeyUri`  
Emplacement de la clé privée de l'appareil principal. Il peut s'agir d'un URI de système de fichiers ou d'un URI pointant vers une clé privée de certificat stockée dans un module de sécurité matériel.

`security`  
(Facultatif) Options de configuration de sécurité pour ce périphérique principal. Cet objet contient les informations suivantes.    
`clientDeviceTrustDurationMinutes`  
Durée en minutes pendant laquelle les informations d'authentification d'un appareil client peuvent être fiables avant qu'il ne soit nécessaire de s'authentifier à nouveau auprès du périphérique principal. La valeur par défaut est 1.

`metrics`  
(Facultatif) Les options de métriques pour ce périphérique principal. Les mesures d'erreur ne s'afficheront qu'en cas d'erreur d'authentification du périphérique client. Cet objet contient les informations suivantes :    
`disableMetrics`  
Si le `disableMetrics` champ est défini sur`true`, l'authentification de l'appareil client ne collectera pas de métriques.  
Valeur par défaut : `false`  
`aggregatePeriodSeconds`  
Période d'agrégation en secondes qui détermine la fréquence à laquelle l'authentification du dispositif client agrège les métriques et les envoie à l'agent de télémétrie. Cela ne change pas la fréquence à laquelle les métriques sont publiées, car l'agent de télémétrie les publie toujours une fois par jour.  
Valeur par défaut : `3600`

**Example Exemple : mise à jour de la fusion de configurations (à l'aide d'une politique restrictive)**  <a name="client-device-auth-component-configuration-example-restrictive"></a>
L'exemple de configuration suivant indique d'autoriser les appareils clients dont le nom commence par `MyClientDevice` à se connecter et ce, publish/subscribe sur tous les sujets.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyDeviceGroup": {
        "selectionRule": "thingName: MyClientDevice*",
        "policyName": "MyRestrictivePolicy"
      }
    },
    "policies": {
      "MyRestrictivePolicy": {
        "AllowConnect": {
          "statementDescription": "Allow client devices to connect.",
          "operations": [
            "mqtt:connect"
          ],
          "resources": [
            "*"
          ]
        },
        "AllowPublish": {
          "statementDescription": "Allow client devices to publish on test/topic.",
          "operations": [
            "mqtt:publish"
          ],
          "resources": [
            "mqtt:topic:test/topic"
          ]
        },
        "AllowSubscribe": {
          "statementDescription": "Allow client devices to subscribe to test/topic/response.",
          "operations": [
            "mqtt:subscribe"
          ],
          "resources": [
            "mqtt:topicfilter:test/topic/response"
          ]
        }
      }
    }
  }
}
```

**Example Exemple : mise à jour de la fusion de configurations (à l'aide d'une politique permissive)**  <a name="client-device-auth-component-configuration-example-permissive"></a>
L'exemple de configuration suivant indique d'autoriser tous les appareils clients à se connecter et ce, publish/subscribe sur tous les sujets.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyPermissiveDeviceGroup": {
        "selectionRule": "thingName: *",
        "policyName": "MyPermissivePolicy"
      }
    },
    "policies": {
      "MyPermissivePolicy": {
        "AllowAll": {
          "statementDescription": "Allow client devices to perform all actions.",
          "operations": [
            "*"
          ],
          "resources": [
            "*"
          ]
        }
      }
    }
  }
}
```

------
#### [ v2.3.x ]

`deviceGroups`  <a name="client-device-auth-component-configuration-devicegroups"></a>
Les groupes d'appareils sont des groupes d'appareils clients autorisés à se connecter et à communiquer avec un appareil principal. Utilisez des règles de sélection pour identifier les groupes d'appareils clients et définissez des *politiques d'autorisation des appareils clients* qui spécifient les autorisations pour chaque groupe d'appareils.  
Cet objet contient les informations suivantes :    
`formatVersion`  
Version du format pour cet objet de configuration.  
Sélectionnez l’une des options suivantes :  
+ `2021-03-05`  
`definitions`  
Les groupes de périphériques pour cet appareil principal. Chaque définition spécifie une *règle de sélection* pour évaluer si un appareil client est membre du groupe. Chaque définition spécifie également la politique d'autorisation à appliquer aux appareils clients qui répondent à la règle de sélection. Si un appareil client est membre de plusieurs groupes d'appareils, les autorisations de l'appareil sont comprises dans la politique d'autorisation de chaque groupe.  
Cet objet contient les informations suivantes :    
`groupNameKey`  
Nom de ce groupe d'appareils. *groupNameKey*Remplacez-le par un nom qui vous aide à identifier ce groupe d'appareils.  
Cet objet contient les informations suivantes :    
`selectionRule`  
Requête qui indique quels appareils clients sont membres de ce groupe d'appareils. Lorsqu'un dispositif client se connecte, le dispositif principal évalue cette règle de sélection pour déterminer si le dispositif client est membre de ce groupe de dispositifs. Si le dispositif client est membre, le dispositif principal utilise la politique de ce groupe d'appareils pour autoriser les actions du dispositif client.  
Chaque règle de sélection comprend au moins une *clause de règle de sélection*, qui est une requête d'expression unique pouvant correspondre aux dispositifs clients. Les règles de sélection utilisent la même syntaxe de requête que l'indexation des AWS IoT flottes. Pour plus d'informations sur la syntaxe des règles de sélection, consultez la section [Syntaxe des requêtes d'indexation du AWS IoT parc](https://docs.aws.amazon.com/iot/latest/developerguide/query-syntax.html) dans le *Guide du AWS IoT Core développeur*.  
Utilisez le `*` caractère générique pour associer plusieurs appareils clients à une seule clause de règle de sélection. Vous pouvez utiliser ce caractère générique à la fin du nom de l'objet pour faire correspondre les appareils clients dont le nom commence par une chaîne que vous spécifiez. Vous pouvez également utiliser ce caractère générique pour correspondre à tous les appareils clients.  
Pour sélectionner une valeur contenant deux points (`:`), éliminez les deux points par une barre oblique inverse ()`\\`. Dans les formats tels que JSON, vous devez éviter les barres obliques inversées. Vous devez donc saisir deux barres obliques inversées avant le caractère deux-points. Par exemple, spécifiez `thingName: MyTeam\\\\:ClientDevice1` de sélectionner un objet dont le nom est`MyTeam:ClientDevice1`.
Vous pouvez spécifier le sélecteur suivant :  
+ `thingName`— Le nom de l' AWS IoT objet d'un appareil client.

**Example Exemple de règle de sélection**  
La règle de sélection suivante correspond aux appareils clients dont les noms sont `MyClientDevice1` ou`MyClientDevice2`.  

```
thingName: MyClientDevice1 OR thingName: MyClientDevice2
```

**Example Exemple de règle de sélection (utiliser des caractères génériques)**  
La règle de sélection suivante correspond aux appareils clients dont le nom commence par`MyClientDevice`.  

```
thingName: MyClientDevice*
```

**Example Exemple de règle de sélection (correspond à tous les appareils)**  
La règle de sélection suivante correspond à tous les appareils clients.  

```
thingName: *
```  
`policyName`  
Politique d'autorisation qui s'applique aux appareils clients de ce groupe d'appareils. Spécifiez le nom d'une politique que vous définissez dans l'`policies`objet.  
`policies`  
Les politiques d'autorisation des appareils clients pour les appareils clients qui se connectent au périphérique principal. Chaque politique d'autorisation spécifie un ensemble d'actions et les ressources sur lesquelles un appareil client peut effectuer ces actions.  
Cet objet contient les informations suivantes :    
`policyNameKey`  
Nom de cette politique d'autorisation. *policyNameKey*Remplacez-le par un nom qui vous aide à identifier cette politique d'autorisation. Vous utilisez ce nom de stratégie pour définir la stratégie qui s'applique à un groupe d'appareils.  
Cet objet contient les informations suivantes :    
`statementNameKey`  
Le nom de cette déclaration de politique. *statementNameKey*Remplacez-le par un nom qui vous aide à identifier cette déclaration de politique.  
Cet objet contient les informations suivantes :    
`operations`  
Liste des opérations permettant d'utiliser les ressources de cette politique.  
Vous pouvez inclure l'une des opérations suivantes :  
+ `mqtt:connect`— Accorde l'autorisation de se connecter à l'appareil principal. Les appareils clients doivent disposer de cette autorisation pour se connecter à un périphérique principal.

  Cette opération prend en charge les ressources suivantes :
  + `mqtt:clientId:deviceClientId`— Limitez l'accès en fonction de l'ID client utilisé par un appareil client pour se connecter au broker MQTT du périphérique principal. Remplacez *deviceClientId* par l'ID client à utiliser.
+ `mqtt:publish`— Accorde l'autorisation de publier des messages MQTT sur des sujets.

  Cette opération prend en charge les ressources suivantes :
  + <a name="client-device-authorization-policy-resource-mqtt-topic"></a>`mqtt:topic:mqttTopic`— Limitez l'accès en fonction du thème MQTT dans lequel un appareil client publie un message. Remplacez *mqttTopic* par le sujet à utiliser.

    Cette ressource ne prend pas en charge les caractères génériques des rubriques MQTT.
+ `mqtt:subscribe`— Accorde l'autorisation de s'abonner aux filtres de sujets MQTT pour recevoir des messages.

  Cette opération prend en charge les ressources suivantes :
  + <a name="client-device-authorization-policy-resource-mqtt-topicfilter"></a>`mqtt:topicfilter:mqttTopicFilter`— Limitez l'accès en fonction des sujets MQTT sur lesquels un appareil client peut s'abonner à des messages. Remplacez *mqttTopicFilter* par le filtre de rubrique à utiliser.

    Cette ressource prend en charge les caractères génériques `+` des rubriques `#` MQTT et MQTT. Pour plus d'informations, consultez les [rubriques relatives au MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) dans le *Guide du AWS IoT Core développeur*.

    L'appareil client peut s'abonner aux filtres de rubrique exacts que vous autorisez. Par exemple, si vous autorisez l'appareil client à s'abonner à la `mqtt:topicfilter:client/+/status` ressource, il peut s'y abonner, `client/+/status` mais pas`client/client1/status`.
Vous pouvez spécifier le `*` caractère générique pour autoriser l'accès à toutes les actions.  
`resources`  
La liste des ressources permettant d'effectuer les opérations prévues dans cette politique. Spécifiez les ressources qui correspondent aux opérations de cette politique. Par exemple, vous pouvez spécifier une liste de ressources thématiques MQTT (`mqtt:topic:mqttTopic`) dans une politique qui spécifie l'`mqtt:publish`opération.  
Vous pouvez spécifier le `*` caractère générique pour autoriser l'accès à toutes les ressources. Vous ne pouvez pas utiliser le `*` caractère générique pour faire correspondre des identificateurs de ressources partiels. Par exemple, vous pouvez spécifier**"resources": "\$1"**, mais vous ne pouvez pas le faire**"resources": "mqtt:clientId:\$1"**.  
`statementDescription`  
(Facultatif) Description de cette déclaration de politique.

`certificates`  <a name="client-device-auth-component-configuration-certificates"></a>
(Facultatif) Les options de configuration des certificats pour ce périphérique principal. Cet objet contient les informations suivantes :    
`serverCertificateValiditySeconds`  
(Facultatif) Durée (en secondes) après laquelle le certificat du serveur MQTT local expire. Vous pouvez configurer cette option pour personnaliser la fréquence à laquelle les appareils clients se déconnectent et se reconnectent au périphérique principal.  
Ce composant fait pivoter le certificat du serveur MQTT local 24 heures avant son expiration. Le courtier MQTT, tel que le [composant du courtier Moquette MQTT](mqtt-broker-moquette-component.md), génère un nouveau certificat et redémarre. Dans ce cas, tous les appareils clients connectés à ce périphérique principal sont déconnectés. Les appareils clients peuvent se reconnecter au périphérique principal après un court laps de temps.  
Par défaut : `604800` (7 jours)  
Valeur minimale : `172800` (2 jours)  
Valeur maximale : `864000` (10 jours)

`performance`  
(Facultatif) Les options de configuration des performances pour ce périphérique principal. Cet objet contient les informations suivantes :    
`maxActiveAuthTokens`  
(Facultatif) Le nombre maximum de jetons d'autorisation de l'appareil client actifs. Vous pouvez augmenter ce nombre pour permettre à un plus grand nombre d'appareils clients de se connecter à un appareil central unique sans les réauthentifier.  
Valeur par défaut : `2500`  
`cloudRequestQueueSize`  
(Facultatif) Nombre maximal de AWS Cloud demandes à mettre en file d'attente avant que ce composant ne rejette les demandes.  
Valeur par défaut : `100`  
`maxConcurrentCloudRequests`  
(Facultatif) Le nombre maximum de demandes simultanées à envoyer au AWS Cloud. Vous pouvez augmenter ce nombre pour améliorer les performances d'authentification sur les appareils principaux auxquels vous connectez un grand nombre d'appareils clients.  
Valeur par défaut : `1`

`certificateAuthority`  
(Facultatif) Options de configuration de l'autorité de certification pour remplacer l'autorité intermédiaire du périphérique principal par votre propre autorité de certification intermédiaire. Cet objet contient les informations suivantes.    
URI du certificat  
Emplacement du certificat. Il peut s'agir d'un URI de système de fichiers ou d'un URI pointant vers un certificat stocké dans un module de sécurité matériel.  
`certificateChainUri`  
Emplacement de la chaîne de certificats pour l'autorité de certification du périphérique principal. Il doit s'agir de la chaîne de certificats complète remontant à votre autorité de certification racine. Il peut s'agir d'un URI de système de fichiers ou d'un URI pointant vers une chaîne de certificats stockée dans un module de sécurité matériel.  
`privateKeyUri`  
Emplacement de la clé privée de l'appareil principal. Il peut s'agir d'un URI de système de fichiers ou d'un URI pointant vers une clé privée de certificat stockée dans un module de sécurité matériel.

`security`  
(Facultatif) Options de configuration de sécurité pour ce périphérique principal. Cet objet contient les informations suivantes.    
`clientDeviceTrustDurationMinutes`  
Durée en minutes pendant laquelle les informations d'authentification d'un appareil client peuvent être fiables avant qu'il ne soit nécessaire de s'authentifier à nouveau auprès du périphérique principal. La valeur par défaut est 1.

**Example Exemple : mise à jour de la fusion de configurations (à l'aide d'une politique restrictive)**  <a name="client-device-auth-component-configuration-example-restrictive"></a>
L'exemple de configuration suivant indique d'autoriser les appareils clients dont le nom commence par `MyClientDevice` à se connecter et ce, publish/subscribe sur tous les sujets.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyDeviceGroup": {
        "selectionRule": "thingName: MyClientDevice*",
        "policyName": "MyRestrictivePolicy"
      }
    },
    "policies": {
      "MyRestrictivePolicy": {
        "AllowConnect": {
          "statementDescription": "Allow client devices to connect.",
          "operations": [
            "mqtt:connect"
          ],
          "resources": [
            "*"
          ]
        },
        "AllowPublish": {
          "statementDescription": "Allow client devices to publish on test/topic.",
          "operations": [
            "mqtt:publish"
          ],
          "resources": [
            "mqtt:topic:test/topic"
          ]
        },
        "AllowSubscribe": {
          "statementDescription": "Allow client devices to subscribe to test/topic/response.",
          "operations": [
            "mqtt:subscribe"
          ],
          "resources": [
            "mqtt:topicfilter:test/topic/response"
          ]
        }
      }
    }
  }
}
```

**Example Exemple : mise à jour de la fusion de configurations (à l'aide d'une politique permissive)**  <a name="client-device-auth-component-configuration-example-permissive"></a>
L'exemple de configuration suivant indique d'autoriser tous les appareils clients à se connecter et ce, publish/subscribe sur tous les sujets.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyPermissiveDeviceGroup": {
        "selectionRule": "thingName: *",
        "policyName": "MyPermissivePolicy"
      }
    },
    "policies": {
      "MyPermissivePolicy": {
        "AllowAll": {
          "statementDescription": "Allow client devices to perform all actions.",
          "operations": [
            "*"
          ],
          "resources": [
            "*"
          ]
        }
      }
    }
  }
}
```

------
#### [ v2.2.x ]

`deviceGroups`  <a name="client-device-auth-component-configuration-devicegroups"></a>
Les groupes d'appareils sont des groupes d'appareils clients autorisés à se connecter et à communiquer avec un appareil principal. Utilisez des règles de sélection pour identifier les groupes d'appareils clients et définissez des *politiques d'autorisation des appareils clients* qui spécifient les autorisations pour chaque groupe d'appareils.  
Cet objet contient les informations suivantes :    
`formatVersion`  
Version du format pour cet objet de configuration.  
Sélectionnez l’une des options suivantes :  
+ `2021-03-05`  
`definitions`  
Les groupes de périphériques pour cet appareil principal. Chaque définition spécifie une *règle de sélection* pour évaluer si un appareil client est membre du groupe. Chaque définition spécifie également la politique d'autorisation à appliquer aux appareils clients qui répondent à la règle de sélection. Si un appareil client est membre de plusieurs groupes d'appareils, les autorisations de l'appareil sont comprises dans la politique d'autorisation de chaque groupe.  
Cet objet contient les informations suivantes :    
`groupNameKey`  
Nom de ce groupe d'appareils. *groupNameKey*Remplacez-le par un nom qui vous aide à identifier ce groupe d'appareils.  
Cet objet contient les informations suivantes :    
`selectionRule`  
Requête qui indique quels appareils clients sont membres de ce groupe d'appareils. Lorsqu'un dispositif client se connecte, le dispositif principal évalue cette règle de sélection pour déterminer si le dispositif client est membre de ce groupe de dispositifs. Si le dispositif client est membre, le dispositif principal utilise la politique de ce groupe d'appareils pour autoriser les actions du dispositif client.  
Chaque règle de sélection comprend au moins une *clause de règle de sélection*, qui est une requête d'expression unique pouvant correspondre aux dispositifs clients. Les règles de sélection utilisent la même syntaxe de requête que l'indexation des AWS IoT flottes. Pour plus d'informations sur la syntaxe des règles de sélection, consultez la section [Syntaxe des requêtes d'indexation du AWS IoT parc](https://docs.aws.amazon.com/iot/latest/developerguide/query-syntax.html) dans le *Guide du AWS IoT Core développeur*.  
Utilisez le `*` caractère générique pour associer plusieurs appareils clients à une seule clause de règle de sélection. Vous pouvez utiliser ce caractère générique à la fin du nom de l'objet pour faire correspondre les appareils clients dont le nom commence par une chaîne que vous spécifiez. Vous pouvez également utiliser ce caractère générique pour correspondre à tous les appareils clients.  
Pour sélectionner une valeur contenant deux points (`:`), éliminez les deux points par une barre oblique inverse ()`\\`. Dans les formats tels que JSON, vous devez éviter les barres obliques inversées. Vous devez donc saisir deux barres obliques inversées avant le caractère deux-points. Par exemple, spécifiez `thingName: MyTeam\\\\:ClientDevice1` de sélectionner un objet dont le nom est`MyTeam:ClientDevice1`.
Vous pouvez spécifier le sélecteur suivant :  
+ `thingName`— Le nom de l' AWS IoT objet d'un appareil client.

**Example Exemple de règle de sélection**  
La règle de sélection suivante correspond aux appareils clients dont les noms sont `MyClientDevice1` ou`MyClientDevice2`.  

```
thingName: MyClientDevice1 OR thingName: MyClientDevice2
```

**Example Exemple de règle de sélection (utiliser des caractères génériques)**  
La règle de sélection suivante correspond aux appareils clients dont le nom commence par`MyClientDevice`.  

```
thingName: MyClientDevice*
```

**Example Exemple de règle de sélection (correspond à tous les appareils)**  
La règle de sélection suivante correspond à tous les appareils clients.  

```
thingName: *
```  
`policyName`  
Politique d'autorisation qui s'applique aux appareils clients de ce groupe d'appareils. Spécifiez le nom d'une politique que vous définissez dans l'`policies`objet.  
`policies`  
Les politiques d'autorisation des appareils clients pour les appareils clients qui se connectent au périphérique principal. Chaque politique d'autorisation spécifie un ensemble d'actions et les ressources sur lesquelles un appareil client peut effectuer ces actions.  
Cet objet contient les informations suivantes :    
`policyNameKey`  
Nom de cette politique d'autorisation. *policyNameKey*Remplacez-le par un nom qui vous aide à identifier cette politique d'autorisation. Vous utilisez ce nom de stratégie pour définir la stratégie qui s'applique à un groupe d'appareils.  
Cet objet contient les informations suivantes :    
`statementNameKey`  
Le nom de cette déclaration de politique. *statementNameKey*Remplacez-le par un nom qui vous aide à identifier cette déclaration de politique.  
Cet objet contient les informations suivantes :    
`operations`  
Liste des opérations permettant d'utiliser les ressources de cette politique.  
Vous pouvez inclure l'une des opérations suivantes :  
+ `mqtt:connect`— Accorde l'autorisation de se connecter à l'appareil principal. Les appareils clients doivent disposer de cette autorisation pour se connecter à un périphérique principal.

  Cette opération prend en charge les ressources suivantes :
  + `mqtt:clientId:deviceClientId`— Limitez l'accès en fonction de l'ID client utilisé par un appareil client pour se connecter au broker MQTT du périphérique principal. Remplacez *deviceClientId* par l'ID client à utiliser.
+ `mqtt:publish`— Accorde l'autorisation de publier des messages MQTT sur des sujets.

  Cette opération prend en charge les ressources suivantes :
  + <a name="client-device-authorization-policy-resource-mqtt-topic"></a>`mqtt:topic:mqttTopic`— Limitez l'accès en fonction du thème MQTT dans lequel un appareil client publie un message. Remplacez *mqttTopic* par le sujet à utiliser.

    Cette ressource ne prend pas en charge les caractères génériques des rubriques MQTT.
+ `mqtt:subscribe`— Accorde l'autorisation de s'abonner aux filtres de sujets MQTT pour recevoir des messages.

  Cette opération prend en charge les ressources suivantes :
  + <a name="client-device-authorization-policy-resource-mqtt-topicfilter"></a>`mqtt:topicfilter:mqttTopicFilter`— Limitez l'accès en fonction des sujets MQTT sur lesquels un appareil client peut s'abonner à des messages. Remplacez *mqttTopicFilter* par le filtre de rubrique à utiliser.

    Cette ressource prend en charge les caractères génériques `+` des rubriques `#` MQTT et MQTT. Pour plus d'informations, consultez les [rubriques relatives au MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) dans le *Guide du AWS IoT Core développeur*.

    L'appareil client peut s'abonner aux filtres de rubrique exacts que vous autorisez. Par exemple, si vous autorisez l'appareil client à s'abonner à la `mqtt:topicfilter:client/+/status` ressource, il peut s'y abonner, `client/+/status` mais pas`client/client1/status`.
Vous pouvez spécifier le `*` caractère générique pour autoriser l'accès à toutes les actions.  
`resources`  
La liste des ressources permettant d'effectuer les opérations prévues dans cette politique. Spécifiez les ressources qui correspondent aux opérations de cette politique. Par exemple, vous pouvez spécifier une liste de ressources thématiques MQTT (`mqtt:topic:mqttTopic`) dans une politique qui spécifie l'`mqtt:publish`opération.  
Vous pouvez spécifier le `*` caractère générique pour autoriser l'accès à toutes les ressources. Vous ne pouvez pas utiliser le `*` caractère générique pour faire correspondre des identificateurs de ressources partiels. Par exemple, vous pouvez spécifier**"resources": "\$1"**, mais vous ne pouvez pas le faire**"resources": "mqtt:clientId:\$1"**.  
`statementDescription`  
(Facultatif) Description de cette déclaration de politique.

`certificates`  <a name="client-device-auth-component-configuration-certificates"></a>
(Facultatif) Les options de configuration des certificats pour ce périphérique principal. Cet objet contient les informations suivantes :    
`serverCertificateValiditySeconds`  
(Facultatif) Durée (en secondes) après laquelle le certificat du serveur MQTT local expire. Vous pouvez configurer cette option pour personnaliser la fréquence à laquelle les appareils clients se déconnectent et se reconnectent au périphérique principal.  
Ce composant fait pivoter le certificat du serveur MQTT local 24 heures avant son expiration. Le courtier MQTT, tel que le [composant du courtier Moquette MQTT](mqtt-broker-moquette-component.md), génère un nouveau certificat et redémarre. Dans ce cas, tous les appareils clients connectés à ce périphérique principal sont déconnectés. Les appareils clients peuvent se reconnecter au périphérique principal après un court laps de temps.  
Par défaut : `604800` (7 jours)  
Valeur minimale : `172800` (2 jours)  
Valeur maximale : `864000` (10 jours)

`performance`  
(Facultatif) Les options de configuration des performances pour ce périphérique principal. Cet objet contient les informations suivantes :    
`maxActiveAuthTokens`  
(Facultatif) Le nombre maximum de jetons d'autorisation de l'appareil client actifs. Vous pouvez augmenter ce nombre pour permettre à un plus grand nombre d'appareils clients de se connecter à un appareil central unique sans les réauthentifier.  
Valeur par défaut : `2500`  
`cloudRequestQueueSize`  
(Facultatif) Nombre maximal de AWS Cloud demandes à mettre en file d'attente avant que ce composant ne rejette les demandes.  
Valeur par défaut : `100`  
`maxConcurrentCloudRequests`  
(Facultatif) Le nombre maximum de demandes simultanées à envoyer au AWS Cloud. Vous pouvez augmenter ce nombre pour améliorer les performances d'authentification sur les appareils principaux auxquels vous connectez un grand nombre d'appareils clients.  
Valeur par défaut : `1`

**Example Exemple : mise à jour de la fusion de configurations (à l'aide d'une politique restrictive)**  <a name="client-device-auth-component-configuration-example-restrictive"></a>
L'exemple de configuration suivant indique d'autoriser les appareils clients dont le nom commence par `MyClientDevice` à se connecter et ce, publish/subscribe sur tous les sujets.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyDeviceGroup": {
        "selectionRule": "thingName: MyClientDevice*",
        "policyName": "MyRestrictivePolicy"
      }
    },
    "policies": {
      "MyRestrictivePolicy": {
        "AllowConnect": {
          "statementDescription": "Allow client devices to connect.",
          "operations": [
            "mqtt:connect"
          ],
          "resources": [
            "*"
          ]
        },
        "AllowPublish": {
          "statementDescription": "Allow client devices to publish on test/topic.",
          "operations": [
            "mqtt:publish"
          ],
          "resources": [
            "mqtt:topic:test/topic"
          ]
        },
        "AllowSubscribe": {
          "statementDescription": "Allow client devices to subscribe to test/topic/response.",
          "operations": [
            "mqtt:subscribe"
          ],
          "resources": [
            "mqtt:topicfilter:test/topic/response"
          ]
        }
      }
    }
  }
}
```

**Example Exemple : mise à jour de la fusion de configurations (à l'aide d'une politique permissive)**  <a name="client-device-auth-component-configuration-example-permissive"></a>
L'exemple de configuration suivant indique d'autoriser tous les appareils clients à se connecter et ce, publish/subscribe sur tous les sujets.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyPermissiveDeviceGroup": {
        "selectionRule": "thingName: *",
        "policyName": "MyPermissivePolicy"
      }
    },
    "policies": {
      "MyPermissivePolicy": {
        "AllowAll": {
          "statementDescription": "Allow client devices to perform all actions.",
          "operations": [
            "*"
          ],
          "resources": [
            "*"
          ]
        }
      }
    }
  }
}
```

------
#### [ v2.1.x ]

`deviceGroups`  <a name="client-device-auth-component-configuration-devicegroups"></a>
Les groupes d'appareils sont des groupes d'appareils clients autorisés à se connecter et à communiquer avec un appareil principal. Utilisez des règles de sélection pour identifier les groupes d'appareils clients et définissez des *politiques d'autorisation des appareils clients* qui spécifient les autorisations pour chaque groupe d'appareils.  
Cet objet contient les informations suivantes :    
`formatVersion`  
Version du format pour cet objet de configuration.  
Sélectionnez l’une des options suivantes :  
+ `2021-03-05`  
`definitions`  
Les groupes de périphériques pour cet appareil principal. Chaque définition spécifie une *règle de sélection* pour évaluer si un appareil client est membre du groupe. Chaque définition spécifie également la politique d'autorisation à appliquer aux appareils clients qui répondent à la règle de sélection. Si un appareil client est membre de plusieurs groupes d'appareils, les autorisations de l'appareil sont comprises dans la politique d'autorisation de chaque groupe.  
Cet objet contient les informations suivantes :    
`groupNameKey`  
Nom de ce groupe d'appareils. *groupNameKey*Remplacez-le par un nom qui vous aide à identifier ce groupe d'appareils.  
Cet objet contient les informations suivantes :    
`selectionRule`  
Requête qui indique quels appareils clients sont membres de ce groupe d'appareils. Lorsqu'un dispositif client se connecte, le dispositif principal évalue cette règle de sélection pour déterminer si le dispositif client est membre de ce groupe de dispositifs. Si le dispositif client est membre, le dispositif principal utilise la politique de ce groupe d'appareils pour autoriser les actions du dispositif client.  
Chaque règle de sélection comprend au moins une *clause de règle de sélection*, qui est une requête d'expression unique pouvant correspondre aux dispositifs clients. Les règles de sélection utilisent la même syntaxe de requête que l'indexation des AWS IoT flottes. Pour plus d'informations sur la syntaxe des règles de sélection, consultez la section [Syntaxe des requêtes d'indexation du AWS IoT parc](https://docs.aws.amazon.com/iot/latest/developerguide/query-syntax.html) dans le *Guide du AWS IoT Core développeur*.  
Utilisez le `*` caractère générique pour associer plusieurs appareils clients à une seule clause de règle de sélection. Vous pouvez utiliser ce caractère générique à la fin du nom de l'objet pour faire correspondre les appareils clients dont le nom commence par une chaîne que vous spécifiez. Vous pouvez également utiliser ce caractère générique pour correspondre à tous les appareils clients.  
Pour sélectionner une valeur contenant deux points (`:`), éliminez les deux points par une barre oblique inverse ()`\\`. Dans les formats tels que JSON, vous devez éviter les barres obliques inversées. Vous devez donc saisir deux barres obliques inversées avant le caractère deux-points. Par exemple, spécifiez `thingName: MyTeam\\\\:ClientDevice1` de sélectionner un objet dont le nom est`MyTeam:ClientDevice1`.
Vous pouvez spécifier le sélecteur suivant :  
+ `thingName`— Le nom de l' AWS IoT objet d'un appareil client.

**Example Exemple de règle de sélection**  
La règle de sélection suivante correspond aux appareils clients dont les noms sont `MyClientDevice1` ou`MyClientDevice2`.  

```
thingName: MyClientDevice1 OR thingName: MyClientDevice2
```

**Example Exemple de règle de sélection (utiliser des caractères génériques)**  
La règle de sélection suivante correspond aux appareils clients dont le nom commence par`MyClientDevice`.  

```
thingName: MyClientDevice*
```

**Example Exemple de règle de sélection (correspond à tous les appareils)**  
La règle de sélection suivante correspond à tous les appareils clients.  

```
thingName: *
```  
`policyName`  
Politique d'autorisation qui s'applique aux appareils clients de ce groupe d'appareils. Spécifiez le nom d'une politique que vous définissez dans l'`policies`objet.  
`policies`  
Les politiques d'autorisation des appareils clients pour les appareils clients qui se connectent au périphérique principal. Chaque politique d'autorisation spécifie un ensemble d'actions et les ressources sur lesquelles un appareil client peut effectuer ces actions.  
Cet objet contient les informations suivantes :    
`policyNameKey`  
Nom de cette politique d'autorisation. *policyNameKey*Remplacez-le par un nom qui vous aide à identifier cette politique d'autorisation. Vous utilisez ce nom de stratégie pour définir la stratégie qui s'applique à un groupe d'appareils.  
Cet objet contient les informations suivantes :    
`statementNameKey`  
Le nom de cette déclaration de politique. *statementNameKey*Remplacez-le par un nom qui vous aide à identifier cette déclaration de politique.  
Cet objet contient les informations suivantes :    
`operations`  
Liste des opérations permettant d'utiliser les ressources de cette politique.  
Vous pouvez inclure l'une des opérations suivantes :  
+ `mqtt:connect`— Accorde l'autorisation de se connecter à l'appareil principal. Les appareils clients doivent disposer de cette autorisation pour se connecter à un périphérique principal.

  Cette opération prend en charge les ressources suivantes :
  + `mqtt:clientId:deviceClientId`— Limitez l'accès en fonction de l'ID client utilisé par un appareil client pour se connecter au broker MQTT du périphérique principal. Remplacez *deviceClientId* par l'ID client à utiliser.
+ `mqtt:publish`— Accorde l'autorisation de publier des messages MQTT sur des sujets.

  Cette opération prend en charge les ressources suivantes :
  + <a name="client-device-authorization-policy-resource-mqtt-topic"></a>`mqtt:topic:mqttTopic`— Limitez l'accès en fonction du thème MQTT dans lequel un appareil client publie un message. Remplacez *mqttTopic* par le sujet à utiliser.

    Cette ressource ne prend pas en charge les caractères génériques des rubriques MQTT.
+ `mqtt:subscribe`— Accorde l'autorisation de s'abonner aux filtres de sujets MQTT pour recevoir des messages.

  Cette opération prend en charge les ressources suivantes :
  + <a name="client-device-authorization-policy-resource-mqtt-topicfilter"></a>`mqtt:topicfilter:mqttTopicFilter`— Limitez l'accès en fonction des sujets MQTT sur lesquels un appareil client peut s'abonner à des messages. Remplacez *mqttTopicFilter* par le filtre de rubrique à utiliser.

    Cette ressource prend en charge les caractères génériques `+` des rubriques `#` MQTT et MQTT. Pour plus d'informations, consultez les [rubriques relatives au MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) dans le *Guide du AWS IoT Core développeur*.

    L'appareil client peut s'abonner aux filtres de rubrique exacts que vous autorisez. Par exemple, si vous autorisez l'appareil client à s'abonner à la `mqtt:topicfilter:client/+/status` ressource, il peut s'y abonner, `client/+/status` mais pas`client/client1/status`.
Vous pouvez spécifier le `*` caractère générique pour autoriser l'accès à toutes les actions.  
`resources`  
La liste des ressources permettant d'effectuer les opérations prévues dans cette politique. Spécifiez les ressources qui correspondent aux opérations de cette politique. Par exemple, vous pouvez spécifier une liste de ressources thématiques MQTT (`mqtt:topic:mqttTopic`) dans une politique qui spécifie l'`mqtt:publish`opération.  
Vous pouvez spécifier le `*` caractère générique pour autoriser l'accès à toutes les ressources. Vous ne pouvez pas utiliser le `*` caractère générique pour faire correspondre des identificateurs de ressources partiels. Par exemple, vous pouvez spécifier**"resources": "\$1"**, mais vous ne pouvez pas le faire**"resources": "mqtt:clientId:\$1"**.  
`statementDescription`  
(Facultatif) Description de cette déclaration de politique.

`certificates`  <a name="client-device-auth-component-configuration-certificates"></a>
(Facultatif) Les options de configuration des certificats pour ce périphérique principal. Cet objet contient les informations suivantes :    
`serverCertificateValiditySeconds`  
(Facultatif) Durée (en secondes) après laquelle le certificat du serveur MQTT local expire. Vous pouvez configurer cette option pour personnaliser la fréquence à laquelle les appareils clients se déconnectent et se reconnectent au périphérique principal.  
Ce composant fait pivoter le certificat du serveur MQTT local 24 heures avant son expiration. Le courtier MQTT, tel que le [composant du courtier Moquette MQTT](mqtt-broker-moquette-component.md), génère un nouveau certificat et redémarre. Dans ce cas, tous les appareils clients connectés à ce périphérique principal sont déconnectés. Les appareils clients peuvent se reconnecter au périphérique principal après un court laps de temps.  
Par défaut : `604800` (7 jours)  
Valeur minimale : `172800` (2 jours)  
Valeur maximale : `864000` (10 jours)

**Example Exemple : mise à jour de la fusion de configurations (à l'aide d'une politique restrictive)**  <a name="client-device-auth-component-configuration-example-restrictive"></a>
L'exemple de configuration suivant indique d'autoriser les appareils clients dont le nom commence par `MyClientDevice` à se connecter et ce, publish/subscribe sur tous les sujets.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyDeviceGroup": {
        "selectionRule": "thingName: MyClientDevice*",
        "policyName": "MyRestrictivePolicy"
      }
    },
    "policies": {
      "MyRestrictivePolicy": {
        "AllowConnect": {
          "statementDescription": "Allow client devices to connect.",
          "operations": [
            "mqtt:connect"
          ],
          "resources": [
            "*"
          ]
        },
        "AllowPublish": {
          "statementDescription": "Allow client devices to publish on test/topic.",
          "operations": [
            "mqtt:publish"
          ],
          "resources": [
            "mqtt:topic:test/topic"
          ]
        },
        "AllowSubscribe": {
          "statementDescription": "Allow client devices to subscribe to test/topic/response.",
          "operations": [
            "mqtt:subscribe"
          ],
          "resources": [
            "mqtt:topicfilter:test/topic/response"
          ]
        }
      }
    }
  }
}
```

**Example Exemple : mise à jour de la fusion de configurations (à l'aide d'une politique permissive)**  <a name="client-device-auth-component-configuration-example-permissive"></a>
L'exemple de configuration suivant indique d'autoriser tous les appareils clients à se connecter et ce, publish/subscribe sur tous les sujets.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyPermissiveDeviceGroup": {
        "selectionRule": "thingName: *",
        "policyName": "MyPermissivePolicy"
      }
    },
    "policies": {
      "MyPermissivePolicy": {
        "AllowAll": {
          "statementDescription": "Allow client devices to perform all actions.",
          "operations": [
            "*"
          ],
          "resources": [
            "*"
          ]
        }
      }
    }
  }
}
```

------
#### [ v2.0.x ]

`deviceGroups`  <a name="client-device-auth-component-configuration-devicegroups"></a>
Les groupes d'appareils sont des groupes d'appareils clients autorisés à se connecter et à communiquer avec un appareil principal. Utilisez des règles de sélection pour identifier les groupes d'appareils clients et définissez des *politiques d'autorisation des appareils clients* qui spécifient les autorisations pour chaque groupe d'appareils.  
Cet objet contient les informations suivantes :    
`formatVersion`  
Version du format pour cet objet de configuration.  
Sélectionnez l’une des options suivantes :  
+ `2021-03-05`  
`definitions`  
Les groupes de périphériques pour cet appareil principal. Chaque définition spécifie une *règle de sélection* pour évaluer si un appareil client est membre du groupe. Chaque définition spécifie également la politique d'autorisation à appliquer aux appareils clients qui répondent à la règle de sélection. Si un appareil client est membre de plusieurs groupes d'appareils, les autorisations de l'appareil sont comprises dans la politique d'autorisation de chaque groupe.  
Cet objet contient les informations suivantes :    
`groupNameKey`  
Nom de ce groupe d'appareils. *groupNameKey*Remplacez-le par un nom qui vous aide à identifier ce groupe d'appareils.  
Cet objet contient les informations suivantes :    
`selectionRule`  
Requête qui indique quels appareils clients sont membres de ce groupe d'appareils. Lorsqu'un dispositif client se connecte, le dispositif principal évalue cette règle de sélection pour déterminer si le dispositif client est membre de ce groupe de dispositifs. Si le dispositif client est membre, le dispositif principal utilise la politique de ce groupe d'appareils pour autoriser les actions du dispositif client.  
Chaque règle de sélection comprend au moins une *clause de règle de sélection*, qui est une requête d'expression unique pouvant correspondre aux dispositifs clients. Les règles de sélection utilisent la même syntaxe de requête que l'indexation des AWS IoT flottes. Pour plus d'informations sur la syntaxe des règles de sélection, consultez la section [Syntaxe des requêtes d'indexation du AWS IoT parc](https://docs.aws.amazon.com/iot/latest/developerguide/query-syntax.html) dans le *Guide du AWS IoT Core développeur*.  
Utilisez le `*` caractère générique pour associer plusieurs appareils clients à une seule clause de règle de sélection. Vous pouvez utiliser ce caractère générique à la fin du nom de l'objet pour faire correspondre les appareils clients dont le nom commence par une chaîne que vous spécifiez. Vous pouvez également utiliser ce caractère générique pour correspondre à tous les appareils clients.  
Pour sélectionner une valeur contenant deux points (`:`), éliminez les deux points par une barre oblique inverse ()`\\`. Dans les formats tels que JSON, vous devez éviter les barres obliques inversées. Vous devez donc saisir deux barres obliques inversées avant le caractère deux-points. Par exemple, spécifiez `thingName: MyTeam\\\\:ClientDevice1` de sélectionner un objet dont le nom est`MyTeam:ClientDevice1`.
Vous pouvez spécifier le sélecteur suivant :  
+ `thingName`— Le nom de l' AWS IoT objet d'un appareil client.

**Example Exemple de règle de sélection**  
La règle de sélection suivante correspond aux appareils clients dont les noms sont `MyClientDevice1` ou`MyClientDevice2`.  

```
thingName: MyClientDevice1 OR thingName: MyClientDevice2
```

**Example Exemple de règle de sélection (utiliser des caractères génériques)**  
La règle de sélection suivante correspond aux appareils clients dont le nom commence par`MyClientDevice`.  

```
thingName: MyClientDevice*
```

**Example Exemple de règle de sélection (correspond à tous les appareils)**  
La règle de sélection suivante correspond à tous les appareils clients.  

```
thingName: *
```  
`policyName`  
Politique d'autorisation qui s'applique aux appareils clients de ce groupe d'appareils. Spécifiez le nom d'une politique que vous définissez dans l'`policies`objet.  
`policies`  
Les politiques d'autorisation des appareils clients pour les appareils clients qui se connectent au périphérique principal. Chaque politique d'autorisation spécifie un ensemble d'actions et les ressources sur lesquelles un appareil client peut effectuer ces actions.  
Cet objet contient les informations suivantes :    
`policyNameKey`  
Nom de cette politique d'autorisation. *policyNameKey*Remplacez-le par un nom qui vous aide à identifier cette politique d'autorisation. Vous utilisez ce nom de stratégie pour définir la stratégie qui s'applique à un groupe d'appareils.  
Cet objet contient les informations suivantes :    
`statementNameKey`  
Le nom de cette déclaration de politique. *statementNameKey*Remplacez-le par un nom qui vous aide à identifier cette déclaration de politique.  
Cet objet contient les informations suivantes :    
`operations`  
Liste des opérations permettant d'utiliser les ressources de cette politique.  
Vous pouvez inclure l'une des opérations suivantes :  
+ `mqtt:connect`— Accorde l'autorisation de se connecter à l'appareil principal. Les appareils clients doivent disposer de cette autorisation pour se connecter à un périphérique principal.

  Cette opération prend en charge les ressources suivantes :
  + `mqtt:clientId:deviceClientId`— Limitez l'accès en fonction de l'ID client utilisé par un appareil client pour se connecter au broker MQTT du périphérique principal. Remplacez *deviceClientId* par l'ID client à utiliser.
+ `mqtt:publish`— Accorde l'autorisation de publier des messages MQTT sur des sujets.

  Cette opération prend en charge les ressources suivantes :
  + <a name="client-device-authorization-policy-resource-mqtt-topic"></a>`mqtt:topic:mqttTopic`— Limitez l'accès en fonction du thème MQTT dans lequel un appareil client publie un message. Remplacez *mqttTopic* par le sujet à utiliser.

    Cette ressource ne prend pas en charge les caractères génériques des rubriques MQTT.
+ `mqtt:subscribe`— Accorde l'autorisation de s'abonner aux filtres de sujets MQTT pour recevoir des messages.

  Cette opération prend en charge les ressources suivantes :
  + <a name="client-device-authorization-policy-resource-mqtt-topicfilter"></a>`mqtt:topicfilter:mqttTopicFilter`— Limitez l'accès en fonction des sujets MQTT sur lesquels un appareil client peut s'abonner à des messages. Remplacez *mqttTopicFilter* par le filtre de rubrique à utiliser.

    Cette ressource prend en charge les caractères génériques `+` des rubriques `#` MQTT et MQTT. Pour plus d'informations, consultez les [rubriques relatives au MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) dans le *Guide du AWS IoT Core développeur*.

    L'appareil client peut s'abonner aux filtres de rubrique exacts que vous autorisez. Par exemple, si vous autorisez l'appareil client à s'abonner à la `mqtt:topicfilter:client/+/status` ressource, il peut s'y abonner, `client/+/status` mais pas`client/client1/status`.
Vous pouvez spécifier le `*` caractère générique pour autoriser l'accès à toutes les actions.  
`resources`  
La liste des ressources permettant d'effectuer les opérations prévues dans cette politique. Spécifiez les ressources qui correspondent aux opérations de cette politique. Par exemple, vous pouvez spécifier une liste de ressources thématiques MQTT (`mqtt:topic:mqttTopic`) dans une politique qui spécifie l'`mqtt:publish`opération.  
Vous pouvez spécifier le `*` caractère générique pour autoriser l'accès à toutes les ressources. Vous ne pouvez pas utiliser le `*` caractère générique pour faire correspondre des identificateurs de ressources partiels. Par exemple, vous pouvez spécifier**"resources": "\$1"**, mais vous ne pouvez pas le faire**"resources": "mqtt:clientId:\$1"**.  
`statementDescription`  
(Facultatif) Description de cette déclaration de politique.

**Example Exemple : mise à jour de la fusion de configurations (à l'aide d'une politique restrictive)**  <a name="client-device-auth-component-configuration-example-restrictive"></a>
L'exemple de configuration suivant indique d'autoriser les appareils clients dont le nom commence par `MyClientDevice` à se connecter et ce, publish/subscribe sur tous les sujets.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyDeviceGroup": {
        "selectionRule": "thingName: MyClientDevice*",
        "policyName": "MyRestrictivePolicy"
      }
    },
    "policies": {
      "MyRestrictivePolicy": {
        "AllowConnect": {
          "statementDescription": "Allow client devices to connect.",
          "operations": [
            "mqtt:connect"
          ],
          "resources": [
            "*"
          ]
        },
        "AllowPublish": {
          "statementDescription": "Allow client devices to publish on test/topic.",
          "operations": [
            "mqtt:publish"
          ],
          "resources": [
            "mqtt:topic:test/topic"
          ]
        },
        "AllowSubscribe": {
          "statementDescription": "Allow client devices to subscribe to test/topic/response.",
          "operations": [
            "mqtt:subscribe"
          ],
          "resources": [
            "mqtt:topicfilter:test/topic/response"
          ]
        }
      }
    }
  }
}
```

**Example Exemple : mise à jour de la fusion de configurations (à l'aide d'une politique permissive)**  <a name="client-device-auth-component-configuration-example-permissive"></a>
L'exemple de configuration suivant indique d'autoriser tous les appareils clients à se connecter et ce, publish/subscribe sur tous les sujets.  

```
{
  "deviceGroups": {
    "formatVersion": "2021-03-05",
    "definitions": {
      "MyPermissiveDeviceGroup": {
        "selectionRule": "thingName: *",
        "policyName": "MyPermissivePolicy"
      }
    },
    "policies": {
      "MyPermissivePolicy": {
        "AllowAll": {
          "statementDescription": "Allow client devices to perform all actions.",
          "operations": [
            "*"
          ],
          "resources": [
            "*"
          ]
        }
      }
    }
  }
}
```

------

## Fichier journal local
<a name="client-device-auth-component-log-file"></a>

Ce composant utilise le même fichier journal que le composant [Greengrass nucleus](greengrass-nucleus-component.md).

------
#### [ 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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par 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
<a name="client-device-auth-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.5.6  |  Met à jour la version du composant pour la version 2.17.0 de Greengrass Nucleus.  | 
|  2.5.5  |  Version mise à jour pour la version 2.16.0 de Greengrass Nucleus.  | 
|  2.5.4  | Version mise à jour pour la version 2.15.0 de Greengrass Nucleus. | 
|  2.5.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  2.5.2  |  Version mise à jour pour la version 2.14.0 de Greengrass Nucleus.  | 
|  2.5.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  2.5.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  2.4.5  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/client-device-auth-component.html) | 
|  2.4.4  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  2.4.3  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  2.4.2  |  <a name="changelog-client-device-auth-2.4.2"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  2.4.1  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. | 
|  2.4.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  2.3.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  2.3.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  2.3.0  |   Cette version n'est plus disponible. Les améliorations apportées à cette version sont disponibles dans les versions ultérieures de ce composant.  Nouvelles fonctionnalités [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  2.2.3  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  2.2.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  2.2.1  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  2.2.0  |  <a name="changelog-client-device-auth-2.2.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  2.0.4  |  Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.  | 
|  2.0.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/client-device-auth-component.html)  | 
|  2.0.2  |  Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.  | 
|  2.0.1  |  Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.  | 
|  2.0.0  |  Première version.  | 

# CloudWatch métriques
<a name="cloudwatch-metrics-component"></a>

Le composant Amazon CloudWatch metrics (`aws.greengrass.Cloudwatch`) publie sur Amazon des métriques personnalisées provenant des principaux appareils de Greengrass. CloudWatch Le composant permet aux composants de publier CloudWatch des métriques, que vous pouvez utiliser pour surveiller et analyser l'environnement de l'appareil principal Greengrass. Pour plus d'informations, consultez la section [Utilisation CloudWatch des métriques Amazon](https://docs.aws.amazon.com//AmazonCloudWatch/latest/monitoring/working_with_metrics.html) dans le *guide de CloudWatch l'utilisateur Amazon*.

Pour publier une CloudWatch métrique avec ce composant, publiez un message dans un sujet auquel ce composant est abonné. Par défaut, ce composant s'abonne à la rubrique de [publication/d'abonnement `cloudwatch/metric/put` locale.](ipc-publish-subscribe.md) Vous pouvez spécifier d'autres sujets, y compris les sujets AWS IoT Core MQTT, lorsque vous déployez ce composant.

Ce composant regroupe les métriques qui se trouvent dans le même espace de noms et les publie à CloudWatch intervalles réguliers.

**Note**  
Ce composant fournit des fonctionnalités similaires à celles du connecteur de CloudWatch métriques de la AWS IoT Greengrass version 1. Pour plus d'informations, consultez le [connecteur de CloudWatch métriques](https://docs.aws.amazon.com/greengrass/latest/developerguide/cloudwatch-metrics-connector.html) dans le *guide du développeur de la AWS IoT Greengrass V1*.

**Topics**
+ [Versions](#cloudwatch-metrics-component-versions)
+ [Type](#cloudwatch-metrics-component-type)
+ [Système d’exploitation](#cloudwatch-metrics-component-os-support)
+ [Exigences](#cloudwatch-metrics-component-requirements)
+ [Dépendances](#cloudwatch-metrics-component-dependencies)
+ [Configuration](#cloudwatch-metrics-component-configuration)
+ [Données d’entrée](#cloudwatch-metrics-component-input-data)
+ [Données de sortie](#cloudwatch-metrics-component-output-data)
+ [Licences](#cloudwatch-metrics-component-licenses)
+ [Fichier journal local](#cloudwatch-metrics-component-log-file)
+ [Journal des modifications](#cloudwatch-metrics-component-changelog)
+ [Consultez aussi](#cloudwatch-metrics-component-see-also)

## Versions
<a name="cloudwatch-metrics-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 4,0. x
+ 3.2.x
+ 3.1.x
+ 3.0.x
+ 2.1.x
+ 2.0.x

Pour plus d'informations sur les modifications apportées à chaque version du composant, consultez le [journal des modifications.](#cloudwatch-metrics-component-changelog)

## Type
<a name="cloudwatch-metrics-component-type"></a>

------
#### [ v4.x - v3.x ]

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

------
#### [ v2.x ]

<a name="public-component-type-lambda"></a>Ce <a name="public-component-type-lambda-phrase"></a>composant est un composant Lambda () `aws.greengrass.lambda`. [Le [noyau Greengrass](greengrass-nucleus-component.md) exécute la fonction Lambda de ce composant à l'aide du composant Lambda Launcher.](lambda-launcher-component.md)

------

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="cloudwatch-metrics-component-os-support"></a>

------
#### [ v4.x - v3.x ]

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

------
#### [ v2.x ]

Ce composant ne peut être installé que sur les appareils principaux de Linux.

------

## Exigences
<a name="cloudwatch-metrics-component-requirements"></a>

Ce composant répond aux exigences suivantes :

------
#### [ v4.x - v3.x ]
+ <a name="public-component-python3-requirement"></a>[Python](https://www.python.org/) version 3.7 installé sur le périphérique principal et ajouté à la variable d'environnement PATH.
+ Les bibliothèques Python suivantes, y compris les dépendances, doivent être installées et mises à la disposition de l'utilisateur exécutant le composant :
  + [Kit SDK des appareils AWS IoT v2 pour Python](https://github.com/aws/aws-iot-device-sdk-python-v2)
  + [AWS SDK pour Python (Boto3)](http://boto.readthedocs.org/en/latest/ref/)
**Note**  
Vous pouvez définir la `UseInstaller` configuration `true` pour installer ces bibliothèques automatiquement dans l'environnement Python fourni.
+ Le [rôle d'appareil Greengrass](device-service-role.md) doit autoriser l'`cloudwatch:PutMetricData`action, comme illustré dans l'exemple de politique IAM suivant.

------
#### [ JSON ]

****  

  ```
  {
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
        "Action": [
          "cloudwatch:PutMetricData"
        ],
        "Effect": "Allow",
        "Resource": "*"
      }
    ]
  }
  ```

------

  Pour plus d'informations, consultez la [référence CloudWatch des autorisations Amazon](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/permissions-reference-cw.html) dans le *guide de CloudWatch l'utilisateur Amazon*.

------
#### [ 2.x ]
+ <a name="core-device-lambda-function-requirements"></a>Votre appareil principal doit répondre aux exigences pour exécuter les fonctions Lambda. Si vous souhaitez que le périphérique principal exécute des fonctions Lambda conteneurisées, le périphérique doit répondre aux exigences requises. Pour de plus amples informations, veuillez consulter [Exigences relatives à la fonction Lambda](setting-up.md#greengrass-v2-lambda-requirements).
+ <a name="public-component-python3-requirement"></a>[Python](https://www.python.org/) version 3.7 installé sur le périphérique principal et ajouté à la variable d'environnement PATH.
+ Le [rôle d'appareil Greengrass](device-service-role.md) doit autoriser l'`cloudwatch:PutMetricData`action, comme illustré dans l'exemple de politique IAM suivant.

------
#### [ JSON ]

****  

  ```
  {
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
        "Action": [
          "cloudwatch:PutMetricData"
        ],
        "Effect": "Allow",
        "Resource": "*"
      }
    ]
  }
  ```

------

  Pour plus d'informations, consultez la [référence CloudWatch des autorisations Amazon](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/permissions-reference-cw.html) dans le *guide de CloudWatch l'utilisateur Amazon*.
+ <a name="connector-component-legacy-subscription-router-dependency"></a>Pour recevoir les données de sortie de ce composant, vous devez fusionner la mise à jour de configuration suivante pour l'[ancien composant routeur d'abonnement](legacy-subscription-router-component.md) (`aws.greengrass.LegacySubscriptionRouter`) lorsque vous déployez ce composant. Cette configuration indique le sujet dans lequel ce composant publie les réponses.

------
#### [ Legacy subscription router v2.1.x ]

  ```
  {
    "subscriptions": {
      "aws-greengrass-cloudwatch": {
        "id": "aws-greengrass-cloudwatch",
        "source": "component:aws.greengrass.Cloudwatch",
        "subject": "cloudwatch/metric/put/status",
        "target": "cloud"
      }
    }
  }
  ```

------
#### [ Legacy subscription router v2.0.x ]

  ```
  {
    "subscriptions": {
      "aws-greengrass-cloudwatch": {
        "id": "aws-greengrass-cloudwatch",
        "source": "arn:aws:lambda:region:aws:function:aws-greengrass-cloudwatch:version",
        "subject": "cloudwatch/metric/put/status",
        "target": "cloud"
      }
    }
  }
  ```<a name="connector-component-legacy-subscription-router-dependency-replace"></a>
  + *region*Remplacez-le par Région AWS celui que vous utilisez.
  + *version*Remplacez-le par la version de la fonction Lambda exécutée par ce composant. Pour trouver la version de la fonction Lambda, vous devez consulter la recette de la version de ce composant que vous souhaitez déployer. Ouvrez la page de détails de ce composant dans la [AWS IoT Greengrass console](https://console.aws.amazon.com//greengrass) et recherchez la paire clé-valeur de la **fonction Lambda**. Cette paire clé-valeur contient le nom et la version de la fonction Lambda.

**Important**  <a name="connector-component-legacy-subscription-router-dependency-note"></a>
Vous devez mettre à jour la version de la fonction Lambda sur l'ancien routeur d'abonnement chaque fois que vous déployez ce composant. Cela garantit que vous utilisez la bonne version de la fonction Lambda pour la version du composant que vous déployez.

------

  <a name="connector-component-create-deployments"></a>Pour de plus amples informations, veuillez consulter [Créer des déploiements](create-deployments.md).

------

### Points de terminaison et ports
<a name="cloudwatch-metrics-component-endpoints"></a>

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](allow-device-traffic.md).


| Endpoint |  Port | Obligatoire | Description | 
| --- | --- | --- | --- | 
|  `monitoring.region.amazonaws.com`  | 443 | Oui |  Téléversez CloudWatch des métriques.  | 

## Dépendances
<a name="cloudwatch-metrics-component-dependencies"></a>

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](#cloudwatch-metrics-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 4.0.0 - 3.0.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <3,0.0 | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | >=0,0.0 | Stricte | 

------
#### [ 2.1.4 - 2.1.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <3,0.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.1.4 - 2.1.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <3,0.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.1.2 - 2.1.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,8.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) | >=2,0.0 <2,7.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.8 - 2.1.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,6.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,5.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,4.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,3.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,2.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,3 <2,10  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | >=10,0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | >=10,0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | >=10,0  | Stricte | 

------

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="cloudwatch-metrics-component-configuration"></a>

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

------
#### [ v4.x ]

 `PublishInterval`   
(Facultatif) Le nombre maximal de secondes à attendre avant que le composant publie des métriques par lots pour un espace de noms donné. Pour configurer le composant afin qu'il publie les métriques au fur et à mesure qu'il les reçoit, c'est-à-dire sans traitement par lots, spécifiez`0`.  
Le composant publie CloudWatch après avoir reçu 20 métriques dans le même espace de noms ou après l'intervalle que vous spécifiez.  
Le composant ne précise pas l'ordre dans lequel les événements sont publiés.
Cette valeur peut être de 900 secondes au maximum.  
Par défaut : 10 secondes

 `MaxMetricsToRetain`   
(Facultatif) Le nombre maximum de métriques dans tous les espaces de noms à enregistrer en mémoire avant que le composant ne les remplace par des métriques plus récentes.  
Cette limite s'applique lorsque l'appareil principal n'est pas connecté à Internet. Le composant met donc en mémoire tampon les métriques pour les publier ultérieurement. Lorsque la mémoire tampon est pleine, le composant remplace les mesures les plus anciennes par les plus récentes. Les métriques d'un espace de noms donné remplacent uniquement les métriques du même espace de noms.  
Si le processus hôte du composant est interrompu, le composant n'enregistre pas les métriques. Cela peut se produire lors d'un déploiement ou lorsque le périphérique principal redémarre, par exemple.
Cette valeur doit être d'au moins 2 000 métriques.  
Par défaut : 5 000 métriques

`InputTopic`  
(Facultatif) Rubrique à laquelle le composant s'abonne pour recevoir des messages. Si vous spécifiez `true` pour`PubSubToIoTCore`, vous pouvez utiliser des caractères génériques MQTT (\$1 et \$1) dans cette rubrique.  
Valeur par défaut : `cloudwatch/metric/put`

`OutputTopic`  
(Facultatif) Rubrique pour laquelle le composant publie les réponses de statut.  
Valeur par défaut : `cloudwatch/metric/put/status`

`PubSubToIoTCore`  
(Facultatif) Valeur de chaîne qui définit s'il faut publier des sujets AWS IoT Core MQTT et s'y abonner. Les valeurs prises en charge sont `true` et `false`.  
Valeur par défaut : `false`

`LogLevel`  
(Facultatif) Le niveau de journalisation du composant. Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :  
+ `DEBUG`
+ `INFO`
+ `WARNING`
+ `ERROR`
+ `CRITICAL`
Valeur par défaut : `INFO`

 `UseInstaller`   
(Facultatif) Valeur booléenne qui définit s'il faut utiliser le script d'installation pour installer les dépendances Python de ce composant dans l'environnement Python fourni.  
Définissez cette valeur sur `true` pour installer automatiquement les dépendances Python de ce composant. Lorsque cette valeur est définie sur`false`, vous devez installer les bibliothèques suivantes, y compris les dépendances, et les mettre à la disposition de l'environnement Python fourni à l'utilisateur exécutant le composant.  
+ [Kit SDK des appareils AWS IoT v2 pour Python](https://github.com/aws/aws-iot-device-sdk-python-v2)
+ [AWS SDK pour Python (Boto3)](http://boto.readthedocs.org/en/latest/ref/)
Valeur par défaut : `false`

`PublishRegion`  
(Facultatif) Le Région AWS site sur lequel publier CloudWatch les statistiques. Cette valeur remplace la région par défaut pour le périphérique principal. Ce paramètre est requis uniquement pour les métriques interrégionales.

`accessControl`  
(Facultatif) Objet contenant la [politique d'autorisation](interprocess-communication.md#ipc-authorization-policies) qui permet au composant de publier et de s'abonner aux rubriques spécifiées. Si vous spécifiez des valeurs personnalisées pour `InputTopic` et`OutputTopic`, vous devez mettre à jour les valeurs des ressources dans cet objet.   
Valeur par défaut :   

```
{
  "aws.greengrass.ipc.pubsub": {
    "aws.greengrass.Cloudwatch:pubsub:1": {
      "policyDescription": "Allows access to subscribe to input topics.",
      "operations": [
        "aws.greengrass#SubscribeToTopic"
      ],
      "resources": [
        "cloudwatch/metric/put"
      ]
    },
    "aws.greengrass.Cloudwatch:pubsub:2": {
      "policyDescription": "Allows access to publish to output topics.",
      "operations": [
        "aws.greengrass#PublishToTopic"
      ],
      "resources": [
        "cloudwatch/metric/put/status"
      ]
    }
  },
  "aws.greengrass.ipc.mqttproxy": {
    "aws.greengrass.Cloudwatch:mqttproxy:1": {
      "policyDescription": "Allows access to subscribe to input topics.",
      "operations": [
        "aws.greengrass#SubscribeToIoTCore"
      ],
      "resources": [
        "cloudwatch/metric/put"
      ]
    },
    "aws.greengrass.Cloudwatch:mqttproxy:2": {
      "policyDescription": "Allows access to publish to output topics.",
      "operations": [
        "aws.greengrass#PublishToIoTCore"
      ],
      "resources": [
        "cloudwatch/metric/put/status"
      ]
    }
  }
}
```

**Example Exemple : mise à jour de la fusion de configurations**  

```
{
  "PublishInterval": 0,
  "PubSubToIoTCore": true
}
```

------
#### [ v3.x ]

 `PublishInterval`   
(Facultatif) Le nombre maximal de secondes à attendre avant que le composant publie des métriques par lots pour un espace de noms donné. Pour configurer le composant afin qu'il publie les métriques au fur et à mesure qu'il les reçoit, c'est-à-dire sans traitement par lots, spécifiez`0`.  
Le composant publie CloudWatch après avoir reçu 20 métriques dans le même espace de noms ou après l'intervalle que vous spécifiez.  
Le composant ne précise pas l'ordre dans lequel les événements sont publiés.
Cette valeur peut être de 900 secondes au maximum.  
Par défaut : 10 secondes

 `MaxMetricsToRetain`   
(Facultatif) Le nombre maximum de métriques dans tous les espaces de noms à enregistrer en mémoire avant que le composant ne les remplace par des métriques plus récentes.  
Cette limite s'applique lorsque l'appareil principal n'est pas connecté à Internet. Le composant met donc en mémoire tampon les métriques pour les publier ultérieurement. Lorsque la mémoire tampon est pleine, le composant remplace les mesures les plus anciennes par les plus récentes. Les métriques d'un espace de noms donné remplacent uniquement les métriques du même espace de noms.  
Si le processus hôte du composant est interrompu, le composant n'enregistre pas les métriques. Cela peut se produire lors d'un déploiement ou lorsque le périphérique principal redémarre, par exemple.
Cette valeur doit être d'au moins 2 000 métriques.  
Par défaut : 5 000 métriques

`InputTopic`  
(Facultatif) Rubrique à laquelle le composant s'abonne pour recevoir des messages. Si vous spécifiez `true` pour`PubSubToIoTCore`, vous pouvez utiliser des caractères génériques MQTT (\$1 et \$1) dans cette rubrique.  
Valeur par défaut : `cloudwatch/metric/put`

`OutputTopic`  
(Facultatif) Rubrique pour laquelle le composant publie les réponses de statut.  
Valeur par défaut : `cloudwatch/metric/put/status`

`PubSubToIoTCore`  
(Facultatif) Valeur de chaîne qui définit s'il faut publier des sujets AWS IoT Core MQTT et s'y abonner. Les valeurs prises en charge sont `true` et `false`.  
Valeur par défaut : `false`

`LogLevel`  
(Facultatif) Le niveau de journalisation du composant. Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :  
+ `DEBUG`
+ `INFO`
+ `WARNING`
+ `ERROR`
+ `CRITICAL`
Valeur par défaut : `INFO`

`UseInstaller`  
(Facultatif) Valeur booléenne qui définit s'il faut utiliser le script d'installation pour installer les dépendances Python de ce composant dans l'environnement Python fourni.  
Définissez cette valeur sur `false` pour utiliser un script personnalisé ou installer manuellement les dépendances. Lorsque cette valeur est définie sur`false`, vous devez installer les bibliothèques suivantes, y compris les dépendances, et les mettre à la disposition de l'environnement Python fourni à l'utilisateur exécutant le composant.  
+ [Kit SDK des appareils AWS IoT v2 pour Python](https://github.com/aws/aws-iot-device-sdk-python-v2)
+ [AWS SDK pour Python (Boto3)](http://boto.readthedocs.org/en/latest/ref/)
Valeur par défaut : `true`

`PublishRegion`  
(Facultatif) Le Région AWS site sur lequel publier CloudWatch les statistiques. Cette valeur remplace la région par défaut pour le périphérique principal. Ce paramètre est requis uniquement pour les métriques interrégionales.

`accessControl`  
(Facultatif) Objet contenant la [politique d'autorisation](interprocess-communication.md#ipc-authorization-policies) qui permet au composant de publier et de s'abonner aux rubriques spécifiées. Si vous spécifiez des valeurs personnalisées pour `InputTopic` et`OutputTopic`, vous devez mettre à jour les valeurs des ressources dans cet objet.   
Valeur par défaut :   

```
{
  "aws.greengrass.ipc.pubsub": {
    "aws.greengrass.Cloudwatch:pubsub:1": {
      "policyDescription": "Allows access to subscribe to input topics.",
      "operations": [
        "aws.greengrass#SubscribeToTopic"
      ],
      "resources": [
        "cloudwatch/metric/put"
      ]
    },
    "aws.greengrass.Cloudwatch:pubsub:2": {
      "policyDescription": "Allows access to publish to output topics.",
      "operations": [
        "aws.greengrass#PublishToTopic"
      ],
      "resources": [
        "cloudwatch/metric/put/status"
      ]
    }
  },
  "aws.greengrass.ipc.mqttproxy": {
    "aws.greengrass.Cloudwatch:mqttproxy:1": {
      "policyDescription": "Allows access to subscribe to input topics.",
      "operations": [
        "aws.greengrass#SubscribeToIoTCore"
      ],
      "resources": [
        "cloudwatch/metric/put"
      ]
    },
    "aws.greengrass.Cloudwatch:mqttproxy:2": {
      "policyDescription": "Allows access to publish to output topics.",
      "operations": [
        "aws.greengrass#PublishToIoTCore"
      ],
      "resources": [
        "cloudwatch/metric/put/status"
      ]
    }
  }
}
```

**Example Exemple : mise à jour de la fusion de configurations**  

```
{
  "PublishInterval": 0,
  "PubSubToIoTCore": true
}
```

------
#### [ v2.x ]

**Note**  <a name="connector-component-lambda-parameters"></a>
La configuration par défaut de ce composant inclut les paramètres de la fonction Lambda. Nous vous recommandons de modifier uniquement les paramètres suivants pour configurer ce composant sur vos appareils.

 `lambdaParams`   
Objet contenant les paramètres de la fonction Lambda de ce composant. Cet objet contient les informations suivantes :    
 `EnvironmentVariables`   
Objet contenant les paramètres de la fonction Lambda. Cet objet contient les informations suivantes :    
 `PUBLISH_INTERVAL`   
(Facultatif) Le nombre maximal de secondes à attendre avant que le composant publie des métriques par lots pour un espace de noms donné. Pour configurer le composant afin qu'il publie les métriques au fur et à mesure qu'il les reçoit, c'est-à-dire sans traitement par lots, spécifiez`0`.  
Le composant publie CloudWatch après avoir reçu 20 métriques dans le même espace de noms ou après l'intervalle que vous spécifiez.  
Le composant ne garantit pas l'ordre dans lequel les événements sont publiés.
Cette valeur peut être d'au plus 900 secondes.  
Par défaut : 10 secondes  
 `MAX_METRICS_TO_RETAIN`   
(Facultatif) Le nombre maximum de métriques dans tous les espaces de noms à enregistrer en mémoire avant que le composant ne les remplace par des métriques plus récentes.  
Cette limite s'applique lorsque l'appareil principal n'est pas connecté à Internet. Le composant met donc en mémoire tampon les métriques pour les publier ultérieurement. Lorsque la mémoire tampon est pleine, le composant remplace les mesures les plus anciennes par les plus récentes. Les métriques d'un espace de noms donné remplacent uniquement les métriques du même espace de noms.  
Si le processus hôte du composant est interrompu, le composant n'enregistre pas les métriques. Cela peut se produire lors d'un déploiement ou lorsque le périphérique principal redémarre, par exemple.
Cette valeur doit être d'au moins 2 000 métriques.  
Par défaut : 5 000 métriques  
 `PUBLISH_REGION`   
(Facultatif) Le Région AWS site sur lequel publier CloudWatch les statistiques. Cette valeur remplace la région par défaut pour le périphérique principal. Ce paramètre est requis uniquement pour les métriques interrégionales.

`containerMode`  <a name="connector-component-container-mode-parameter"></a>
(Facultatif) Mode de conteneurisation de ce composant. Sélectionnez l’une des options suivantes :  <a name="lambda-function-component-container-mode-parameter"></a>
+ `NoContainer`— Le composant ne s'exécute pas dans un environnement d'exécution isolé.
+ `GreengrassContainer`— Le composant s'exécute dans un environnement d'exécution isolé à l'intérieur du AWS IoT Greengrass conteneur.
Valeur par défaut : `GreengrassContainer`

 `containerParams`   
<a name="connector-component-container-params-description"></a>(Facultatif) Objet contenant les paramètres du conteneur pour ce composant. Le composant utilise ces paramètres si vous le spécifiez `GreengrassContainer` pour`containerMode`.  
Cet objet contient les informations suivantes :    
 `memorySize`   
<a name="connector-component-container-params-memory-size-description"></a>(Facultatif) La quantité de mémoire (en kilo-octets) à allouer au composant.  
La valeur par défaut est de 64 Mo (65 535 Ko).

`pubsubTopics`  <a name="connector-component-pubsub-topics-parameter"></a>
(Facultatif) Objet contenant les rubriques auxquelles le composant s'abonne pour recevoir des messages. Vous pouvez spécifier chaque sujet et indiquer si le composant est abonné à des sujets MQTT provenant de sujets locaux AWS IoT Core ou locaux publish/subscribe .  
Cet objet contient les informations suivantes :    
`0`— Il s'agit d'un index de tableau sous forme de chaîne.  
Objet contenant les informations suivantes :    
`type`  
(Facultatif) Type de publish/subscribe messagerie utilisé par ce composant pour s'abonner aux messages. Sélectionnez l’une des options suivantes :  
+ `PUB_SUB` – Abonnez-vous aux messages locaux de publication/abonnement. Si vous choisissez cette option, le sujet ne peut pas contenir de caractères génériques MQTT. Pour plus d'informations sur la façon d'envoyer des messages à partir d'un composant personnalisé lorsque vous spécifiez cette option, consultez[Publier/souscrire des messages locaux](ipc-publish-subscribe.md).
+ `IOT_CORE`— Abonnez-vous aux messages AWS IoT Core MQTT. Si vous choisissez cette option, le sujet peut contenir des caractères génériques MQTT. Pour plus d'informations sur la façon d'envoyer des messages à partir de composants personnalisés lorsque vous spécifiez cette option, consultez[Publier/souscrire AWS IoT Core des messages MQTT](ipc-iot-core-mqtt.md).
Valeur par défaut : `PUB_SUB`  
`topic`  
(Facultatif) Rubrique à laquelle le composant s'abonne pour recevoir des messages. Si vous spécifiez `IotCore` pour`type`, vous pouvez utiliser des caractères génériques MQTT (`+`et`#`) dans cette rubrique.

**Example Exemple : mise à jour de fusion de configuration (mode conteneur)**  

```
{
  "containerMode": "GreengrassContainer"
}
```

**Example Exemple : mise à jour de fusion de configuration (pas de mode conteneur)**  

```
{
  "containerMode": "NoContainer"
}
```

------

## Données d’entrée
<a name="cloudwatch-metrics-component-input-data"></a>

Ce composant accepte les métriques relatives au sujet suivant et les publie sur CloudWatch. <a name="connector-component-local-publish"></a>Par défaut, ce composant s'abonne aux publish/subscribe messages locaux. Pour plus d'informations sur la façon de publier des messages vers ce composant à partir de vos composants personnalisés, consultez[Publier/souscrire des messages locaux](ipc-publish-subscribe.md). 

À partir de la version du composant v3.0.0, vous pouvez éventuellement configurer ce composant pour qu'il s'abonne à un sujet MQTT en définissant le paramètre de `PubSubToIoTCore` configuration sur. `true` Pour plus d'informations sur la publication de messages sur une rubrique MQTT dans vos composants personnalisés, consultez[Publier/souscrire AWS IoT Core des messages MQTT](ipc-iot-core-mqtt.md).

 **Rubrique par défaut :** `cloudwatch/metric/put` 

<a name="connector-component-input-properties"></a>Le message accepte les propriétés suivantes. Les messages d'entrée doivent être au format JSON.

 `request`   
La métrique indiquée dans ce message.  
L'objet de la demande contient les données de métrique à publier dans CloudWatch. Les valeurs métriques doivent répondre aux spécifications de l'[https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_PutMetricData.html](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_PutMetricData.html)opération.  
Type : `object` qui contient les informations suivantes :    
 `namespace`   
L'espace de noms défini par l'utilisateur pour les données métriques de cette demande. CloudWatch utilise des espaces de noms comme conteneurs pour les points de données métriques.  
Vous ne pouvez pas spécifier un espace de noms commençant par la chaîne `AWS/` réservée.
Type : `string`  
Modèle valide : `[^:].*`  
 `metricData`   
Les données pour la métrique.  
Type : `object` qui contient les informations suivantes :    
 `metricName`   
Le nom de la métrique.  
Type : `string`  
 `value`   
Valeur de la métrique.  
CloudWatch rejette les valeurs trop petites ou trop grandes. La valeur doit être comprise entre `8.515920e-109` et `1.174271e+108` (Base 10) ou `2e-360` et `2e360` (Base 2). CloudWatch ne prend pas en charge les valeurs spéciales telles que `NaN``+Infinity`, et`-Infinity`.
Type : `double`  
 `dimensions`   
(Facultatif) Dimensions de la métrique. Les dimensions fournissent des informations supplémentaires sur la métrique et ses données. Une métrique peut définir jusqu'à 10 dimensions.  
Ce composant inclut automatiquement une dimension nommée`coreName`, dont la valeur est le nom du périphérique principal.  
Type : `array` d'objets contenant chacun les informations suivantes :    
 `name`   
(Facultatif) Le nom de la dimension.  
Type : `string`  
 `value`   
(Facultatif) La valeur de la dimension.  
Type : `string`  
 `timestamp`   
(Facultatif) Heure à laquelle les données métriques ont été reçues, exprimée en secondes à l'époque Unix.  
La valeur par défaut est l'heure à laquelle le composant reçoit le message.  
Type : `double`  
Si vous utilisez entre les versions 2.0.3 et 2.0.7 de ce composant, nous vous recommandons de récupérer l'horodatage séparément pour chaque métrique lorsque vous envoyez plusieurs métriques à partir d'une seule source. N'utilisez pas de variable pour enregistrer l'horodatage.  
 `unit`   
(Facultatif) L'unité de la métrique.  
Type : `string`  
Valeurs valides :`Seconds`,`Microseconds`,`Milliseconds`,`Bytes`,`Kilobytes`,`Megabytes`,`Gigabytes`,`Terabytes`,`Bits`,`Kilobits`,`Megabits`,,`Gigabits`,`Terabits`,`Percent`,`Count`,`Bytes/Second`,`Kilobytes/Second`,`Megabytes/Second`,`Gigabytes/Second`,`Terabytes/Second`,`Bits/Second`,`Kilobits/Second`,`Megabits/Second`,`Gigabits/Second`,`Terabits/Second`,`Count/Second`, `None`  
La valeur par défaut est `None` .

**Note**  
Tous les quotas qui s'appliquent à l' CloudWatch `PutMetricData`API s'appliquent aux métriques que vous publiez avec ce composant. Les quotas suivants sont particulièrement importants :  
Limite de 40 Ko sur la charge utile de l'API
20 métriques par requête d'API
150 transactions par seconde (TPS) pour l'API `PutMetricData`
Pour plus d'informations, consultez la section [Quotas de CloudWatch service](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/cloudwatch_limits.html) dans le *Guide de CloudWatch l'utilisateur*.

**Example Exemple d'entrée**  

```
{
  "request": {
    "namespace": "Greengrass",
    "metricData": {
      "metricName": "latency",
      "dimensions": [
        {
          "name": "hostname",
          "value": "test_hostname"
        }
      ],
      "timestamp": 1539027324,
      "value": 123.0,
      "unit": "Seconds"
    }
  }
}
```

## Données de sortie
<a name="cloudwatch-metrics-component-output-data"></a>

 <a name="connector-component-output-data-pubsub"></a>Ce composant publie par défaut les réponses sous forme de données de sortie sur le publish/subscribe sujet local suivant. Pour plus d'informations sur la façon de s'abonner à des messages sur ce sujet dans vos composants personnalisés, consultez[Publier/souscrire des messages locaux](ipc-publish-subscribe.md). 

Vous pouvez éventuellement configurer ce composant pour qu'il soit publié dans une rubrique MQTT en définissant le paramètre `PubSubToIoTCore` de configuration sur`true`. Pour plus d'informations sur l'abonnement à des messages sur un sujet MQTT dans vos composants personnalisés, consultez. [Publier/souscrire AWS IoT Core des messages MQTT](ipc-iot-core-mqtt.md)

**Note**  
Les versions 2.0.x des composants publient les réponses sous forme de données de sortie sur un sujet MQTT par défaut. Vous devez spécifier le sujet tel qu'il `subject` figure dans la configuration de l'[ancien composant routeur d'abonnement](legacy-subscription-router-component.md).

 **Rubrique par défaut :** `cloudwatch/metric/put/status` 

**Example Exemple de sortie : réussite**  
La réponse inclut l'espace de noms des données métriques et le `RequestId` champ de la CloudWatch réponse.  

```
{
  "response": {
    "cloudwatch_rid": "70573243-d723-11e8-b095-75ff2EXAMPLE",
    "namespace": "Greengrass",
    "status": "success"
  }
}
```

**Example Exemple de sortie : échec**  

```
{
  "response" : {
    "namespace": "Greengrass",
    "error": "InvalidInputException",
    "error_message": "cw metric is invalid",
    "status": "fail"
  }
}
```

**Note**  <a name="connector-component-retryable-error"></a>
Si le composant détecte une erreur qui peut être réessayée, telle qu'une erreur de connexion, il réessaie de publier dans le lot suivant.

## Licences
<a name="cloudwatch-metrics-component-licenses"></a>

Ce composant inclut les logiciels/licences tiers suivants :<a name="boto-3-licenses"></a>
+ [AWS SDK pour Python (Boto3)](https://pypi.org/project/boto3/)/Licence Apache 2.0
+ [botocore](https://pypi.org/project/botocore/)/Licence Apache 2.0
+ [dateutil](https://pypi.org/project/python-dateutil/1.4/)/Licence PSF
+ [docutils](https://pypi.org/project/docutils/)/Licence BSD, licence GPL (General Public License) GNU, licence Python Software Foundation, domaine public
+ [jmespath](https://pypi.org/project/jmespath/)/Licence MIT
+ [s3transfer](https://pypi.org/project/s3transfer/)/Licence Apache 2.0
+ [urllib3](https://pypi.org/project/urllib3/)/Licence MIT

<a name="component-core-software-license"></a>Ce composant est publié dans le cadre du contrat de [licence logicielle Greengrass Core](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf).

## Fichier journal local
<a name="cloudwatch-metrics-component-log-file"></a>

Ce composant utilise le fichier journal suivant.

------
#### [ Linux ]

```
/greengrass/v2/logs/aws.greengrass.Cloudwatch.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\aws.greengrass.Cloudwatch.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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par le chemin d'accès au dossier AWS IoT Greengrass racine.

------
#### [ Linux ]

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

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.greengrass.Cloudwatch.log -Tail 10 -Wait
  ```

------

## Journal des modifications
<a name="cloudwatch-metrics-component-changelog"></a>

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

------
#### [ v4.x - v3.x ]


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  4.0.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/cloudwatch-metrics-component.html)  | 
|  3.2.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/cloudwatch-metrics-component.html)  | 
|  3.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/cloudwatch-metrics-component.html)  | 
|  3.0.0  |  <a name="changelog-cloudwatch-metrics-3.0.0-major-version-changes"></a>Cette version du composant CloudWatch metrics attend des paramètres de configuration différents de ceux de la version 2.x. Si vous utilisez une configuration autre que celle par défaut pour la version 2.x et que vous souhaitez passer de la version 2.x à la version 3.x, vous devez mettre à jour la configuration du composant. Pour plus d'informations, consultez la section [Configuration CloudWatch des composants métriques](#cloudwatch-metrics-component-configuration). <a name="changelog-cloudwatch-metrics-3.0.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/cloudwatch-metrics-component.html)  | 

------
#### [ v2.x ]


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.1.8  |  Version mise à jour pour la version 2.13.0 de Greengrass Nucleus.  | 
|  2.1.3  |  Version mise à jour pour la version 2.11.0 de Greengrass Nucleus.  | 
|  2.1.2  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  2.1.1  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/cloudwatch-metrics-component.html)  | 
|  2.0.8  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/cloudwatch-metrics-component.html)  | 
|  2.0.7  |  Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.  | 
|  2.0.6  |  Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.  | 
|  2.0.5  |  Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.  | 
|  2.0.4  |  Version mise à jour pour la version 2.1.0 de Greengrass Nucleus.  | 
|  2.0.3  |  Première version.  | 

------

## Consultez aussi
<a name="cloudwatch-metrics-component-see-also"></a>
+ [Utilisation des CloudWatch métriques Amazon](https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/working_with_metrics.html) dans le *guide de CloudWatch l'utilisateur Amazon*
+ [PutMetricData](https://docs.aws.amazon.com/AmazonCloudWatch/latest/APIReference/API_PutMetricData.html)dans le *Amazon CloudWatch API Reference*

# AWS IoT Device Defender
<a name="device-defender-component"></a>

Le AWS IoT Device Defender composant (`aws.greengrass.DeviceDefender`) informe les administrateurs des modifications de l'état des appareils principaux de Greengrass. Cela peut permettre d'identifier un comportement inhabituel qui pourrait indiquer un appareil compromis. Pour plus d’informations, consultez [AWS IoT Device Defender](https://docs.aws.amazon.com/iot/latest/developerguide/device-defender.html) dans le *Guide du développeur AWS IoT Core *.

Ce composant lit les métriques du système sur le périphérique principal. Ensuite, il publie les métriques sur AWS IoT Device Defender. Pour plus d'informations sur la façon de lire et d'interpréter les métriques rapportées par ce composant, consultez les [spécifications du document relatif aux métriques des appareils](https://docs.aws.amazon.com/iot/latest/developerguide/detect-device-side-metrics.html#DetectMetricsMessagesSpec) dans le *Guide du AWS IoT Core développeur*.

**Note**  
Ce composant fournit des fonctionnalités similaires à celles du connecteur Device Defender dans AWS IoT Greengrass V1. Pour plus d'informations, consultez la section relative au [connecteur Device Defender](https://docs.aws.amazon.com/greengrass/latest/developerguide/device-defender-connector.html) dans le *guide du AWS IoT Greengrass V1 développeur*.

**Topics**
+ [Versions](#device-defender-component-versions)
+ [Type](#device-defender-component-type)
+ [Système d’exploitation](#device-defender-component-os-support)
+ [Exigences](#device-defender-component-requirements)
+ [Dépendances](#device-defender-component-dependencies)
+ [Configuration](#device-defender-component-configuration)
+ [Données d’entrée](#device-defender-component-input-data)
+ [Données de sortie](#device-defender-component-output-data)
+ [Fichier journal local](#device-defender-component-log-file)
+ [Licences](#device-defender-component-licenses)
+ [Journal des modifications](#device-defender-component-changelog)

## Versions
<a name="device-defender-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 4,0. x
+ 3.1.x
+ 3.0.x
+ 2.0.x

Pour plus d'informations sur les modifications apportées à chaque version du composant, consultez le [journal des modifications.](#device-defender-component-changelog)

## Type
<a name="device-defender-component-type"></a>

------
#### [ v4.x - v3.x ]

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

------
#### [ v2.x ]

<a name="public-component-type-lambda"></a>Ce <a name="public-component-type-lambda-phrase"></a>composant est un composant Lambda () `aws.greengrass.lambda`. [Le [noyau Greengrass](greengrass-nucleus-component.md) exécute la fonction Lambda de ce composant à l'aide du composant Lambda Launcher.](lambda-launcher-component.md)

------

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="device-defender-component-os-support"></a>

------
#### [ v4.x - v3.x ]

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

------
#### [ v2.x ]

Ce composant ne peut être installé que sur les appareils principaux de Linux.

------

## Exigences
<a name="device-defender-component-requirements"></a>

Ce composant répond aux exigences suivantes :

------
#### [ v4.x - v3.x ]
+ <a name="public-component-python3-requirement"></a>[Python](https://www.python.org/) version 3.7 installé sur le périphérique principal et ajouté à la variable d'environnement PATH.
+ Les bibliothèques Python suivantes, y compris les dépendances, doivent être installées et mises à la disposition de l'utilisateur exécutant le composant :
  + [Kit SDK des appareils AWS IoT v2 pour Python](https://github.com/aws/aws-iot-device-sdk-python-v2)
  + bibliothèque [cbor](https://pypi.org/project/cbor/). La version 1.0.0 est la dernière version dont le fonctionnement avec le composant a été vérifié.
  + [bibliothèque psutil](https://pypi.org/project/psutil/). La version 5.7.0 est la dernière version dont le fonctionnement avec le composant a été vérifié.
**Note**  
Vous pouvez définir la `UseInstaller` configuration `true` pour installer ces bibliothèques automatiquement dans l'environnement Python fourni.
+ AWS IoT Device Defender configuré pour utiliser la fonction de détection afin de surveiller les violations. Pour plus d'informations, consultez la section [Detect](https://docs.aws.amazon.com/iot/latest/developerguide/device-defender-detect.html) dans le *guide du AWS IoT Core développeur*.

------
#### [ v2.x ]
+ <a name="core-device-lambda-function-requirements"></a>Votre appareil principal doit répondre aux exigences pour exécuter les fonctions Lambda. Si vous souhaitez que le périphérique principal exécute des fonctions Lambda conteneurisées, le périphérique doit répondre aux exigences requises. Pour de plus amples informations, veuillez consulter [Exigences relatives à la fonction Lambda](setting-up.md#greengrass-v2-lambda-requirements).
+ <a name="public-component-python3-requirement"></a>[Python](https://www.python.org/) version 3.7 installé sur le périphérique principal et ajouté à la variable d'environnement PATH.
+ AWS IoT Device Defender configuré pour utiliser la fonction de détection afin de surveiller les violations. Pour plus d'informations, consultez la section [Detect](https://docs.aws.amazon.com/iot/latest/developerguide/device-defender-detect.html) dans le *guide du AWS IoT Core développeur*.
+ La bibliothèque [psutil](https://pypi.org/project/psutil/) installée sur le périphérique principal. La version 5.7.0 est la dernière version dont le fonctionnement avec le composant a été vérifié.
+ La bibliothèque [cbor](https://pypi.org/project/cbor/) installée sur le périphérique principal. La version 1.0.0 est la dernière version dont le fonctionnement avec le composant a été vérifié.
+ <a name="connector-component-legacy-subscription-router-dependency"></a>Pour recevoir les données de sortie de ce composant, vous devez fusionner la mise à jour de configuration suivante pour l'[ancien composant routeur d'abonnement](legacy-subscription-router-component.md) (`aws.greengrass.LegacySubscriptionRouter`) lorsque vous déployez ce composant. Cette configuration indique le sujet dans lequel ce composant publie les réponses.

------
#### [ Legacy subscription router v2.1.x ]

  ```
  {
    "subscriptions": {
      "aws-greengrass-device-defender": {
        "id": "aws-greengrass-device-defender",
        "source": "component:aws.greengrass.DeviceDefender",
        "subject": "$aws/things/+/defender/metrics/json",
        "target": "cloud"
      }
    }
  }
  ```

------
#### [ Legacy subscription router v2.0.x ]

  ```
  {
    "subscriptions": {
      "aws-greengrass-device-defender": {
        "id": "aws-greengrass-device-defender",
        "source": "arn:aws:lambda:region:aws:function:aws-greengrass-device-defender:version",
        "subject": "$aws/things/+/defender/metrics/json",
        "target": "cloud"
      }
    }
  }
  ```<a name="connector-component-legacy-subscription-router-dependency-replace"></a>
  + *region*Remplacez-le par Région AWS celui que vous utilisez.
  + *version*Remplacez-le par la version de la fonction Lambda exécutée par ce composant. Pour trouver la version de la fonction Lambda, vous devez consulter la recette de la version de ce composant que vous souhaitez déployer. Ouvrez la page de détails de ce composant dans la [AWS IoT Greengrass console](https://console.aws.amazon.com//greengrass) et recherchez la paire clé-valeur de la **fonction Lambda**. Cette paire clé-valeur contient le nom et la version de la fonction Lambda.

**Important**  <a name="connector-component-legacy-subscription-router-dependency-note"></a>
Vous devez mettre à jour la version de la fonction Lambda sur l'ancien routeur d'abonnement chaque fois que vous déployez ce composant. Cela garantit que vous utilisez la bonne version de la fonction Lambda pour la version du composant que vous déployez.

------

  <a name="connector-component-create-deployments"></a>Pour de plus amples informations, veuillez consulter [Créer des déploiements](create-deployments.md).

------

## Dépendances
<a name="device-defender-component-dependencies"></a>

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](#device-defender-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 4.0.0 - 3.0.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <3,0.0 | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | >=0,0.0 | Stricte | 

------
#### [ 2.0.12 - 2.0.17 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <3,0.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.12 - 2.0.16 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <3,0.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.10 - 2.0.11 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,8.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,7.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,6.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,5.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,4.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,3.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,2.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,3 <2,10  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | >=10,0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | >=10,0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | >=10,0  | Stricte | 

------

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="device-defender-component-configuration"></a>

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

------
#### [ v4.x ]

`PublishRetryCount`  
Le nombre de fois où la publication sera réessayée.  
Le minimum est 0.  
Le maximum est de 72.  
Par défaut: 5

`SampleIntervalSeconds`  
(Facultatif) Durée en secondes entre chaque cycle pendant lequel le composant collecte et rapporte des métriques.  
La valeur minimale est de 300 secondes (5 minutes).  
Par défaut : 300 secondes

 `UseInstaller`   
(Facultatif) Valeur booléenne qui définit s'il faut utiliser le script d'installation pour installer les dépendances Python de ce composant dans l'environnement Python fourni.  
Définissez cette valeur sur `true` pour installer automatiquement les dépendances Python de ce composant. Lorsque cette valeur est définie sur`false`, vous devez installer les bibliothèques suivantes, y compris les dépendances, et les mettre à la disposition de l'environnement Python fourni à l'utilisateur exécutant le composant.  
+ [Kit SDK des appareils AWS IoT v2 pour Python](https://github.com/aws/aws-iot-device-sdk-python-v2)
+ bibliothèque [cbor](https://pypi.org/project/cbor/). La version 1.0.0 est la dernière version dont le fonctionnement avec le composant a été vérifié.
+ [bibliothèque psutil](https://pypi.org/project/psutil/). La version 5.7.0 est la dernière version dont le fonctionnement avec le composant a été vérifié.
Valeur par défaut : `false`

------
#### [ v3.x ]

`PublishRetryCount`  
Le nombre de fois où la publication sera réessayée. Cette fonctionnalité est disponible dans la version 3.1.1.  
Le minimum est 0.  
Le maximum est de 72.  
Par défaut: 5

`SampleIntervalSeconds`  
(Facultatif) Durée en secondes entre chaque cycle pendant lequel le composant collecte et rapporte des métriques.  
La valeur minimale est de 300 secondes (5 minutes).  
Par défaut : 300 secondes

 `UseInstaller`   
(Facultatif) Valeur booléenne qui définit s'il faut utiliser le script d'installation pour installer les dépendances Python de ce composant dans l'environnement Python fourni.  
Définissez cette valeur sur `false` pour utiliser un script personnalisé ou installer manuellement les dépendances. Lorsque cette valeur est définie sur`false`, vous devez installer les bibliothèques suivantes, y compris les dépendances, et les mettre à la disposition de l'environnement Python fourni à l'utilisateur exécutant le composant.  
+ [Kit SDK des appareils AWS IoT v2 pour Python](https://github.com/aws/aws-iot-device-sdk-python-v2)
+ bibliothèque [cbor](https://pypi.org/project/cbor/). La version 1.0.0 est la dernière version dont le fonctionnement avec le composant a été vérifié.
+ [bibliothèque psutil](https://pypi.org/project/psutil/). La version 5.7.0 est la dernière version dont le fonctionnement avec le composant a été vérifié.
Si vous utilisez la version 3.0.0 ou 3.0.1 de ce composant sur des appareils principaux que vous configurez pour utiliser un proxy HTTPS, vous devez définir cette valeur sur. `false` Le script d'installation ne prend pas en charge le fonctionnement derrière un proxy HTTPS dans ces versions de ce composant.
Valeur par défaut : `true`

------
#### [ v2.x ]

**Note**  <a name="connector-component-lambda-parameters"></a>
La configuration par défaut de ce composant inclut les paramètres de la fonction Lambda. Nous vous recommandons de modifier uniquement les paramètres suivants pour configurer ce composant sur vos appareils.

`lambdaParams`  
Objet contenant les paramètres de la fonction Lambda de ce composant. Cet objet contient les informations suivantes :    
`EnvironmentVariables`  
Objet contenant les paramètres de la fonction Lambda. Cet objet contient les informations suivantes :    
`PROCFS_PATH`  
(Facultatif) Le chemin d'accès au `/proc` dossier.  
+ Pour exécuter ce composant dans un conteneur, utilisez la valeur par défaut,`/host-proc`. Le composant s'exécute dans un conteneur par défaut.
+ Pour exécuter ce composant sans mode conteneur, spécifiez `/proc` ce paramètre.
Valeur par défaut : `/host-proc`. Il s'agit du chemin par défaut où ce composant monte le `/proc` dossier dans le conteneur.  
Ce composant dispose d'un accès en lecture seule à ce dossier.  
`SAMPLE_INTERVAL_SECONDS`  
(Facultatif) Durée en secondes entre chaque cycle pendant lequel le composant collecte et rapporte des métriques.  
La valeur minimale est de 300 secondes (5 minutes).  
Par défaut : 300 secondes

`containerMode`  
(Facultatif) Mode de conteneurisation de ce composant. Sélectionnez l’une des options suivantes :  
+ `GreengrassContainer`— Le composant s'exécute dans un environnement d'exécution isolé à l'intérieur du AWS IoT Greengrass conteneur.
+ `NoContainer`— Le composant ne s'exécute pas dans un environnement d'exécution isolé.

  Si vous spécifiez cette option, vous devez spécifier `/proc` le paramètre de variable d'`PROCFS_PATH`environnement.
Valeur par défaut : `GreengrassContainer`

`containerParams`  
<a name="connector-component-container-params-description"></a>(Facultatif) Objet contenant les paramètres du conteneur pour ce composant. Le composant utilise ces paramètres si vous le spécifiez `GreengrassContainer` pour`containerMode`.  
Cet objet contient les informations suivantes :    
`memorySize`  
<a name="connector-component-container-params-memory-size-description"></a>(Facultatif) La quantité de mémoire (en kilo-octets) à allouer au composant.  
La valeur par défaut est de 50 000 Ko.

`pubsubTopics`  <a name="connector-component-pubsub-topics-parameter"></a>
(Facultatif) Objet contenant les rubriques auxquelles le composant s'abonne pour recevoir des messages. Vous pouvez spécifier chaque sujet et indiquer si le composant est abonné à des sujets MQTT provenant de sujets locaux AWS IoT Core ou locaux publish/subscribe .  
Cet objet contient les informations suivantes :    
`0`— Il s'agit d'un index de tableau sous forme de chaîne.  
Un objet contenant les informations suivantes :    
`type`  
(Facultatif) Type de publish/subscribe messagerie utilisé par ce composant pour s'abonner aux messages. Sélectionnez l’une des options suivantes :  
+ `PUB_SUB` – Abonnez-vous aux messages locaux de publication/abonnement. Si vous choisissez cette option, le sujet ne peut pas contenir de caractères génériques MQTT. Pour plus d'informations sur la façon d'envoyer des messages à partir d'un composant personnalisé lorsque vous spécifiez cette option, consultez[Publier/souscrire des messages locaux](ipc-publish-subscribe.md).
+ `IOT_CORE`— Abonnez-vous aux messages AWS IoT Core MQTT. Si vous choisissez cette option, le sujet peut contenir des caractères génériques MQTT. Pour plus d'informations sur la façon d'envoyer des messages à partir de composants personnalisés lorsque vous spécifiez cette option, consultez[Publier/souscrire AWS IoT Core des messages MQTT](ipc-iot-core-mqtt.md).
Valeur par défaut : `PUB_SUB`  
`topic`  
(Facultatif) Rubrique à laquelle le composant s'abonne pour recevoir des messages. Si vous spécifiez `IotCore` pour`type`, vous pouvez utiliser des caractères génériques MQTT (`+`et`#`) dans cette rubrique.

**Example Exemple : mise à jour de fusion de configuration (mode conteneur)**  

```
{
  "lambdaExecutionParameters": {
    "EnvironmentVariables": {
      "PROCFS_PATH": "/host_proc"
    }
  },
  "containerMode": "GreengrassContainer"
}
```

**Example Exemple : mise à jour de fusion de configuration (pas de mode conteneur)**  

```
{
  "lambdaExecutionParameters": {
    "EnvironmentVariables": {
      "PROCFS_PATH": "/proc"
    }
  },
  "containerMode": "NoContainer"
}
```

------

## Données d’entrée
<a name="device-defender-component-input-data"></a>

Ce composant n'accepte pas les messages en tant que données d'entrée.

## Données de sortie
<a name="device-defender-component-output-data"></a>

Ce composant publie des métriques de sécurité dans la rubrique réservée suivante pour AWS IoT Device Defender. Ce composant est *coreDeviceName* remplacé par le nom du périphérique principal lorsqu'il publie les métriques.

**Thème (AWS IoT Core MQTT) :** `$aws/things/coreDeviceName/defender/metrics/json`

**Example Exemple de sortie**  

```
{
  "header": {
    "report_id": 1529963534,
    "version": "1.0"
  },
  "metrics": {
    "listening_tcp_ports": {
      "ports": [
        {
          "interface": "eth0",
          "port": 24800
        },
        {
          "interface": "eth0",
          "port": 22
        },
        {
          "interface": "eth0",
          "port": 53
        }
      ],
      "total": 3
    },
    "listening_udp_ports": {
      "ports": [
        {
          "interface": "eth0",
          "port": 5353
        },
        {
          "interface": "eth0",
          "port": 67
        }
      ],
      "total": 2
    },
    "network_stats": {
      "bytes_in": 1157864729406,
      "bytes_out": 1170821865,
      "packets_in": 693092175031,
      "packets_out": 738917180
    },
    "tcp_connections": {
      "established_connections":{
        "connections": [
          {
            "local_interface": "eth0",
            "local_port": 80,
            "remote_addr": "192.168.0.1:8000"
          },
          {
            "local_interface": "eth0",
            "local_port": 80,
            "remote_addr": "192.168.0.1:8000"
          }
        ],
        "total": 2
      }
    }
  }
}
```

Pour plus d'informations sur les métriques rapportées par ce composant, consultez la [spécification du document relatif aux métriques des appareils](https://docs.aws.amazon.com/iot/latest/developerguide/detect-device-side-metrics.html#DetectMetricsMessagesSpec) dans le *Guide du AWS IoT Core développeur*.

## Fichier journal local
<a name="device-defender-component-log-file"></a>

Ce composant utilise le fichier journal suivant.

------
#### [ Linux ]

```
/greengrass/v2/logs/aws.greengrass.DeviceDefender.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\aws.greengrass.DeviceDefender.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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par le chemin d'accès au dossier AWS IoT Greengrass racine.

------
#### [ Linux ]

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

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.greengrass.DeviceDefender.log -Tail 10 -Wait
  ```

------

## Licences
<a name="device-defender-component-licenses"></a>

<a name="component-core-software-license"></a>Ce composant est publié dans le cadre du contrat de [licence logicielle Greengrass Core](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf).

## Journal des modifications
<a name="device-defender-component-changelog"></a>

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

------
#### [ v4.x - v3.x ]


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  4.0.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/device-defender-component.html)  | 
|  3.1.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/device-defender-component.html)  | 
|  3.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/device-defender-component.html)  | 
|  3.0.1  |  Résout un problème lié à la façon dont le composant calcule les valeurs delta pour les métriques.  | 
|  3.0.0  |   Cette version n'est plus disponible. Les améliorations apportées à cette version sont disponibles dans les versions ultérieures de ce composant.  Première version.  | 

------
#### [ v2.x ]


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2,0,17  |  Version mise à jour pour la version 2.14.0 de Greengrass Nucleus.  | 
|  2,0,16  |  Version mise à jour pour la version 2.13.0 de Greengrass Nucleus.  | 
|  2.0.11  |  Version mise à jour pour la version 2.11.0 de Greengrass Nucleus.  | 
|  2.0.10  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  2.0.9  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  2.0.8  |  Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.  | 
|  2.0.7  |  Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.  | 
|  2.0.6  |  Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.  | 
|  2.0.5  |  Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.  | 
|  2.0.4  |  Version mise à jour pour la version 2.1.0 de Greengrass Nucleus.  | 
|  2.0.3  |  Première version.  | 

------

# spouleur à disque
<a name="disk-spooler-component"></a>

Le composant spouleur de disque (`aws.greengrass.DiskSpooler`) offre une option de stockage permanent pour les messages envoyés depuis les appareils principaux de Greengrass vers. AWS IoT Core Ce composant stockera ces messages sortants sur le disque.

**Topics**
+ [Versions](#disk-spooler-component-versions)
+ [Type](#disk-spooler-component-type)
+ [Système d’exploitation](#disk-spooler-component-os-support)
+ [Exigences](#disk-spooler-component-requirements)
+ [Dépendances](#disk-spooler-component-dependencies)
+ [Usage](#disk-spooler-component-usage)
+ [Fichier journal local](#disk-spooler-component-log-file)
+ [Journal des modifications](#disk-spooler-component-changelog)

## Versions
<a name="disk-spooler-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 1,0 x

## Type
<a name="disk-spooler-component-type"></a>

<a name="public-component-type-plugin-para1"></a>Ce composant est un composant de plugin (`aws.greengrass.plugin`). Le [noyau Greengrass](greengrass-nucleus-component.md) 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.

<a name="public-component-type-plugin-para2"></a>Ce composant utilise le même fichier journal que le noyau Greengrass. Pour de plus amples informations, veuillez consulter [AWS IoT Greengrass Journaux de surveillance](monitor-logs.md).

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="disk-spooler-component-os-support"></a>

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

## Exigences
<a name="disk-spooler-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ `storageType`doit être paramétré `Disk` pour utiliser ce composant. Vous pouvez le définir dans la configuration du [noyau de Greengrass](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration).
+ `maxSizeInBytes`ne doit pas être configuré pour être supérieur à l'espace disponible sur l'appareil. Vous pouvez le définir dans la configuration du [noyau de Greengrass](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration).
+ Le composant spouleur de disque est compatible pour s'exécuter dans un VPC.

## Dépendances
<a name="disk-spooler-component-dependencies"></a>

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](#disk-spooler-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 1.0.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,11,0 <2,17,0 | Stricte | 

------
#### [ 1.0. ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,11,0 <2,16,0 | Stricte | 

------
#### [ 1.0.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,11,0 <2,15,0 | Stricte | 

------
#### [ 1.0.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,11,0 <2,14,0 | Stricte | 

------
#### [ 1.0.1 – 1.0.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,11,0 <2,13,0 | Stricte | 

------
#### [ 1.0.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,11,0 <2,12,0 | Stricte | 

------

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Usage
<a name="disk-spooler-component-usage"></a>

Pour utiliser le composant spouleur de disque, celui-ci `aws.greengrass.DiskSpooler` doit être déployé.

Pour configurer et utiliser ce composant, vous devez définir la valeur `pluginName` sur`aws.greengrass.DiskSpooler`.

## Fichier journal local
<a name="disk-spooler-component-log-file"></a>

Ce composant utilise le même fichier journal que le composant [Greengrass nucleus](greengrass-nucleus-component.md).

------
#### [ 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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par 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
<a name="disk-spooler-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  1.0.8  |  Met à jour la version du composant pour la version 2.17.0 de Greengrass Nucleus.  | 
|  1.0.7  |  Version mise à jour pour la version 2.16.0 de Greengrass Nucleus.  | 
|  1.0.6  |  Version mise à jour pour la version 2.15.0 de Greengrass Nucleus.  | 
|  1.0.5  |  Version mise à jour pour la version 2.14.0 de Greengrass Nucleus.  | 
|  1.0.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/disk-spooler-component.html)  | 
|  1.0.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/disk-spooler-component.html)  | 
|  1.0.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/disk-spooler-component.html)  | 
|  1.0.1  |  Version mise à jour pour la version 2.12.0 de Greengrass Nucleus.  | 
|  1.0.0  |  Première version.  | 

# Gestionnaire d'applications Docker
<a name="docker-application-manager-component"></a>

Le composant du gestionnaire d'applications Docker (`aws.greengrass.DockerApplicationManager`) permet de télécharger des images Docker AWS IoT Greengrass à partir de registres d'images publics et de registres privés hébergés sur Amazon Elastic Container Registry (Amazon ECR). Il permet également AWS IoT Greengrass de gérer automatiquement les informations d'identification pour télécharger en toute sécurité des images à partir de référentiels privés sur Amazon ECR.

Lorsque vous développez un composant personnalisé qui exécute un conteneur Docker, incluez le gestionnaire d'applications Docker en tant que dépendance pour télécharger les images Docker spécifiées comme artefacts dans votre composant. Pour de plus amples informations, veuillez consulter [Exécuter un conteneur Docker](run-docker-container.md).

**Topics**
+ [Versions](#docker-application-manager-component-versions)
+ [Type](#docker-application-manager-component-type)
+ [Système d’exploitation](#docker-application-manager-component-os-support)
+ [Exigences](#docker-application-manager-component-requirements)
+ [Dépendances](#docker-application-manager-component-dependencies)
+ [Configuration](#docker-application-manager-component-configuration)
+ [Fichier journal local](#docker-application-manager-component-log-file)
+ [Journal des modifications](#docker-application-manager-component-changelog)
+ [Consultez aussi](#docker-application-manager-component-see-also)

## Versions
<a name="docker-application-manager-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2.0.x

## Type
<a name="docker-application-manager-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="docker-application-manager-component-os-support"></a>

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

## Exigences
<a name="docker-application-manager-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ <a name="docker-engine-requirement"></a>[Docker Engine](https://docs.docker.com/engine/) 1.9.1 ou version ultérieure installé sur le périphérique principal de Greengrass. La version 20.10 est la dernière version vérifiée pour fonctionner avec le logiciel AWS IoT Greengrass Core. Vous devez installer Docker directement sur le périphérique principal avant de déployer des composants qui exécutent des conteneurs Docker.
+ <a name="docker-daemon-requirement"></a>Le daemon Docker a démarré et s'est exécuté sur le périphérique principal avant que vous ne déployiez ce composant. 
+ Images Docker stockées dans l'une des sources d'images prises en charge suivantes :
  + Référentiels d'images publics et privés dans Amazon Elastic Container Registry (Amazon ECR)
  + Référentiel Docker Hub public
  + Registre public de confiance Docker
+ Images Docker incluses sous forme d'artefacts dans vos composants de conteneur Docker personnalisés. Utilisez les formats d'URI suivants pour spécifier vos images Docker :<a name="docker-image-artifact-uri"></a>
  + Image Amazon ECR privée : `docker:account-id.dkr.ecr.region.amazonaws.com/repository/image[:tag|@digest]`
  + Image Amazon ECR publique : `docker:public.ecr.aws/repository/image[:tag|@digest]`
  + Image publique du Docker Hub : `docker:name[:tag|@digest]`

  Pour de plus amples informations, veuillez consulter [Exécuter un conteneur Docker](run-docker-container.md).
**Note**  
Si vous ne spécifiez pas de balise d'image ou de résumé d'image dans l'URI d'artefact d'une image, le gestionnaire d'applications Docker extrait la dernière version disponible de cette image lorsque vous déployez votre composant de conteneur Docker personnalisé. Pour garantir que tous vos appareils principaux exécutent la même version d'une image, nous vous recommandons d'inclure la balise d'image ou le résumé de l'image dans l'URI de l'artefact.
+ <a name="docker-user-permissions-requirement"></a>L'utilisateur du système qui exécute un composant de conteneur Docker doit disposer des autorisations root ou administrateur, ou vous devez configurer Docker pour l'exécuter en tant qu'utilisateur non root ou non administrateur.
  + Sur les appareils Linux, vous pouvez ajouter un utilisateur au `docker` groupe sans lequel vous pouvez appeler `docker` des commandes`sudo`.
  + Sur les appareils Windows, vous pouvez ajouter un utilisateur au `docker-users` groupe pour appeler des `docker` commandes sans privilèges d'administrateur.

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

  Pour ajouter `ggc_user` au `docker` groupe l'utilisateur non root que vous utilisez pour exécuter les composants du conteneur Docker, exécutez la commande suivante.

  ```
  sudo usermod -aG docker ggc_user
  ```

  Pour plus d'informations, consultez [Gérer Docker en tant qu'utilisateur non root](https://docs.docker.com/engine/install/linux-postinstall/#manage-docker-as-a-non-root-user).

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

  Pour ajouter `ggc_user` au `docker-users` groupe l'utilisateur que vous utilisez pour exécuter les composants du conteneur Docker, exécutez la commande suivante en tant qu'administrateur.

  ```
  net localgroup docker-users ggc_user /add
  ```

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

  Pour ajouter `ggc_user` au `docker-users` groupe l'utilisateur que vous utilisez pour exécuter les composants du conteneur Docker, exécutez la commande suivante en tant qu'administrateur.

  ```
  Add-LocalGroupMember -Group docker-users -Member ggc_user
  ```

------
+ <a name="docker-proxy-requirement"></a>Si vous [configurez le logiciel AWS IoT Greengrass Core pour utiliser un proxy réseau](configure-greengrass-core-v2.md#configure-alpn-network-proxy), vous devez [configurer Docker pour qu'il utilise le même serveur proxy](https://docs.docker.com/network/proxy/).
+ Si vos images Docker sont stockées dans un registre privé Amazon ECR, vous devez inclure le composant du service d'échange de jetons en tant que dépendance dans le composant conteneur Docker. En outre, le [rôle d'appareil Greengrass](device-service-role.md) doit autoriser les `ecr:GetDownloadUrlForLayer` actions `ecr:GetAuthorizationToken``ecr:BatchGetImage`, et, comme indiqué dans l'exemple de politique IAM suivant.

------
#### [ JSON ]

****  

  ```
  {
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
        "Action": [
          "ecr:GetAuthorizationToken",
          "ecr:BatchGetImage",
          "ecr:GetDownloadUrlForLayer"
        ],
        "Resource": [
          "*"
        ],
        "Effect": "Allow"
      }
    ]
  }
  ```

------

  ```
  ```
+ Le composant du gestionnaire d'applications docker est compatible avec l'exécution dans un VPC. Pour déployer ce composant dans un VPC, les éléments suivants sont requis.
  + Le composant du gestionnaire d'applications docker doit disposer d'une connectivité pour télécharger des images. Par exemple, si vous utilisez l'ECR, vous devez être connecté aux points de terminaison suivants.
    + `*.dkr.ecr.region.amazonaws.com`(point de terminaison VPC) `com.amazonaws.region.ecr.dkr`
    + `api.ecr.region.amazonaws.com`(point de terminaison VPC) `com.amazonaws.region.ecr.api`

### Points de terminaison et ports
<a name="docker-application-manager-component-endpoints"></a>

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](allow-device-traffic.md).


| Endpoint |  Port | Obligatoire | Description | 
| --- | --- | --- | --- | 
|  `ecr.region.amazonaws.com`  | 443 | Non |  Obligatoire si vous téléchargez des images Docker depuis Amazon ECR.  | 
|  `hub.docker.com` `registry.hub.docker.com/v1`  | 443 | Non |  Obligatoire si vous téléchargez des images Docker depuis Docker Hub.  | 

## Dépendances
<a name="docker-application-manager-component-dependencies"></a>

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](#docker-application-manager-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.0.15 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,1,0 <2,17,0 | Flexible | 

------
#### [ 2.0.14 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,10 <2,16,0 | Flexible | 

------
#### [ 2.0.13 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,10 <2,15,0 | Flexible | 

------
#### [ 2.0.12 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,10 <2,14.0 | Flexible | 

------
#### [ 2.0.11 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,1,0 <2,13,0 | Flexible | 

------
#### [ 2.0.10 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,1,0 <2,12,0 | Flexible | 

------
#### [ 2.0.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,10 <2,11,0 | Flexible | 

------
#### [ 2.0.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,10 <2,1,0 | Flexible | 

------
#### [ 2.0.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,10 <2,9,0 | Flexible | 

------
#### [ 2.0.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,10 <2,8,0 | Flexible | 

------
#### [ 2.0.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,10 <2,7,0 | Flexible | 

------
#### [ 2.0.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,10 <2,6,0 | Flexible | 

------
#### [ 2.0.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,10 <2,5,0 | Flexible | 

------
#### [ 2.0.2 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,10 <2,4,0 | Flexible | 

------
#### [ 2.0.1 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,10 <2,3,0 | Flexible | 

------
#### [ 2.0.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,10 <2,2,0 | Flexible | 

------

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="docker-application-manager-component-configuration"></a>

Ce composant ne possède aucun paramètre de configuration.

## Fichier journal local
<a name="docker-application-manager-component-log-file"></a>

Ce composant utilise le même fichier journal que le composant [Greengrass nucleus](greengrass-nucleus-component.md).

------
#### [ 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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par 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
<a name="docker-application-manager-component-changelog"></a>

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


|   **Version**   |   **Modifications**   | 
| --- | --- | 
|  2,0,16  |  Met à jour la version du composant pour la version 2.17.0 de Greengrass Nucleus.  | 
|  2,0,15  |  Version mise à jour pour la version 2.16.0 de Greengrass Nucleus.  | 
|  2,0,14  | Version mise à jour pour la version 2.15.0 de Greengrass Nucleus. | 
|  2.0.13  | Version mise à jour pour la version 2.14.0 de Greengrass Nucleus. | 
|  2,0,12  | Version mise à jour pour la version 2.13.0 de Greengrass Nucleus. | 
|  2.0.11  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  2.0.10  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  2.0.9  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. | 
|  2.0.8  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  2.0.7  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  2.0.6  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  2.0.5  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  2.0.4  |  Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.  | 
|  2.0.3  |  Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.  | 
|  2.0.2  |  Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.  | 
|  2.0.1  |  Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.  | 
|  2.0.0  |  Première version.  | 

## Consultez aussi
<a name="docker-application-manager-component-see-also"></a>
+  [Exécuter un conteneur Docker](run-docker-container.md) 

# Connecteur Edge pour Kinesis Video Streams
<a name="kvs-edge-connector-component"></a>

Le connecteur Edge pour le composant Kinesis Video Streams `aws.iot.EdgeConnectorForKVS` () lit les flux vidéo des caméras locales et publie les flux sur Kinesis Video Streams. Vous pouvez configurer ce composant pour lire les flux vidéo des caméras IP (Internet Protocol) à l'aide du protocole RTSP (Real Time Streaming Protocol). Vous pouvez ensuite configurer des tableaux de bord [sur Amazon Managed Grafana ou](https://docs.aws.amazon.com/grafana/latest/userguide/what-is-Amazon-Managed-Service-Grafana.html) sur des serveurs Grafana locaux pour surveiller et interagir avec les flux vidéo.

Vous pouvez intégrer ce composant AWS IoT TwinMaker pour afficher et contrôler les flux vidéo dans les tableaux de bord Grafana. AWS IoT TwinMaker est un AWS service qui vous permet de créer des jumeaux numériques opérationnels de systèmes physiques. Vous pouvez les utiliser AWS IoT TwinMaker pour visualiser les données provenant de capteurs, de caméras et d'applications d'entreprise afin de suivre vos usines physiques, vos bâtiments ou vos installations industrielles. Vous pouvez également utiliser ces données pour surveiller les opérations, diagnostiquer les erreurs et réparer les erreurs. Pour plus d'informations, voir [Qu'est-ce que c'est AWS IoT TwinMaker ?](https://docs.aws.amazon.com/iot-twinmaker/latest/guide/what-is-twinmaker.html) dans le *guide de AWS IoT TwinMaker l'utilisateur*.

Ce composant stocke sa configuration dans AWS IoT SiteWise un AWS service qui modélise et stocke les données industrielles. Dans AWS IoT SiteWise, *les actifs* représentent des objets tels que des appareils, des équipements ou des groupes d'autres objets. Pour configurer et utiliser ce composant, vous devez créer une AWS IoT SiteWise ressource pour chaque périphérique principal Greengrass et pour chaque caméra IP connectée à chaque périphérique principal. Chaque ressource possède des propriétés que vous configurez pour contrôler les fonctionnalités, telles que la diffusion en direct, le téléchargement à la demande et la mise en cache locale. Pour spécifier l'URL de chaque caméra, vous devez créer un secret AWS Secrets Manager contenant l'URL de la caméra. Si la caméra nécessite une authentification, vous devez également spécifier un nom d'utilisateur et un mot de passe dans l'URL. Ensuite, vous spécifiez ce secret dans une propriété d'actif pour la caméra IP.

Ce composant télécharge le flux vidéo de chaque caméra vers un flux vidéo Kinesis. Vous spécifiez le nom du flux vidéo Kinesis de destination dans la configuration des AWS IoT SiteWise ressources pour chaque caméra. Si le flux vidéo Kinesis n'existe pas, ce composant le crée pour vous.

AWS IoT TwinMaker fournit un script que vous pouvez exécuter pour créer ces AWS IoT SiteWise actifs et les secrets de Secrets Manager. Pour plus d'informations sur la création de ces ressources et sur l'installation, la configuration et l'utilisation de ce composant, consultez la section [Intégration AWS IoT TwinMaker vidéo](https://docs.aws.amazon.com/iot-twinmaker/latest/guide/video-integration.html) dans le *guide de AWS IoT TwinMaker l'utilisateur*.

**Note**  
Le connecteur Edge pour le composant Kinesis Video Streams est uniquement disponible dans les Régions AWS versions suivantes :  
USA Est (Virginie du Nord)
USA Ouest (Oregon)
Europe (Francfort)
Europe (Irlande)
Asie-Pacifique (Singapour)
Asie-Pacifique (Tokyo)
Asie-Pacifique (Séoul)
Asie-Pacifique (Sydney)
Asie-Pacifique (Mumbai)
Chine (Pékin)

**Topics**
+ [Versions](#kvs-edge-connector-component-versions)
+ [Type](#kvs-edge-connector-component-type)
+ [Système d’exploitation](#kvs-edge-connector-component-os-support)
+ [Exigences](#kvs-edge-connector-component-requirements)
+ [Dépendances](#kvs-edge-connector-component-dependencies)
+ [Configuration](#kvs-edge-connector-component-configuration)
+ [Licences](#kvs-edge-connector-component-licenses)
+ [Usage](#kvs-edge-connector-component-usage)
+ [Fichier journal local](#kvs-edge-connector-component-log-file)
+ [Journal des modifications](#kvs-edge-connector-component-changelog)
+ [Consultez aussi](#kvs-edge-connector-component-see-also)

## Versions
<a name="kvs-edge-connector-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 1,0 x

## Type
<a name="kvs-edge-connector-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="kvs-edge-connector-component-os-support"></a>

Ce composant ne peut être installé que sur les appareils principaux de Linux.

## Exigences
<a name="kvs-edge-connector-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ Vous ne pouvez déployer ce composant que sur des appareils à cœur unique, car la configuration du composant doit être unique pour chaque périphérique principal. Vous ne pouvez pas déployer ce composant sur des groupes d'appareils principaux.
+ [GStreamer](https://gstreamer.freedesktop.org)1.18.4 ou version ultérieure installée sur le périphérique principal. Pour plus d'informations, consultez la section [Installation GStreamer](https://gstreamer.freedesktop.org/documentation/installing/index.html?gi-language=c).

  Sur un appareil doté de`apt`, vous pouvez exécuter les commandes suivantes pour effectuer l'installation GStreamer.

  ```
  sudo apt install -y libgstreamer1.0-dev libgstreamer-plugins-base1.0-dev gstreamer1.0-plugins-base-apps
  sudo apt install -y gstreamer1.0-libav
  sudo apt install -y gstreamer1.0-plugins-bad gstreamer1.0-plugins-good gstreamer1.0-plugins-ugly gstreamer1.0-tools
  ```
+ Un AWS IoT SiteWise atout pour chaque appareil principal. Cet AWS IoT SiteWise actif représente le dispositif principal. Pour plus d'informations sur la création de cette ressource, consultez la section [Intégration AWS IoT TwinMaker vidéo](https://docs.aws.amazon.com/iot-twinmaker/latest/guide/video-integration.html) dans le *guide de AWS IoT TwinMaker l'utilisateur*.
+ Un AWS IoT SiteWise atout pour chaque caméra IP que vous connectez à chaque appareil principal. Ces AWS IoT SiteWise actifs représentent les caméras qui diffusent des vidéos sur chaque appareil principal. La ressource de chaque caméra doit être associée à la ressource du périphérique principal qui se connecte à la caméra. Les actifs de caméra possèdent des propriétés que vous pouvez configurer pour spécifier un flux vidéo Kinesis, un secret d'authentification et des paramètres de diffusion vidéo. Pour plus d'informations sur la création et la configuration des éléments de caméra, consultez la section [Intégration AWS IoT TwinMaker vidéo](https://docs.aws.amazon.com/iot-twinmaker/latest/guide/video-integration.html) dans le *guide de AWS IoT TwinMaker l'utilisateur*.
+ Un AWS Secrets Manager secret pour chaque caméra IP. Ce secret doit définir une paire clé-valeur, où se trouve la clé et la valeur est l'URL de la caméra. `RTSPStreamUrl` Si la caméra nécessite une authentification, incluez le nom d'utilisateur et le mot de passe dans cette URL. Vous pouvez utiliser un script pour créer un secret lorsque vous créez les ressources requises par ce composant. Pour plus d'informations, consultez la section [Intégration AWS IoT TwinMaker vidéo](https://docs.aws.amazon.com/iot-twinmaker/latest/guide/video-integration.html) dans le *guide de AWS IoT TwinMaker l'utilisateur*.

  Vous pouvez également utiliser la console et l'API Secrets Manager pour créer des secrets supplémentaires. Pour plus d'informations, voir [Création d'un secret](https://docs.aws.amazon.com/secretsmanager/latest/userguide/manage_create-basic-secret.html) dans le *guide de AWS Secrets Manager l'utilisateur*.
+ Le [rôle d'échange de jetons Greengrass](device-service-role.md) doit autoriser les actions suivantes AWS Secrets Manager AWS IoT SiteWise, ainsi que les actions Kinesis Video Streams, comme illustré dans l'exemple de politique IAM suivant.
**Note**  
Cet exemple de politique permet au périphérique d'obtenir la valeur des secrets nommés **IPCamera1Url** et**IPCamera2Url**. Lorsque vous configurez chaque caméra IP, vous spécifiez un secret contenant l'URL de cette caméra. Si la caméra nécessite une authentification, vous devez également spécifier un nom d'utilisateur et un mot de passe dans l'URL. Le rôle d'échange de jetons du périphérique principal doit permettre l'accès au secret pour que chaque caméra IP puisse se connecter.

------
#### [ JSON ]

****  

  ```
  {
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
        "Action": [
          "secretsmanager:GetSecretValue"
        ],
        "Effect": "Allow",
        "Resource": [
        "arn:aws:secretsmanager:us-east-1:123456789012:secret:IPCamera1Url",
    "arn:aws:secretsmanager:us-east-1:123456789012:secret:IPCamera2Url"
        ]
      },
      {
        "Action": [
          "iotsitewise:BatchPutAssetPropertyValue",
          "iotsitewise:DescribeAsset",
          "iotsitewise:DescribeAssetModel",
          "iotsitewise:DescribeAssetProperty",
          "iotsitewise:GetAssetPropertyValue",
          "iotsitewise:ListAssetRelationships",
          "iotsitewise:ListAssets",
          "iotsitewise:ListAssociatedAssets",
          "kinesisvideo:CreateStream",
          "kinesisvideo:DescribeStream",
          "kinesisvideo:GetDataEndpoint",
          "kinesisvideo:PutMedia",
          "kinesisvideo:TagStream"
        ],
        "Effect": "Allow",
        "Resource": [
          "*"
        ]
      }
    ]
  }
  ```

------
**Note**  
Si vous utilisez une AWS Key Management Service clé gérée par le client pour chiffrer des secrets, le rôle de l'appareil doit également autoriser l'`kms:Decrypt`action.

### Points de terminaison et ports
<a name="kvs-edge-connector-component-endpoints"></a>

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](allow-device-traffic.md).


| Endpoint |  Port | Obligatoire | Description | 
| --- | --- | --- | --- | 
|  `kinesisvideo.region.amazonaws.com`  | 443 | Oui |  Téléchargez des données vers Kinesis Video Streams.  | 
|  `data.iotsitewise.region.amazonaws.com`  | 443 | Oui |  Publiez les métadonnées du flux vidéo sur AWS IoT SiteWise.  | 
|  `secretsmanager.region.amazonaws.com`  | 443 | Oui |  Téléchargez les secrets de l'URL de la caméra sur l'appareil principal.  | 

## Dépendances
<a name="kvs-edge-connector-component-dependencies"></a>

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](#kvs-edge-connector-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Service d'échange de jetons](token-exchange-service-component.md) | >=2,0,3 | Stricte | 
| [Gestionnaire de flux](stream-manager-component.md) | >=2,0,9 | Stricte | 

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="kvs-edge-connector-component-configuration"></a>

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

`SiteWiseAssetIdForHub`  
L'ID de la AWS IoT SiteWise ressource qui représente cet appareil principal. Pour plus d'informations sur la création de cette ressource et son utilisation pour interagir avec ce composant, consultez la section [Intégration AWS IoT TwinMaker vidéo](https://docs.aws.amazon.com/iot-twinmaker/latest/guide/video-integration.html) dans le *guide de AWS IoT TwinMaker l'utilisateur*.

**Example Exemple : mise à jour de la fusion de configurations**  

```
{
  "SiteWiseAssetIdForHub": "a1b2c3d4-5678-90ab-cdef-EXAMPLE11111"
}
```

## Licences
<a name="kvs-edge-connector-component-licenses"></a>

Ce composant inclut les logiciels/licences tiers suivants :
+ [Planificateur de tâches Quartz//Apache](http://www.quartz-scheduler.org/) License 2.0
+ [liaisons Java pour GStreamer 1.x/Licence publique](https://github.com/gstreamer-java/gst1-java-core) générale limitée GNU v3.0

## Usage
<a name="kvs-edge-connector-component-usage"></a>

Pour configurer et interagir avec ce composant, vous pouvez définir des propriétés sur les AWS IoT SiteWise ressources qui représentent le périphérique principal et les caméras IP auxquelles il se connecte. Vous pouvez également visualiser et interagir avec les flux vidéo dans les tableaux de bord Grafana via. AWS IoT TwinMaker Pour plus d'informations, consultez la section [Intégration AWS IoT TwinMaker vidéo](https://docs.aws.amazon.com/iot-twinmaker/latest/guide/video-integration.html) dans le *guide de AWS IoT TwinMaker l'utilisateur*.

## Fichier journal local
<a name="kvs-edge-connector-component-log-file"></a>

Ce composant utilise le fichier journal suivant.

```
/greengrass/v2/logs/aws.iot.EdgeConnectorForKVS.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. Remplacez `/greengrass/v2` par le chemin d'accès au dossier AWS IoT Greengrass racine.

  ```
  sudo tail -f /greengrass/v2/logs/aws.iot.EdgeConnectorForKVS.log
  ```

## Journal des modifications
<a name="kvs-edge-connector-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  1.0.5  |  Correction et amélioration de bogues généraux  | 
|  1.0.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/kvs-edge-connector-component.html)  | 
|  1.0.3  |  Correction et amélioration de bogues généraux  | 
|  1.0.1  |  Correction et amélioration de bogues généraux  | 
|  1.0.0  |  Première version.  | 

## Consultez aussi
<a name="kvs-edge-connector-component-see-also"></a>
+ [Qu'est-ce que c'est AWS IoT TwinMaker ?](https://docs.aws.amazon.com/iot-twinmaker/latest/guide/what-is-twinmaker.html) dans le *guide de AWS IoT TwinMaker l'utilisateur*
+ [AWS IoT TwinMaker intégration vidéo](https://docs.aws.amazon.com/iot-twinmaker/latest/guide/video-integration.html) dans le *guide de AWS IoT TwinMaker l'utilisateur*
+ [Qu'est-ce que c'est AWS IoT SiteWise ?](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/what-is-sitewise.html) dans le *guide de AWS IoT SiteWise l'utilisateur*
+ [Mise à jour des valeurs d'attribut](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/update-attribute-values.html) dans le *guide de AWS IoT SiteWise l'utilisateur*
+ [Qu'est-ce que AWS Secrets Manager ?](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html) dans le *Guide de l'utilisateur AWS Secrets Manager *
+ [Création et gestion de secrets](https://docs.aws.amazon.com/secretsmanager/latest/userguide/managing-secrets.html) dans le *guide de AWS Secrets Manager l'utilisateur*

# Greengrass CLI
<a name="greengrass-cli-component"></a>

Le composant Greengrass CLI (`aws.greengrass.Cli`) fournit une interface de ligne de commande locale que vous pouvez utiliser sur les appareils principaux pour développer et déboguer des composants localement. La CLI Greengrass vous permet de créer des déploiements locaux et de redémarrer des composants sur le périphérique principal, par exemple.

Vous pouvez installer ce composant lors de l'installation du logiciel AWS IoT Greengrass Core. Pour de plus amples informations, veuillez consulter [Tutoriel : Débuter avec AWS IoT Greengrass V2](getting-started.md).

**Important**  
 <a name="local-dev-tools-production-environment-warning"></a>Nous vous recommandons d'utiliser ce composant uniquement dans les environnements de développement, et non dans les environnements de production. Ce composant permet d'accéder à des informations et à des opérations dont vous n'avez généralement pas besoin dans un environnement de production. Respectez le principe du moindre privilège en déployant ce composant uniquement sur les appareils principaux là où vous en avez besoin. 

Après avoir installé ce composant, exécutez la commande suivante pour consulter sa documentation d'aide. Lorsque ce composant est installé, il ajoute un lien symbolique `greengrass-cli` dans le `/greengrass/v2/bin` dossier. Vous pouvez exécuter la CLI Greengrass à partir de ce chemin ou l'ajouter à votre variable d'`PATH`environnement pour l'exécuter `greengrass-cli` sans son chemin absolu.

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

```
/greengrass/v2/bin/greengrass-cli help
```

------
#### [ Windows ]

```
C:\greengrass\v2\bin\greengrass-cli help
```

------

La commande suivante redémarre un composant nommé`com.example.HelloWorld`, par exemple.

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

```
sudo /greengrass/v2/bin/greengrass-cli component restart --names "com.example.HelloWorld"
```

------
#### [ Windows ]

```
C:\greengrass\v2\bin\greengrass-cli component restart --names "com.example.HelloWorld"
```

------

Pour de plus amples informations, veuillez consulter [Interface de ligne de commande Greengrass](gg-cli.md).

**Topics**
+ [Versions](#greengrass-cli-component-versions)
+ [Type](#greengrass-cli-component-type)
+ [Système d’exploitation](#greengrass-cli-component-os-support)
+ [Exigences](#greengrass-cli-component-requirements)
+ [Dépendances](#greengrass-cli-component-dependencies)
+ [Configuration](#greengrass-cli-component-configuration)
+ [Fichier journal local](#greengrass-cli-component-log-file)
+ [Journal des modifications](#greengrass-cli-component-changelog)

## Versions
<a name="greengrass-cli-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2,17x
+ 2,16.x
+ 2,15.x
+ 2,14.x
+ 2,13.x
+ 2,12. x
+ 2,11.x
+ 2.10.x
+ 2,9. x
+ 2,8. x
+ 2.7.x
+ 2.6.x
+ 2,5.x
+ 2.4.x
+ 2.3.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Type
<a name="greengrass-cli-component-type"></a>

<a name="public-component-type-plugin-para1"></a>Ce composant est un composant de plugin (`aws.greengrass.plugin`). Le [noyau Greengrass](greengrass-nucleus-component.md) 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.

<a name="public-component-type-plugin-para2"></a>Ce composant utilise le même fichier journal que le noyau Greengrass. Pour de plus amples informations, veuillez consulter [AWS IoT Greengrass Journaux de surveillance](monitor-logs.md).

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="greengrass-cli-component-os-support"></a>

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

## Exigences
<a name="greengrass-cli-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ <a name="greengrass-cli-authorization-requirement"></a>Vous devez être autorisé à utiliser la CLI Greengrass pour interagir avec le logiciel AWS IoT Greengrass principal. Pour utiliser la CLI Greengrass, effectuez l'une des opérations suivantes :
  + Utilisez l'utilisateur du système qui exécute le logiciel AWS IoT Greengrass Core.
  + Utilisez un utilisateur doté d'autorisations root ou administratives. Sur les appareils principaux de Linux, vous pouvez l'utiliser `sudo` pour obtenir des autorisations root.
  + Utilisez un utilisateur système appartenant à un groupe que vous spécifiez dans les paramètres de `AuthorizedWindowsGroups` configuration `AuthorizedPosixGroups` ou lorsque vous déployez le composant. Pour plus d'informations, consultez la section Configuration des [composants de la CLI Greengrass](#greengrass-cli-component-configuration).
+ Le composant Greengrass CLI est compatible avec l'exécution dans un VPC.

## Dépendances
<a name="greengrass-cli-component-dependencies"></a>

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](#greengrass-cli-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.16.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,12,0 <2,17,0 | Flexible | 

------
#### [ 2.15.1 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,12,0 <2,16,0 | Flexible | 

------
#### [ 2.15.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,12,0 <2,16,0 | Flexible | 

------
#### [ 2.14.0 – 2.14.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,12,0 <2,15,0 | Flexible | 

------
#### [ 2.13.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,12,0 <2,14,0 | Flexible | 

------
#### [ 2.12.0 – 2.12.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,12,0 <2,13,0 | Flexible | 

------
#### [ 2.11.0 – 2.11.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,11,0 <2,12,0 | Flexible | 

------
#### [ 2.10.0 – 2.10.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,0 <2,11,0 | Flexible | 

------
#### [ 2.9.0 – 2.9.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,0 <2,1,0 | Flexible | 

------
#### [ 2.8.0 – 2.8.1 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,0 <2,9,0 | Flexible | 

------
#### [ 2.7.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,0 <2,8,0 | Flexible | 

------
#### [ 2.6.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,0 <2,7,0 | Flexible | 

------
#### [ 2.5.0 – 2.5.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,0 <2,6,0 | Flexible | 

------
#### [ 2.4.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,10 <2,5,0 | Flexible | 

------
#### [ 2.3.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,10 <2,4,0 | Flexible | 

------
#### [ 2.2.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=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](greengrass-nucleus-component.md) | >=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](greengrass-nucleus-component.md) | >=2,0.0 <2,10 | Flexible | 

**Note**  
La version minimale compatible du noyau Greengrass correspond à la version patch du composant Greengrass CLI. 

------

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="greengrass-cli-component-configuration"></a>

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

------
#### [ 2.5.x - 2.14.x ]

`AuthorizedPosixGroups`  <a name="greengrass-cli-component-configuration-authorizedposixgroups"></a>
(Facultatif) Chaîne contenant une liste de groupes de systèmes séparés par des virgules. Vous autorisez ces groupes de systèmes à utiliser la CLI Greengrass pour interagir avec le logiciel AWS IoT Greengrass principal. Vous pouvez spécifier des noms de groupes ou des groupes IDs. Par exemple, `group1,1002,group3` autorise trois groupes de systèmes (`group1``1002`, et`group3`) à utiliser la CLI Greengrass.  
Si vous ne spécifiez aucun groupe à autoriser, vous pouvez utiliser la CLI Greengrass en tant qu'utilisateur root (`sudo`) ou en tant qu'utilisateur système qui exécute le logiciel AWS IoT Greengrass Core.

`AuthorizedWindowsGroups`  <a name="greengrass-cli-component-configuration-authorizedwindowsgroups"></a>
(Facultatif) Chaîne contenant une liste de groupes de systèmes séparés par des virgules. Vous autorisez ces groupes de systèmes à utiliser la CLI Greengrass pour interagir avec le logiciel AWS IoT Greengrass principal. Vous pouvez spécifier des noms de groupes ou des groupes IDs. Par exemple, `group1,1002,group3` autorise trois groupes de systèmes (`group1``1002`, et`group3`) à utiliser la CLI Greengrass.  
Si vous ne spécifiez aucun groupe à autoriser, vous pouvez utiliser la CLI Greengrass en tant qu'administrateur ou en tant qu'utilisateur du système qui exécute le logiciel AWS IoT Greengrass principal.

**Example Exemple : mise à jour de la fusion de configurations**  
L'exemple de configuration suivant indique d'autoriser trois groupes de systèmes POSIX (`group1`,`1002`, et`group3`) et deux groupes d'utilisateurs Windows (`Device Operators`et`QA Engineers`) à utiliser la CLI Greengrass.  

```
{
  "AuthorizedPosixGroups": "group1,1002,group3",
  "AuthorizedWindowsGroups": "Device Operators,QA Engineers"
}
```

------
#### [ 2.4.x - 2.0.x ]

`AuthorizedPosixGroups`  <a name="greengrass-cli-component-configuration-authorizedposixgroups"></a>
(Facultatif) Chaîne contenant une liste de groupes de systèmes séparés par des virgules. Vous autorisez ces groupes de systèmes à utiliser la CLI Greengrass pour interagir avec le logiciel AWS IoT Greengrass principal. Vous pouvez spécifier des noms de groupes ou des groupes IDs. Par exemple, `group1,1002,group3` autorise trois groupes de systèmes (`group1``1002`, et`group3`) à utiliser la CLI Greengrass.  
Si vous ne spécifiez aucun groupe à autoriser, vous pouvez utiliser la CLI Greengrass en tant qu'utilisateur root (`sudo`) ou en tant qu'utilisateur système qui exécute le logiciel AWS IoT Greengrass Core.

**Example Exemple : mise à jour de la fusion de configurations**  
L'exemple de configuration suivant indique d'autoriser trois groupes de systèmes (`group1`,`1002`, et`group3`) à utiliser la CLI Greengrass.  

```
{
  "AuthorizedPosixGroups": "group1,1002,group3"
}
```

------

## Fichier journal local
<a name="greengrass-cli-component-log-file"></a>

Ce composant utilise le même fichier journal que le composant [Greengrass nucleus](greengrass-nucleus-component.md).

------
#### [ 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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par 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
<a name="greengrass-cli-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.17.0  |  Met à jour la version du composant pour la version 2.17.0 de Greengrass Nucleus.  | 
|  2.16.1  |  Version mise à jour pour la version 2.16.1 de Greengrass Nucleus.  | 
|  2.16.0  |  Version mise à jour pour la version 2.16.0 de Greengrass Nucleus.  | 
|  2.15.1  |  Version mise à jour pour la version 2.15.1 de Greengrass Nucleus.  | 
|  2.15.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-cli-component.html)  | 
|  2.14.3  |  Version mise à jour pour la version 2.14.3 de Greengrass Nucleus.  | 
|  2.14.2  |  Version mise à jour pour la version 2.14.2 de Greengrass Nucleus.  | 
|  2.14.1  |  Version mise à jour pour la version 2.14.1 de Greengrass Nucleus.  | 
|  2.14.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-cli-component.html)  | 
|  2.13.0  |  Version mise à jour pour la version 2.13.0 de Greengrass Nucleus.  | 
|  2.12,6  |  Version mise à jour pour la version 2.12.6 de Greengrass Nucleus.  | 
|  2,1,5  |  Version mise à jour pour la version 2.12.5 de Greengrass Nucleus.  | 
|  2.12.4  |  Version mise à jour pour la version 2.12.4 de Greengrass Nucleus.  | 
|  2.12.3  |   Cette version n'est plus disponible. Les améliorations apportées à cette version sont disponibles dans les versions ultérieures de ce composant.  Version mise à jour pour la version 2.12.3 de Greengrass Nucleus.  | 
|  2.12.2  |  Version mise à jour pour la version 2.12.2 de Greengrass Nucleus.  | 
|  2.12.1  |  Version mise à jour pour la version 2.12.1 de Greengrass Nucleus.  | 
|  2.12.0  |  Version mise à jour pour la version 2.12.0 de Greengrass Nucleus.  | 
|  2.11.3  |  Version mise à jour pour la version 2.11.3 de Greengrass Nucleus.  | 
|  2.11.2  |  Version mise à jour pour la version 2.11.2 de Greengrass Nucleus.  | 
|  2.11.1  |  Version mise à jour pour la version 2.11.1 de Greengrass Nucleus.  | 
|  2.11.0  |  <a name="changelog-cli-2.11.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-cli-component.html)  | 
|  2.10.3  |  Version mise à jour pour la version 2.10.3 de Greengrass Nucleus.  | 
|  2.10.2  |  Version mise à jour pour la version 2.10.2 de Greengrass Nucleus.  | 
|  2.10.1  |  Version mise à jour pour la version 2.10.1 de Greengrass Nucleus.  | 
|  2.10.0  |  Version mise à jour pour la version 2.10.0 de Greengrass Nucleus.  | 
|  2,9,6  |  Version mise à jour pour la version 2.9.6 de Greengrass Nucleus.  | 
|  2.9.5  |  Version mise à jour pour la version 2.9.5 de Greengrass Nucleus.  | 
|  2.9.4  |  Version mise à jour pour la version 2.9.4 de Greengrass Nucleus.  | 
|  2.9.3  |  Version mise à jour pour la version 2.9.3 de Greengrass Nucleus.  | 
|  2.9.2  |  Version mise à jour pour la version 2.9.2 de Greengrass Nucleus.  | 
|  2.9.1  |  Version mise à jour pour la version 2.9.1 de Greengrass Nucleus.  | 
|  2.9.0  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  2.8.1  |  Version mise à jour pour la version 2.8.1 de Greengrass Nucleus.  | 
|  2.8.0  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  2.7.0  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  2.6.0  |  <a name="changelog-greengrass-cli-2.6.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-cli-component.html)  | 
|  2.5.6  |  Version mise à jour pour la version 2.5.6 de Greengrass Nucleus.  | 
|  2.5.5  |  Version mise à jour pour la version 2.5.5 de Greengrass Nucleus.  | 
|  2.5.4  |  Version mise à jour pour la version 2.5.4 de Greengrass Nucleus.  | 
|  2.5.3  |  Version mise à jour pour la version 2.5.3 de Greengrass Nucleus.  | 
|  2.5.2  |  Version mise à jour pour la version 2.5.2 de Greengrass Nucleus.  | 
|  2.5.1  |  Version mise à jour pour la version 2.5.1 de Greengrass Nucleus.  | 
|  2.5.0  |  <a name="changelog-greengrass-cli-2.5.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-cli-component.html)  | 
|  2.4.0  |  <a name="changelog-greengrass-cli-2.4.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/greengrass-cli-component.html)  | 
|  2.3.0  |  Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.  | 
|  2.2.0  |  Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.  | 
|  2.1.0  |  Version mise à jour pour la version 2.1.0 de Greengrass Nucleus.  | 
|  2.0.5  | Version mise à jour pour la version 2.0.5 de Greengrass Nucleus. | 
|  2.0.4  | Version mise à jour pour la version 2.0.4 de Greengrass Nucleus. | 
|  2.0.3  |  Première version.  | 

# Détecteur IP
<a name="ip-detector-component"></a>

Le composant du détecteur IP (`aws.greengrass.clientdevices.IPDetector`) effectue les opérations suivantes :
+ Surveille les informations de connectivité réseau de l'appareil central Greengrass. Ces informations incluent les points de terminaison réseau du périphérique principal et le port sur lequel fonctionne un courtier MQTT.
+ Met à jour les informations de connectivité de l'appareil principal dans le service AWS IoT Greengrass cloud.

Les appareils clients peuvent utiliser Greengrass Cloud Discovery pour récupérer les informations de connectivité des principaux appareils associés. Les appareils clients peuvent ensuite essayer de se connecter à chaque périphérique principal jusqu'à ce qu'ils se connectent correctement.

**Note**  <a name="client-device-component-context"></a>
Les appareils clients sont des appareils IoT locaux qui se connectent à un appareil principal de Greengrass pour envoyer des messages MQTT et des données à traiter. Pour de plus amples informations, veuillez consulter [Interagissez avec les appareils IoT locaux](interact-with-local-iot-devices.md).

Le composant du détecteur IP remplace les informations de connectivité existantes d'un appareil principal par les informations qu'il détecte. Comme ce composant supprime les informations existantes, vous pouvez soit utiliser le composant de détection IP, soit gérer manuellement les informations de connectivité.

**Topics**
+ [Versions](#ip-detector-component-versions)
+ [Type](#ip-detector-component-type)
+ [Système d’exploitation](#ip-detector-component-os-support)
+ [Exigences](#ip-detector-component-requirements)
+ [Dépendances](#ip-detector-component-dependencies)
+ [Configuration](#ip-detector-component-configuration)
+ [Fichier journal local](#ip-detector-component-log-file)
+ [Journal des modifications](#ip-detector-component-changelog)

## Versions
<a name="ip-detector-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Type
<a name="ip-detector-component-type"></a>

<a name="public-component-type-plugin-para1"></a>Ce composant est un composant de plugin (`aws.greengrass.plugin`). Le [noyau Greengrass](greengrass-nucleus-component.md) 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.

<a name="public-component-type-plugin-para2"></a>Ce composant utilise le même fichier journal que le noyau Greengrass. Pour de plus amples informations, veuillez consulter [AWS IoT Greengrass Journaux de surveillance](monitor-logs.md).

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="ip-detector-component-os-support"></a>

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

## Exigences
<a name="ip-detector-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ Le [rôle de service Greengrass](greengrass-service-role.md) doit être associé à vos autorisations Compte AWS et autoriser les autorisations`iot:GetThingShadow`. `iot:UpdateThingShadow`
+ La AWS IoT politique de l'appareil principal doit autoriser l'`greengrass:UpdateConnectivityInfo`autorisation. Pour plus d’informations, consultez [AWS IoT politiques relatives aux opérations du plan de données](device-auth.md#iot-policies) et [AWS IoT Politique minimale de prise en charge des appareils clients](device-auth.md#client-device-support-minimal-iot-policy).
+ Si vous configurez le composant broker MQTT du périphérique principal pour utiliser un port autre que le port par défaut 8883, vous devez utiliser le détecteur IP v2.1.0 ou version ultérieure. Configurez-le pour signaler le port sur lequel le broker opère.
+ Si vous avez une configuration réseau complexe, le composant du détecteur IP risque de ne pas être en mesure d'identifier les points de terminaison auxquels les appareils clients peuvent se connecter au périphérique principal. Si le composant du détecteur IP ne peut pas gérer les points de terminaison, vous devez plutôt gérer manuellement les points de terminaison de l'appareil principal. Par exemple, si le périphérique principal se trouve derrière un routeur qui lui transmet le port du broker MQTT, vous devez spécifier l'adresse IP du routeur comme point de terminaison pour le périphérique principal. Pour de plus amples informations, veuillez consulter [Gérez les principaux points de terminaison des appareils](manage-core-device-endpoints.md).
+ Le composant du détecteur IP est compatible pour fonctionner dans un VPC.

## Dépendances
<a name="ip-detector-component-dependencies"></a>

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](#ip-detector-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.2.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,17,0 | Flexible | 

------
#### [ 2.2.2 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,16,0 | Flexible | 

------
#### [ 2.2.1 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,15,0 | Flexible | 

------
#### [ 2.2.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,14.0 | Flexible | 

------
#### [ 2.1.8 – 2.1.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,13,0 | Flexible | 

------
#### [ 2.1.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,12,0 | Flexible | 

------
#### [ 2.1.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,11,0 | Flexible | 

------
#### [ 2.1.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,1,0 | Flexible | 

------
#### [ 2.1.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,9,0 | Flexible | 

------
#### [ 2.1.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,8,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](greengrass-nucleus-component.md) | >=2,2,0 <2,7,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](greengrass-nucleus-component.md) | >=2,2,0 <2,6,0 | Flexible | 

------
#### [ 2.1.0 and 2.0.2 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,5,0 | Flexible | 

------
#### [ 2.0.1 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,4,0 | Flexible | 

------
#### [ 2.0.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,3,0 | Flexible | 

------

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="ip-detector-component-configuration"></a>

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

------
#### [ 2.2.x ]

`defaultPort`  <a name="ip-detector-component-configuration-default-port"></a>
<a name="ip-detector-component-configuration-default-port-definition"></a>(Facultatif) Le port du broker MQTT à signaler lorsque ce composant détecte des adresses IP. Vous devez spécifier ce paramètre si vous configurez le broker MQTT pour utiliser un port différent du port par défaut 8883.  
Valeur par défaut : `8883`

`includeIPv4LoopbackAddrs`  <a name="ip-detector-component-configuration-include-ipv4-loopback-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv4-loopback-addrs-definition"></a>(Facultatif) Vous pouvez activer cette option pour détecter et signaler les adresses de IPv4 boucle. Il s'agit d'adresses IP, par exemple`localhost`, où un appareil peut communiquer avec lui-même. Utilisez cette option dans les environnements de test dans lesquels le périphérique principal et le périphérique client s'exécutent sur le même système.  
Valeur par défaut : `false`

`includeIPv4LinkLocalAddrs`  <a name="ip-detector-component-configuration-include-ipv4-link-local-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv4-link-local-addrs-definition"></a>(Facultatif) Vous pouvez activer cette option pour détecter et signaler les adresses IPv4 [locales liées aux liens](https://en.wikipedia.org/wiki/Link-local_address). Utilisez cette option si le réseau du périphérique principal ne dispose pas du protocole DHCP (Dynamic Host Configuration Protocol) ou d'adresses IP attribuées de manière statique.  
Valeur par défaut : `false`

`includeIPv6LoopbackAddrs`  <a name="ip-detector-component-configuration-include-ipv6-loopback-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv6-loopback-addrs-definition"></a>(Facultatif) Vous pouvez activer cette option pour détecter et signaler les adresses de IPv6 boucle. Il s'agit d'adresses IP, par exemple`localhost`, où un appareil peut communiquer avec lui-même. Utilisez cette option dans les environnements de test dans lesquels le périphérique principal et le périphérique client s'exécutent sur le même système. Vous devez `includeIPv4Addrs` définir sur `false` et `includeIPv6Addrs` sur `true` pour utiliser cette option.  
Valeur par défaut : `false`

`includeIPv6LinkLocalAddrs`  <a name="ip-detector-component-configuration-include-ipv6-link-local-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv6-link-local-addrs-definition"></a>(Facultatif) Vous pouvez activer cette option pour détecter et signaler les adresses IPv6 [locales liées aux liens](https://en.wikipedia.org/wiki/Link-local_address). Utilisez cette option si le réseau du périphérique principal ne dispose pas du protocole DHCP (Dynamic Host Configuration Protocol) ou d'adresses IP attribuées de manière statique. Vous devez `includeIPv4Addrs` définir sur `false` et `includeIPv6Addrs` sur `true` pour utiliser cette option.  
Valeur par défaut : `false`

`includeIPv4Addrs`  <a name="ip-detector-component-configuration-include-ipv4-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv4-addrs-definition"></a>(Facultatif) La valeur par défaut est définie sur`true`. Vous pouvez activer cette option pour publier IPv4 les adresses présentes sur l'appareil principal.  
Valeur par défaut : `true`

`includeIPv6Addrs`  <a name="ip-detector-component-configuration-include-ipv6-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv6-addrs-definition"></a>(Facultatif) Vous pouvez activer cette option pour publier IPv6 les adresses présentes sur l'appareil principal. Réglez `false` sur `includeIPv4Addrs` pour utiliser cette option.  
Valeur par défaut : `false`

------
#### [ 2.1.x ]

`defaultPort`  <a name="ip-detector-component-configuration-default-port"></a>
<a name="ip-detector-component-configuration-default-port-definition"></a>(Facultatif) Le port du broker MQTT à signaler lorsque ce composant détecte des adresses IP. Vous devez spécifier ce paramètre si vous configurez le broker MQTT pour utiliser un port différent du port par défaut 8883.  
Valeur par défaut : `8883`

`includeIPv4LoopbackAddrs`  <a name="ip-detector-component-configuration-include-ipv4-loopback-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv4-loopback-addrs-definition"></a>(Facultatif) Vous pouvez activer cette option pour détecter et signaler les adresses de IPv4 boucle. Il s'agit d'adresses IP, par exemple`localhost`, où un appareil peut communiquer avec lui-même. Utilisez cette option dans les environnements de test dans lesquels le périphérique principal et le périphérique client s'exécutent sur le même système.  
Valeur par défaut : `false`

`includeIPv4LinkLocalAddrs`  <a name="ip-detector-component-configuration-include-ipv4-link-local-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv4-link-local-addrs-definition"></a>(Facultatif) Vous pouvez activer cette option pour détecter et signaler les adresses IPv4 [locales liées aux liens](https://en.wikipedia.org/wiki/Link-local_address). Utilisez cette option si le réseau du périphérique principal ne dispose pas du protocole DHCP (Dynamic Host Configuration Protocol) ou d'adresses IP attribuées de manière statique.  
Valeur par défaut : `false`

------
#### [ 2.0.x ]

`includeIPv4LoopbackAddrs`  <a name="ip-detector-component-configuration-include-ipv4-loopback-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv4-loopback-addrs-definition"></a>(Facultatif) Vous pouvez activer cette option pour détecter et signaler les adresses de IPv4 boucle. Il s'agit d'adresses IP, par exemple`localhost`, où un appareil peut communiquer avec lui-même. Utilisez cette option dans les environnements de test dans lesquels le périphérique principal et le périphérique client s'exécutent sur le même système.  
Valeur par défaut : `false`

`includeIPv4LinkLocalAddrs`  <a name="ip-detector-component-configuration-include-ipv4-link-local-addrs"></a>
<a name="ip-detector-component-configuration-include-ipv4-link-local-addrs-definition"></a>(Facultatif) Vous pouvez activer cette option pour détecter et signaler les adresses IPv4 [locales liées aux liens](https://en.wikipedia.org/wiki/Link-local_address). Utilisez cette option si le réseau du périphérique principal ne dispose pas du protocole DHCP (Dynamic Host Configuration Protocol) ou d'adresses IP attribuées de manière statique.  
Valeur par défaut : `false`

------

## Fichier journal local
<a name="ip-detector-component-log-file"></a>

Ce composant utilise le même fichier journal que le composant [Greengrass nucleus](greengrass-nucleus-component.md).

------
#### [ 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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par 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
<a name="ip-detector-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.2.4  |  Met à jour la version du composant pour la version 2.17.0 de Greengrass Nucleus.  | 
|  2.2.3  |  Version mise à jour pour la version 2.16.0 de Greengrass Nucleus.  | 
|  2.2.2  | Version mise à jour pour la version 2.15.0 de Greengrass Nucleus. | 
|  2.2.1  | Version mise à jour pour la version 2.14.0 de Greengrass Nucleus. | 
|  2.2.0  | Version mise à jour pour la version 2.13.0 de Greengrass Nucleus. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/ip-detector-component.html)  | 
|  2.1.9  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/ip-detector-component.html)  | 
|  2.1.8  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  2.1.7  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  2.1.6  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. | 
|  2.1.5  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  2.1.4  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  2.1.3  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  2.1.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/ip-detector-component.html)  | 
|  2.1.1  |  Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/ip-detector-component.html)  | 
|  2.0.2  |  Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.  | 
|  2.0.1  |  Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.  | 
|  2.0.0  |  Première version.  | 

# Firehose
<a name="kinesis-firehose-component"></a>

Le composant Firehose (`aws.greengrass.KinesisFirehose`) publie des données via les flux de diffusion Amazon Data Firehose vers des destinations telles qu'Amazon S3, Amazon Redshift et Amazon Service. OpenSearch Pour plus d'informations, consultez [Qu'est-ce qu'Amazon Data Firehose ?](https://docs.aws.amazon.com/firehose/latest/dev/what-is-this-service.html) dans le manuel *Amazon Data Firehose Developer Guide*.

Pour publier sur un flux de diffusion Kinesis avec ce composant, publiez un message dans un sujet auquel ce composant est abonné. Par défaut, ce composant s'abonne aux rubriques de `kinesisfirehose/message` [publication/d'abonnement `kinesisfirehose/message/binary/#` locales.](ipc-publish-subscribe.md) Vous pouvez spécifier d'autres sujets, y compris les sujets AWS IoT Core MQTT, lorsque vous déployez ce composant.

**Note**  
Ce composant fournit des fonctionnalités similaires à celles du connecteur Firehose de la version 1. AWS IoT Greengrass Pour plus d'informations, consultez la section [Connecteur Firehose](https://docs.aws.amazon.com/greengrass/latest/developerguide/kinesis-firehose-connector.html) dans le Guide du *développeur de la AWS IoT Greengrass V1*.

**Topics**
+ [Versions](#kinesis-firehose-component-versions)
+ [Type](#kinesis-firehose-component-type)
+ [Système d’exploitation](#kinesis-firehose-component-os-support)
+ [Exigences](#kinesis-firehose-component-requirements)
+ [Dépendances](#kinesis-firehose-component-dependencies)
+ [Configuration](#kinesis-firehose-component-configuration)
+ [Données d’entrée](#kinesis-firehose-component-input-data)
+ [Données de sortie](#kinesis-firehose-component-output-data)
+ [Fichier journal local](#kinesis-firehose-component-log-file)
+ [Licences](#kinesis-firehose-component-licenses)
+ [Journal des modifications](#kinesis-firehose-component-changelog)
+ [Consultez aussi](#kinesis-firehose-component-see-also)

## Versions
<a name="kinesis-firehose-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2.1.x
+ 2.0.x

## Type
<a name="kinesis-firehose-component-type"></a>

<a name="public-component-type-lambda"></a>Ce <a name="public-component-type-lambda-phrase"></a>composant est un composant Lambda () `aws.greengrass.lambda`. [Le [noyau Greengrass](greengrass-nucleus-component.md) exécute la fonction Lambda de ce composant à l'aide du composant Lambda Launcher.](lambda-launcher-component.md)

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="kinesis-firehose-component-os-support"></a>

Ce composant ne peut être installé que sur les appareils principaux de Linux.

## Exigences
<a name="kinesis-firehose-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ <a name="core-device-lambda-function-requirements"></a>Votre appareil principal doit répondre aux exigences pour exécuter les fonctions Lambda. Si vous souhaitez que le périphérique principal exécute des fonctions Lambda conteneurisées, le périphérique doit répondre aux exigences requises. Pour de plus amples informations, veuillez consulter [Exigences relatives à la fonction Lambda](setting-up.md#greengrass-v2-lambda-requirements).
+ <a name="public-component-python3-requirement"></a>[Python](https://www.python.org/) version 3.7 installé sur le périphérique principal et ajouté à la variable d'environnement PATH.
+ Le [rôle d'appareil Greengrass](device-service-role.md) doit autoriser les `firehose:PutRecordBatch` actions `firehose:PutRecord` et, comme illustré dans l'exemple de politique IAM suivant.

------
#### [ JSON ]

****  

  ```
  {
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
        "Action": [
          "firehose:PutRecord",
          "firehose:PutRecordBatch"
        ],
        "Effect": "Allow",
        "Resource": [
          "arn:aws:firehose:us-east-1:123456789012:deliverystream/stream-name"
        ]
      }
    ]
  }
  ```

------

  Vous pouvez remplacer dynamiquement le flux de diffusion par défaut dans la charge utile du message d'entrée pour ce composant. Si votre application utilise cette fonctionnalité, la politique IAM doit inclure tous les flux cibles en tant que ressources. Vous pouvez octroyer un accès précis ou conditionnel aux ressources (par exemple, en utilisant un schéma d'attribution de nom avec caractère générique `*`).
+ <a name="connector-component-legacy-subscription-router-dependency"></a>Pour recevoir les données de sortie de ce composant, vous devez fusionner la mise à jour de configuration suivante pour l'[ancien composant routeur d'abonnement](legacy-subscription-router-component.md) (`aws.greengrass.LegacySubscriptionRouter`) lorsque vous déployez ce composant. Cette configuration indique le sujet dans lequel ce composant publie les réponses.

------
#### [ Legacy subscription router v2.1.x ]

  ```
  {
    "subscriptions": {
      "aws-greengrass-kinesisfirehose": {
        "id": "aws-greengrass-kinesisfirehose",
        "source": "component:aws.greengrass.KinesisFirehose",
        "subject": "kinesisfirehose/message/status",
        "target": "cloud"
      }
    }
  }
  ```

------
#### [ Legacy subscription router v2.0.x ]

  ```
  {
    "subscriptions": {
      "aws-greengrass-kinesisfirehose": {
        "id": "aws-greengrass-kinesisfirehose",
        "source": "arn:aws:lambda:region:aws:function:aws-greengrass-kinesisfirehose:version",
        "subject": "kinesisfirehose/message/status",
        "target": "cloud"
      }
    }
  }
  ```<a name="connector-component-legacy-subscription-router-dependency-replace"></a>
  + *region*Remplacez-le par Région AWS celui que vous utilisez.
  + *version*Remplacez-le par la version de la fonction Lambda exécutée par ce composant. Pour trouver la version de la fonction Lambda, vous devez consulter la recette de la version de ce composant que vous souhaitez déployer. Ouvrez la page de détails de ce composant dans la [AWS IoT Greengrass console](https://console.aws.amazon.com//greengrass) et recherchez la paire clé-valeur de la **fonction Lambda**. Cette paire clé-valeur contient le nom et la version de la fonction Lambda.

**Important**  <a name="connector-component-legacy-subscription-router-dependency-note"></a>
Vous devez mettre à jour la version de la fonction Lambda sur l'ancien routeur d'abonnement chaque fois que vous déployez ce composant. Cela garantit que vous utilisez la bonne version de la fonction Lambda pour la version du composant que vous déployez.

------

  <a name="connector-component-create-deployments"></a>Pour de plus amples informations, veuillez consulter [Créer des déploiements](create-deployments.md).
+ Le composant Firehose est compatible pour s'exécuter dans un VPC. Pour déployer ce composant dans un VPC, les éléments suivants sont requis.
  + Le composant Firehose doit disposer d'une connectivité `firehose.region.amazonaws.com` dont le point de terminaison VPC est de. `com.amazonaws.region.kinesis-firehose`

### Points de terminaison et ports
<a name="kinesis-firehose-component-endpoints"></a>

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](allow-device-traffic.md).


| Endpoint |  Port | Obligatoire | Description | 
| --- | --- | --- | --- | 
|  `firehose.region.amazonaws.com`  | 443 | Oui |  Téléchargez les données vers Firehose.  | 

## Dépendances
<a name="kinesis-firehose-component-dependencies"></a>

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](#kinesis-firehose-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.1.10 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,16,0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.1.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,15.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.1.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,14.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.1.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,13,0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.1.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,12.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.1.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,11.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.1.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,1,0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.1.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,9.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) | >=2,0.0 <2,8.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) | >=2,0.0 <2,7.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.8 - 2.1.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,6.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,5.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,4.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,3.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,2.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,3 <2,10  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | >=10,0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | >=10,0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | >=10,0  | Stricte | 

------

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="kinesis-firehose-component-configuration"></a>

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

**Note**  <a name="connector-component-lambda-parameters"></a>
La configuration par défaut de ce composant inclut les paramètres de la fonction Lambda. Nous vous recommandons de modifier uniquement les paramètres suivants pour configurer ce composant sur vos appareils.

`lambdaParams`  
Objet contenant les paramètres de la fonction Lambda de ce composant. Cet objet contient les informations suivantes :    
`EnvironmentVariables`  
Objet contenant les paramètres de la fonction Lambda. Cet objet contient les informations suivantes :    
`DEFAULT_DELIVERY_STREAM_ARN`  
L'ARN du flux de diffusion Firehose par défaut où le composant envoie des données. Vous pouvez remplacer le flux de destination par la `delivery_stream_arn` propriété dans la charge utile du message d'entrée.  
Le rôle principal de l'appareil doit autoriser les actions requises sur tous les flux de diffusion cibles. Pour de plus amples informations, veuillez consulter [Exigences](#kinesis-firehose-component-requirements).  
`PUBLISH_INTERVAL`  
(Facultatif) Le nombre maximal de secondes à attendre avant que le composant publie des données par lots dans Firehose. Pour configurer le composant afin qu'il publie les métriques au fur et à mesure qu'il les reçoit, c'est-à-dire sans traitement par lots, spécifiez`0`.  
Cette valeur peut être d'au plus 900 secondes.  
Par défaut : 10 secondes  
`DELIVERY_STREAM_QUEUE_SIZE`  
(Facultatif) Nombre maximal d'enregistrements à conserver en mémoire avant que le composant rejette de nouveaux enregistrements pour le même flux de diffusion.  
Cette valeur doit être d'au moins 2 000 enregistrements.  
Par défaut : 5 000 enregistrements

`containerMode`  <a name="connector-component-container-mode-parameter"></a>
(Facultatif) Mode de conteneurisation de ce composant. Sélectionnez l’une des options suivantes :  <a name="lambda-function-component-container-mode-parameter"></a>
+ `NoContainer`— Le composant ne s'exécute pas dans un environnement d'exécution isolé.
+ `GreengrassContainer`— Le composant s'exécute dans un environnement d'exécution isolé à l'intérieur du AWS IoT Greengrass conteneur.
Valeur par défaut : `GreengrassContainer`

`containerParams`  
<a name="connector-component-container-params-description"></a>(Facultatif) Objet contenant les paramètres du conteneur pour ce composant. Le composant utilise ces paramètres si vous le spécifiez `GreengrassContainer` pour`containerMode`.  
Cet objet contient les informations suivantes :    
`memorySize`  
<a name="connector-component-container-params-memory-size-description"></a>(Facultatif) La quantité de mémoire (en kilo-octets) à allouer au composant.  
La valeur par défaut est de 64 Mo (65 535 Ko).

`pubsubTopics`  <a name="connector-component-pubsub-topics-parameter"></a>
(Facultatif) Objet contenant les rubriques auxquelles le composant s'abonne pour recevoir des messages. Vous pouvez spécifier chaque sujet et indiquer si le composant est abonné à des sujets MQTT provenant de sujets locaux AWS IoT Core ou locaux publish/subscribe .  
Cet objet contient les informations suivantes :    
`0`— Il s'agit d'un index de tableau sous forme de chaîne.  
Un objet qui contient les informations suivantes :    
`type`  
(Facultatif) Type de publish/subscribe messagerie utilisé par ce composant pour s'abonner aux messages. Sélectionnez l’une des options suivantes :  
+ `PUB_SUB` – Abonnez-vous aux messages locaux de publication/abonnement. Si vous choisissez cette option, le sujet ne peut pas contenir de caractères génériques MQTT. Pour plus d'informations sur la façon d'envoyer des messages à partir d'un composant personnalisé lorsque vous spécifiez cette option, consultez[Publier/souscrire des messages locaux](ipc-publish-subscribe.md).
+ `IOT_CORE`— Abonnez-vous aux messages AWS IoT Core MQTT. Si vous choisissez cette option, le sujet peut contenir des caractères génériques MQTT. Pour plus d'informations sur la façon d'envoyer des messages à partir de composants personnalisés lorsque vous spécifiez cette option, consultez[Publier/souscrire AWS IoT Core des messages MQTT](ipc-iot-core-mqtt.md).
Valeur par défaut : `PUB_SUB`  
`topic`  
(Facultatif) Rubrique à laquelle le composant s'abonne pour recevoir des messages. Si vous spécifiez `IotCore` pour`type`, vous pouvez utiliser des caractères génériques MQTT (`+`et`#`) dans cette rubrique.

**Example Exemple : mise à jour de fusion de configuration (mode conteneur)**  

```
{
  "lambdaExecutionParameters": {
    "EnvironmentVariables": {
      "DEFAULT_DELIVERY_STREAM_ARN": "arn:aws:firehose:us-west-2:123456789012:deliverystream/mystream"
    }
  },
  "containerMode": "GreengrassContainer"
}
```

**Example Exemple : mise à jour de fusion de configuration (pas de mode conteneur)**  

```
{
  "lambdaExecutionParameters": {
    "EnvironmentVariables": {
      "DEFAULT_DELIVERY_STREAM_ARN": "arn:aws:firehose:us-west-2:123456789012:deliverystream/mystream"
    }
  },
  "containerMode": "NoContainer"
}
```

## Données d’entrée
<a name="kinesis-firehose-component-input-data"></a>

Ce composant accepte le contenu du flux sur les sujets suivants et envoie le contenu au flux de diffusion cible. Le composant accepte deux types de données d'entrée :
+ les données JSON dans la rubrique `kinesisfirehose/message`.
+ les données binaires dans la rubrique `kinesisfirehose/message/binary/#`.

**Rubrique par défaut pour les données JSON (publication/abonnement locaux) :** `kinesisfirehose/message`  
<a name="connector-component-input-properties"></a>Le message accepte les propriétés suivantes. Les messages d'entrée doivent être au format JSON.    
`request`  
Données à envoyer au flux de diffusion et au flux de diffusion cible, s'il est différent du flux par défaut.  
Type : `object` qui contient les informations suivantes :    
`data`  
Données à envoyer au flux de diffusion.  
Type : `string`  
`delivery_stream_arn`  
(Facultatif) L'ARN du flux de diffusion Firehose cible. Spécifiez cette propriété pour remplacer le flux de diffusion par défaut.  
Type : `string`  
`id`  <a name="connector-component-input-property-id"></a>
ID arbitraire de la demande. Utilisez cette propriété pour associer une demande d'entrée à une réponse de sortie. Lorsque vous spécifiez cette propriété, le composant définit la `id` propriété de l'objet de réponse sur cette valeur.  
Type : `string`

**Example Exemple d'entrée**  

```
{
  "request": {
    "delivery_stream_arn": "arn:aws:firehose:region:account-id:deliverystream/stream2-name",
    "data": "Data to send to the delivery stream."
  },
  "id": "request123"
}
```

**Rubrique par défaut pour les données binaires (publication/abonnement locaux) :** `kinesisfirehose/message/binary/#`  
Utilisez cette rubrique pour envoyer un message qui contient des données binaires. Le composant n'analyse pas les données binaires. Le composant diffuse les données telles quelles.  
Pour mapper la demande d'entrée à une réponse de sortie, remplacez le caractère générique `#` dans la rubrique du message par un ID de demande arbitraire. Par exemple, si vous publiez un message dans `kinesisfirehose/message/binary/request123`, la propriété `id` dans l'objet de réponse est définie sur `request123`.  
Si vous ne souhaitez pas mapper une demande à une réponse, vous pouvez publier vos messages dans `kinesisfirehose/message/binary/`. Assurez-vous d'inclure la barre oblique finale ()`/`.

## Données de sortie
<a name="kinesis-firehose-component-output-data"></a>

 <a name="connector-component-output-data"></a>Ce composant publie par défaut les réponses sous forme de données de sortie sur le sujet MQTT suivant. Vous devez spécifier cette rubrique `subject` dans la configuration de l'[ancien composant routeur d'abonnement](legacy-subscription-router-component.md). Pour plus d'informations sur la façon de s'abonner à des messages sur ce sujet dans vos composants personnalisés, consultez[Publier/souscrire AWS IoT Core des messages MQTT](ipc-iot-core-mqtt.md). 

**Rubrique par défaut (AWS IoT Core MQTT) :** `kinesisfirehose/message/status`

**Example Exemple de sortie**  
La réponse contient le statut de chaque enregistrement de données envoyé dans le lot.  

```
{
  "response": [
    {
      "ErrorCode": "error",
      "ErrorMessage": "test error",
      "id": "request123",
      "status": "fail"
    },
    {
      "firehose_record_id": "xyz2",
      "id": "request456",
      "status": "success"
    },
    {
      "firehose_record_id": "xyz3",
      "id": "request890",
      "status": "success"
    }
  ]
}
```

**Note**  <a name="connector-component-retryable-error"></a>
Si le composant détecte une erreur qui peut être réessayée, telle qu'une erreur de connexion, il réessaie de publier dans le lot suivant.

## Fichier journal local
<a name="kinesis-firehose-component-log-file"></a>

Ce composant utilise le fichier journal suivant.

```
/greengrass/v2/logs/aws.greengrass.KinesisFirehose.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. Remplacez `/greengrass/v2` par le chemin d'accès au dossier AWS IoT Greengrass racine.

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

## Licences
<a name="kinesis-firehose-component-licenses"></a>

Ce composant inclut les logiciels/licences tiers suivants :<a name="boto-3-licenses"></a>
+ [AWS SDK pour Python (Boto3)](https://pypi.org/project/boto3/)/Licence Apache 2.0
+ [botocore](https://pypi.org/project/botocore/)/Licence Apache 2.0
+ [dateutil](https://pypi.org/project/python-dateutil/1.4/)/Licence PSF
+ [docutils](https://pypi.org/project/docutils/)/Licence BSD, licence GPL (General Public License) GNU, licence Python Software Foundation, domaine public
+ [jmespath](https://pypi.org/project/jmespath/)/Licence MIT
+ [s3transfer](https://pypi.org/project/s3transfer/)/Licence Apache 2.0
+ [urllib3](https://pypi.org/project/urllib3/)/Licence MIT

<a name="component-core-software-license"></a>Ce composant est publié dans le cadre du contrat de [licence logicielle Greengrass Core](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf).

## Journal des modifications
<a name="kinesis-firehose-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.1.10  | Version mise à jour pour la version 2.15.0 de Greengrass Nucleus. | 
|  2.1.9  | Version mise à jour pour la version 2.14.0 de Greengrass Nucleus. | 
|  2.1.8  | Version mise à jour pour la version 2.13.0 de Greengrass Nucleus. | 
|  2.1.7  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  2.1.6  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  2.1.5  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. | 
|  2.1.4  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  2.1.3  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  2.1.2  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  2.1.1  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/kinesis-firehose-component.html)  | 
|  2.0.8  |  Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.  | 
|  2.0.7  |  Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.  | 
|  2.0.6  |  Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.  | 
|  2.0.5  |  Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.  | 
|  2.0.4  |  Version mise à jour pour la version 2.1.0 de Greengrass Nucleus.  | 
|  2.0.3  |  Première version.  | 

## Consultez aussi
<a name="kinesis-firehose-component-see-also"></a>
+ [Qu'est-ce qu'Amazon Data Firehose ?](https://docs.aws.amazon.com/firehose/latest/dev/what-is-this-service.html) dans le guide du *développeur Amazon Data Firehose*

# Lanceur Lambda
<a name="lambda-launcher-component"></a>

Le composant du lanceur Lambda (`aws.greengrass.LambdaLauncher`) démarre et arrête les AWS Lambda fonctions sur AWS IoT Greengrass les appareils principaux. Ce composant configure également toute conteneurisation et exécute les processus en fonction des utilisateurs que vous spécifiez.

**Note**  <a name="lambda-component-dependency-note"></a>
Lorsque vous déployez un composant de fonction Lambda sur un périphérique principal, le déploiement inclut également ce composant. Pour de plus amples informations, veuillez consulter [Exécuter AWS Lambda des fonctions](run-lambda-functions.md).

**Topics**
+ [Versions](#lambda-launcher-component-versions)
+ [Type](#lambda-launcher-component-type)
+ [Système d’exploitation](#lambda-launcher-component-os-support)
+ [Prérequis](#lambda-launcher-component-requirements)
+ [Dépendances](#lambda-launcher-component-dependencies)
+ [Configuration](#lambda-launcher-component-configuration)
+ [Fichier journal local](#lambda-launcher-component-log-file)
+ [Journal des modifications](#lambda-launcher-component-changelog)

## Versions
<a name="lambda-launcher-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2,0.x

## Type
<a name="lambda-launcher-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="lambda-launcher-component-os-support"></a>

Ce composant ne peut être installé que sur les appareils principaux de Linux.

## Prérequis
<a name="lambda-launcher-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ <a name="core-device-lambda-function-requirements"></a>Votre appareil principal doit répondre aux exigences pour exécuter les fonctions Lambda. Si vous souhaitez que le périphérique principal exécute des fonctions Lambda conteneurisées, le périphérique doit répondre aux exigences requises. Pour de plus amples informations, veuillez consulter [Exigences relatives à la fonction Lambda](setting-up.md#greengrass-v2-lambda-requirements).
+ Le composant Lambda Launcher peut être exécuté dans un VPC.

## Dépendances
<a name="lambda-launcher-component-dependencies"></a>

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](#lambda-launcher-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.0.11 – 2.0.13 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Gestionnaire Lambda](lambda-manager-component.md) | >=2,0.0 <2,4.0  | Stricte | 

------
#### [ 2.0.9 – 2.0.10 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Gestionnaire Lambda](lambda-manager-component.md) | >=2,0.0 <2,3.0  | Stricte | 

------
#### [ 2.0.4 - 2.0.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Gestionnaire Lambda](lambda-manager-component.md) | >=2,0.0 <2,2.0  | Stricte | 

------
#### [ 2.0.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Gestionnaire Lambda](lambda-manager-component.md) | >=2,0,3 <2,10 | Stricte | 

------

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="lambda-launcher-component-configuration"></a>

Ce composant ne possède aucun paramètre de configuration.

## Fichier journal local
<a name="lambda-launcher-component-log-file"></a>

Ce composant utilise le fichier journal suivant.

```
/greengrass/v2/logs/lambdaFunctionComponentName.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. Remplacez `/greengrass/v2` par le chemin d'accès au dossier AWS IoT Greengrass racine et remplacez *lambdaFunctionComponentName* par le nom du composant de fonction Lambda lancé par ce composant.

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

## Journal des modifications
<a name="lambda-launcher-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.0.13  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/lambda-launcher-component.html)  | 
|  2,0,12  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/lambda-launcher-component.html)  | 
|  2.0.11  |  Support pour Lambda Manager 2.3.0.  | 
|  2.0.10  |  <a name="changelog-lambda-launcher-2.0.10"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/lambda-launcher-component.html)  | 
|  2.0.9  |  Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.  | 
|  2.0.8  |  Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.  | 
|  2.0.7  |  Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.  | 
|  2.0.6  |  Améliorations des performances générales et correctifs de bogues.  | 
|  2.0.4  |  <a name="changelog-lambda-launcher-2.0.4"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/lambda-launcher-component.html)  | 
|  2.0.3  |  Première version.  | 

# Gestionnaire Lambda
<a name="lambda-manager-component"></a>

Le composant Lambda Manager (`aws.greengrass.LambdaManager`) gère les éléments de travail et la communication entre les processus pour les AWS Lambda fonctions exécutées sur le périphérique principal de Greengrass.

**Note**  <a name="lambda-component-dependency-note"></a>
Lorsque vous déployez un composant de fonction Lambda sur un périphérique principal, le déploiement inclut également ce composant. Pour de plus amples informations, veuillez consulter [Exécuter AWS Lambda des fonctions](run-lambda-functions.md).

**Topics**
+ [Versions](#lambda-manager-component-versions)
+ [Système d’exploitation](#lambda-manager-component-os-support)
+ [Type](#lambda-manager-component-type)
+ [Prérequis](#lambda-manager-component-requirements)
+ [Dépendances](#lambda-manager-component-dependencies)
+ [Configuration](#lambda-manager-component-configuration)
+ [Fichier journal local](#lambda-manager-component-log-file)
+ [Journal des modifications](#lambda-manager-component-changelog)

## Versions
<a name="lambda-manager-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2.3.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Système d’exploitation
<a name="lambda-manager-component-os-support"></a>

Ce composant ne peut être installé que sur les appareils principaux de Linux.

## Type
<a name="lambda-manager-component-type"></a>

<a name="public-component-type-plugin-para1"></a>Ce composant est un composant de plugin (`aws.greengrass.plugin`). Le [noyau Greengrass](greengrass-nucleus-component.md) 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.

<a name="public-component-type-plugin-para2"></a>Ce composant utilise le même fichier journal que le noyau Greengrass. Pour de plus amples informations, veuillez consulter [AWS IoT Greengrass Journaux de surveillance](monitor-logs.md).

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Prérequis
<a name="lambda-manager-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ <a name="core-device-lambda-function-requirements"></a>Votre appareil principal doit répondre aux exigences pour exécuter les fonctions Lambda. Si vous souhaitez que le périphérique principal exécute des fonctions Lambda conteneurisées, le périphérique doit répondre aux exigences requises. Pour de plus amples informations, veuillez consulter [Exigences relatives à la fonction Lambda](setting-up.md#greengrass-v2-lambda-requirements).
+ Le composant Lambda Manager est compatible avec l'exécution dans un VPC.

## Dépendances
<a name="lambda-manager-component-dependencies"></a>

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](#lambda-manager-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 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](greengrass-nucleus-component.md) | >=2,0,0 <2,17,0 | Flexible | 

------
#### [ 2.3.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0,0 <2,16,0  | Flexible | 

------
#### [ 2.3.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0,0 <2,15,0  | Flexible | 

------
#### [ 2.3.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,14.0  | Flexible | 

------
#### [ 2.3.2 and 2.3.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0,0 <2,13,0  | Flexible | 

------
#### [ 2.2.10 and 2.3.1 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,12.0  | Flexible | 

------
#### [ 2.2.8 and 2.2.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,11.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](greengrass-nucleus-component.md) |  >=2,0,0 <2,1,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](greengrass-nucleus-component.md) |  >=2,0.0 <2,9.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](greengrass-nucleus-component.md) |  >=2,0.0 <2,8.0  | Flexible | 

------
#### [ 2.2.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,7.0  | Flexible | 

------
#### [ 2.2.1 - 2.2.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,6.0  | Flexible | 

------
#### [ 2.2.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,5,0 <2,6,0  | Flexible | 

------
#### [ 2.1.3 and 2.1.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <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](greengrass-nucleus-component.md) |  >=2,0.0 <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](greengrass-nucleus-component.md) |  >=2,0.0 <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](greengrass-nucleus-component.md) |  >=2,0.0 <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](greengrass-nucleus-component.md) |  >=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](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="lambda-manager-component-configuration"></a>

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

`logHandlerMode`  
Uniquement pour les versions 2.3.0\$1 de Lambda Manager 
Permet de choisir l'implémentation du gestionnaire de journaux Lambda à utiliser. Définissez la valeur sur `optimized` pour utiliser moins de threads pour lire les logs Lambda.

`getResultTimeoutInSecond`  
(Facultatif) Durée maximale en secondes pendant laquelle les fonctions Lambda peuvent être exécutées avant leur expiration.  
Valeur par défaut : `60`

## Fichier journal local
<a name="lambda-manager-component-log-file"></a>

Ce composant utilise le même fichier journal que le composant [Greengrass nucleus](greengrass-nucleus-component.md).

```
/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. Remplacez `/greengrass/v2` par le chemin d'accès au dossier AWS IoT Greengrass racine.

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

## Journal des modifications
<a name="lambda-manager-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.3.8  |  Met à jour la version du composant pour la version 2.17.0 de Greengrass Nucleus.  | 
|  2.3.7  |  Version mise à jour pour la version 2.16.0 de Greengrass Nucleus.  | 
|  2.3.6  | Version mise à jour pour la version 2.15.0 de Greengrass Nucleus. | 
|  2.3.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  2.3.4  | Version mise à jour pour la version 2.13.0 de Greengrass Nucleus. | 
|  2.3.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  2.3.2  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  2.3.1  |  <a name="changelog-lambda-manager-2.3.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  2.3.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  2.2.11  |  <a name="changelog-lambda-manager-2.2.11"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  2.2.10  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  2.2.9  |  <a name="changelog-lambda-manager-2.2.9"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  2.2.8  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. | 
|  2.2.7  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  2.2.6  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  2.2.5  |  <a name="changelog-lambda-manager-2.2.5"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  2.2.4  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  2.2.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  2.2.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  2.2.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  2.2.0  |  <a name="changelog-lambda-manager-2.2.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  2.1.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/lambda-manager-component.html)  | 
|  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  |  Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.  | 
|  2.1.0  |  Version mise à jour pour la version 2.1.0 de Greengrass Nucleus.  | 
|  2.0.3  |  Première version.  | 

# Environnements d’exécution (runtimes) Lambda
<a name="lambda-runtimes-component"></a>

Le composant Lambda runtimes (`aws.greengrass.LambdaRuntimes`) fournit les environnements d'exécution que les appareils principaux de Greengrass utilisent pour exécuter des fonctions. AWS Lambda 

**Note**  <a name="lambda-component-dependency-note"></a>
Lorsque vous déployez un composant de fonction Lambda sur un périphérique principal, le déploiement inclut également ce composant. Pour de plus amples informations, veuillez consulter [Exécuter AWS Lambda des fonctions](run-lambda-functions.md).

**Topics**
+ [Versions](#lambda-runtimes-component-versions)
+ [Type](#lambda-runtimes-component-type)
+ [Système d’exploitation](#lambda-runtimes-component-os-support)
+ [Prérequis](#lambda-runtimes-component-requirements)
+ [Dépendances](#lambda-runtimes-component-dependencies)
+ [Configuration](#lambda-runtimes-component-configuration)
+ [Fichier journal local](#lambda-runtimes-component-log-file)
+ [Journal des modifications](#lambda-runtimes-component-changelog)

## Versions
<a name="lambda-runtimes-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2,0.x

## Type
<a name="lambda-runtimes-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="lambda-runtimes-component-os-support"></a>

Ce composant ne peut être installé que sur les appareils principaux de Linux.

## Prérequis
<a name="lambda-runtimes-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ <a name="core-device-lambda-function-requirements"></a>Votre appareil principal doit répondre aux exigences pour exécuter les fonctions Lambda. Si vous souhaitez que le périphérique principal exécute des fonctions Lambda conteneurisées, le périphérique doit répondre aux exigences requises. Pour de plus amples informations, veuillez consulter [Exigences relatives à la fonction Lambda](setting-up.md#greengrass-v2-lambda-requirements).
+ Le composant Lambda runtimes est compatible pour s'exécuter dans un VPC.

## Dépendances
<a name="lambda-runtimes-component-dependencies"></a>

Ce composant n'a aucune dépendance.

## Configuration
<a name="lambda-runtimes-component-configuration"></a>

Ce composant ne possède aucun paramètre de configuration.

## Fichier journal local
<a name="lambda-runtimes-component-log-file"></a>

Ce composant ne génère pas de journaux.

## Journal des modifications
<a name="lambda-runtimes-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.0.9  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/lambda-runtimes-component.html)  | 
|  2.0.8  |  Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.  | 
|  2.0.7  |  Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.  | 
|  2.0.6  |  Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.  | 
|  2.0.5  |  Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.  | 
|  2.0.4  |  Version mise à jour pour la version 2.1.0 de Greengrass Nucleus.  | 
|  2.0.3  |  Première version.  | 

# Routeur d'abonnement Legacy
<a name="legacy-subscription-router-component"></a>

L'ancien routeur d'abonnement (`aws.greengrass.LegacySubscriptionRouter`) gère les abonnements sur l'appareil principal Greengrass. Les abonnements sont une fonctionnalité de la AWS IoT Greengrass version 1 qui définit les sujets que les fonctions Lambda peuvent utiliser pour la messagerie MQTT sur un appareil principal. Pour plus d'informations, consultez la section [Abonnements gérés dans le flux de travail de messagerie MQTT](https://docs.aws.amazon.com/greengrass/v1/developerguide/gg-sec.html#gg-msg-workflow) du *guide du développeur de la version AWS IoT Greengrass 1*.

Vous pouvez utiliser ce composant pour activer les abonnements aux composants du connecteur et aux composants de la fonction Lambda qui utilisent le SDK AWS IoT Greengrass Core.

**Note**  <a name="legacy-subscription-router-requirement-note"></a>
L'ancien composant routeur d'abonnement n'est requis que si votre fonction Lambda utilise la `publish()` fonction du SDK AWS IoT Greengrass Core. Si vous mettez à jour votre code de fonction Lambda pour utiliser l'interface de communication interprocessus (IPC) de la Kit SDK des appareils AWS IoT V2, vous n'avez pas besoin de déployer l'ancien composant routeur d'abonnement. Pour plus d'informations, consultez les services de [communication interprocessus](interprocess-communication.md) suivants :  
[Publier/souscrire des messages locaux](ipc-publish-subscribe.md)
[Publier/souscrire AWS IoT Core des messages MQTT](ipc-iot-core-mqtt.md)

**Topics**
+ [Versions](#legacy-subscription-router-component-versions)
+ [Type](#legacy-subscription-router-component-type)
+ [Système d’exploitation](#legacy-subscription-router-component-os-support)
+ [Exigences](#legacy-subscription-router-component-requirements)
+ [Dépendances](#legacy-subscription-router-component-dependencies)
+ [Configuration](#legacy-subscription-router-component-configuration)
+ [Fichier journal local](#legacy-subscription-router-component-log-file)
+ [Journal des modifications](#legacy-subscription-router-component-changelog)

## Versions
<a name="legacy-subscription-router-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2.1.x
+ 2.0.x

## Type
<a name="legacy-subscription-router-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="legacy-subscription-router-component-os-support"></a>

Ce composant ne peut être installé que sur les appareils principaux de Linux.

## Exigences
<a name="legacy-subscription-router-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ L'ancien routeur d'abonnement est compatible pour fonctionner dans un VPC.

## Dépendances
<a name="legacy-subscription-router-component-dependencies"></a>

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](#legacy-subscription-router-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.1.15 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,17,0 | Flexible | 

------
#### [ 2.1.14 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,16,0 | Flexible | 

------
#### [ 2.1.13 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,15.0 | Flexible | 

------
#### [ 2.1.12 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,14.0 | Flexible | 

------
#### [ 2.1.11 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,13,0 | Flexible | 

------
#### [ 2.1.10 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,12.0 | Flexible | 

------
#### [ 2.1.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,11.0 | Flexible | 

------
#### [ 2.1.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,1,0 | Flexible | 

------
#### [ 2.1.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,9.0 | Flexible | 

------
#### [ 2.1.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,8.0 | Flexible | 

------
#### [ 2.1.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,7.0 | Flexible | 

------
#### [ 2.1.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,6.0 | Flexible | 

------
#### [ 2.1.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <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](greengrass-nucleus-component.md) | >=2,0.0 <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](greengrass-nucleus-component.md) | >=2,0.0 <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](greengrass-nucleus-component.md) | >=2,0.0 <2,2.0 | Flexible | 

------
#### [ 2.0.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=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](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="legacy-subscription-router-component-configuration"></a>

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

------
#### [ v2.1.x ]

`subscriptions`  
<a name="legacy-subscription-router-component-configuration-subscriptions-intro"></a>(Facultatif) Les abonnements à activer sur l'appareil principal. Il s'agit d'un objet, où chaque clé est un identifiant unique, et chaque valeur est un objet qui définit l'abonnement pour ce connecteur. Vous devez configurer un abonnement lorsque vous déployez un composant du connecteur V1 ou une fonction Lambda qui utilise le SDK AWS IoT Greengrass Core.  
Chaque objet d'abonnement contient les informations suivantes :    
`id`  <a name="legacy-subscription-router-component-configuration-subscription-id"></a>
L'identifiant unique de cet abonnement. Cet ID doit correspondre à la clé de cet objet d'abonnement.  
`source`  
Fonction Lambda qui utilise le SDK AWS IoT Greengrass principal pour publier des messages MQTT sur les sujets que vous spécifiez. `subject` Spécifiez l’un des éléments suivants :  
+ <a name="legacy-subscription-router-component-configuration-subscription-source-target-component-name"></a>Nom d'un composant de fonction Lambda sur le périphérique principal. Spécifiez le nom du composant avec le `component:` préfixe, tel que**component:com.example.HelloWorldLambda**.
+ <a name="legacy-subscription-router-component-configuration-subscription-source-target-function-arn"></a>Le nom de ressource Amazon (ARN) d'une fonction Lambda sur le périphérique principal.
**Important**  <a name="legacy-subscription-router-function-version-requirement"></a>
Si la version de la fonction Lambda change, vous devez configurer l'abonnement avec la nouvelle version de la fonction. Dans le cas contraire, ce composant n'acheminera pas les messages tant que la version ne correspondra pas à l'abonnement.  
Vous devez spécifier un Amazon Resource Name (ARN) qui inclut la version de la fonction à importer. Vous ne pouvez pas utiliser des alias de version tels que `$LATEST`.
Pour déployer un abonnement pour un composant de connecteur V1, spécifiez le nom du composant ou l'ARN de la fonction Lambda du composant de connecteur.  
`subject`  <a name="legacy-subscription-router-component-configuration-subscription-subject"></a>
Rubrique ou filtre de rubrique MQTT sur lequel la source et la cible peuvent publier et recevoir des messages. Cette valeur prend en charge les caractères génériques `+` et les caractères génériques du `#` sujet.  
`target`  
<a name="legacy-subscription-router-component-configuration-subscription-target-intro"></a>La cible qui reçoit les messages MQTT sur les sujets que vous spécifiez dans`subject`. L'abonnement indique que la `source` fonction publie des messages MQTT vers AWS IoT Core ou vers une fonction Lambda sur le périphérique principal. Spécifiez l’un des éléments suivants :  
+ <a name="legacy-subscription-router-component-configuration-subscription-target-cloud"></a>`cloud`. La `source` fonction publie des messages MQTT sur AWS IoT Core.
+ <a name="legacy-subscription-router-component-configuration-subscription-source-target-component-name"></a>Nom d'un composant de fonction Lambda sur le périphérique principal. Spécifiez le nom du composant avec le `component:` préfixe, tel que**component:com.example.HelloWorldLambda**.
+ <a name="legacy-subscription-router-component-configuration-subscription-source-target-function-arn"></a>Le nom de ressource Amazon (ARN) d'une fonction Lambda sur le périphérique principal.
**Important**  <a name="legacy-subscription-router-function-version-requirement"></a>
Si la version de la fonction Lambda change, vous devez configurer l'abonnement avec la nouvelle version de la fonction. Dans le cas contraire, ce composant n'acheminera pas les messages tant que la version ne correspondra pas à l'abonnement.  
Vous devez spécifier un Amazon Resource Name (ARN) qui inclut la version de la fonction à importer. Vous ne pouvez pas utiliser des alias de version tels que `$LATEST`.
Par défaut : aucun abonnement

**Example Exemple de mise à jour de configuration (définition d'un abonnement à AWS IoT Core)**  
L'exemple suivant indique que le composant de la fonction `com.example.HelloWorldLambda` Lambda publie un message MQTT AWS IoT Core sur le sujet. `hello/world`  

```
{
  "subscriptions": {
    "Greengrass_HelloWorld_to_cloud": {
      "id": "Greengrass_HelloWorld_to_cloud",
      "source": "component:com.example.HelloWorldLambda",
      "subject": "hello/world",
      "target": "cloud"
    }
  }
}
```

**Example Exemple de mise à jour de configuration (définition d'un abonnement à une autre fonction Lambda)**  
L'exemple suivant indique que le composant de fonction `com.example.HelloWorldLambda` Lambda publie des messages MQTT au composant de fonction `com.example.MessageRelay` Lambda sur le sujet. `hello/world`  

```
{
  "subscriptions": {
    "Greengrass_HelloWorld_to_MessageRelay": {
      "id": "Greengrass_HelloWorld_to_MessageRelay",
      "source": "component:com.example.HelloWorldLambda",
      "subject": "hello/world",
      "target": "component:com.example.MessageRelay"
    }
  }
}
```

------
#### [ v2.0.x ]

`subscriptions`  
<a name="legacy-subscription-router-component-configuration-subscriptions-intro"></a>(Facultatif) Les abonnements à activer sur l'appareil principal. Il s'agit d'un objet, où chaque clé est un identifiant unique, et chaque valeur est un objet qui définit l'abonnement pour ce connecteur. Vous devez configurer un abonnement lorsque vous déployez un composant du connecteur V1 ou une fonction Lambda qui utilise le SDK AWS IoT Greengrass Core.  
Chaque objet d'abonnement contient les informations suivantes :    
`id`  <a name="legacy-subscription-router-component-configuration-subscription-id"></a>
L'identifiant unique de cet abonnement. Cet ID doit correspondre à la clé de cet objet d'abonnement.  
`source`  
Fonction Lambda qui utilise le SDK AWS IoT Greengrass principal pour publier des messages MQTT sur les sujets que vous spécifiez. `subject` Spécifiez les paramètres suivants :  
+ <a name="legacy-subscription-router-component-configuration-subscription-source-target-function-arn"></a>Le nom de ressource Amazon (ARN) d'une fonction Lambda sur le périphérique principal.
**Important**  <a name="legacy-subscription-router-function-version-requirement"></a>
Si la version de la fonction Lambda change, vous devez configurer l'abonnement avec la nouvelle version de la fonction. Dans le cas contraire, ce composant n'acheminera pas les messages tant que la version ne correspondra pas à l'abonnement.  
Vous devez spécifier un Amazon Resource Name (ARN) qui inclut la version de la fonction à importer. Vous ne pouvez pas utiliser des alias de version tels que `$LATEST`.
Pour déployer un abonnement pour un composant de connecteur V1, spécifiez l'ARN de la fonction Lambda du composant de connecteur.  
`subject`  <a name="legacy-subscription-router-component-configuration-subscription-subject"></a>
Rubrique ou filtre de rubrique MQTT sur lequel la source et la cible peuvent publier et recevoir des messages. Cette valeur prend en charge les caractères génériques `+` et les caractères génériques du `#` sujet.  
`target`  
<a name="legacy-subscription-router-component-configuration-subscription-target-intro"></a>La cible qui reçoit les messages MQTT sur les sujets que vous spécifiez dans`subject`. L'abonnement indique que la `source` fonction publie des messages MQTT vers AWS IoT Core ou vers une fonction Lambda sur le périphérique principal. Spécifiez l’un des éléments suivants :  
+ <a name="legacy-subscription-router-component-configuration-subscription-target-cloud"></a>`cloud`. La `source` fonction publie des messages MQTT sur AWS IoT Core.
+ <a name="legacy-subscription-router-component-configuration-subscription-source-target-function-arn"></a>Le nom de ressource Amazon (ARN) d'une fonction Lambda sur le périphérique principal.
**Important**  <a name="legacy-subscription-router-function-version-requirement"></a>
Si la version de la fonction Lambda change, vous devez configurer l'abonnement avec la nouvelle version de la fonction. Dans le cas contraire, ce composant n'acheminera pas les messages tant que la version ne correspondra pas à l'abonnement.  
Vous devez spécifier un Amazon Resource Name (ARN) qui inclut la version de la fonction à importer. Vous ne pouvez pas utiliser des alias de version tels que `$LATEST`.
Par défaut : aucun abonnement

**Example Exemple de mise à jour de configuration (définition d'un abonnement à AWS IoT Core)**  
L'exemple suivant indique que la `Greengrass_HelloWorld` fonction publie un message MQTT AWS IoT Core sur le `hello/world` sujet.  

```
"subscriptions": {
  "Greengrass_HelloWorld_to_cloud": {
    "id": "Greengrass_HelloWorld_to_cloud",
    "source": "arn:aws:lambda:us-west-2:123456789012:function:Greengrass_HelloWorld:5",
    "subject": "hello/world",
    "target": "cloud"
  }
}
```

**Example Exemple de mise à jour de configuration (définition d'un abonnement à une autre fonction Lambda)**  
L'exemple suivant indique que la `Greengrass_HelloWorld` fonction publie des messages MQTT `Greengrass_MessageRelay` sur le `hello/world` sujet.  

```
"subscriptions": {
  "Greengrass_HelloWorld_to_MessageRelay": {
    "id": "Greengrass_HelloWorld_to_MessageRelay",
    "source": "arn:aws:lambda:us-west-2:123456789012:function:Greengrass_HelloWorld:5",
    "subject": "hello/world",
    "target": "arn:aws:lambda:us-west-2:123456789012:function:Greengrass_MessageRelay:5"
  }
}
```

------

## Fichier journal local
<a name="legacy-subscription-router-component-log-file"></a>

Ce composant ne génère pas de journaux.

## Journal des modifications
<a name="legacy-subscription-router-component-changelog"></a>

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


|  Version  |  Modifications  | 
| --- | --- | 
|  2.1.16  |  Met à jour la version du composant pour la version 2.17.0 de Greengrass Nucleus.  | 
|  2.1.15  |  Version mise à jour pour la version 2.16.0 de Greengrass Nucleus.  | 
|  2.1.14  | Version mise à jour pour la version 2.15.0 de Greengrass Nucleus. | 
|  2.1.13  | Version mise à jour pour la version 2.14.0 de Greengrass Nucleus. | 
|  2.1.12  | Version mise à jour pour la version 2.13.0 de Greengrass Nucleus. | 
|  2.1.11  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  2.1.10  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  2.1.9  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. | 
|  2.1.8  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  2.1.7  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  2.1.6  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  2.1.5  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  2.1.4  |  Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.  | 
|  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  |  Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.  | 
|  2.1.0  |  <a name="changelog-legacy-subscription-router-2.1.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/legacy-subscription-router-component.html)  | 
|  2.0.3  |  Première version.  | 

# Console de débogage locale
<a name="local-debug-console-component"></a>

Le composant de console de débogage local (`aws.greengrass.LocalDebugConsole`) fournit un tableau de bord local qui affiche des informations sur vos AWS IoT Greengrass principaux appareils et leurs composants. Vous pouvez utiliser ce tableau de bord pour déboguer votre appareil principal et gérer les composants locaux.

**Important**  
 <a name="local-dev-tools-production-environment-warning"></a>Nous vous recommandons d'utiliser ce composant uniquement dans les environnements de développement, et non dans les environnements de production. Ce composant permet d'accéder aux informations et aux opérations dont vous n'avez généralement pas besoin dans un environnement de production. Suivez le principe du moindre privilège en déployant ce composant uniquement sur les appareils principaux là où vous en avez besoin. 

**Topics**
+ [Versions](#local-debug-console-component-versions)
+ [Type](#local-debug-console-component-type)
+ [Système d’exploitation](#local-debug-console-component-os-support)
+ [Exigences](#local-debug-console-component-requirements)
+ [Dépendances](#local-debug-console-component-dependencies)
+ [Configuration](#local-debug-console-component-configuration)
+ [Usage](#local-debug-console-component-usage)
+ [Fichier journal local](#local-debug-console-component-log-file)
+ [Journal des modifications](#local-debug-console-component-changelog)

## Versions
<a name="local-debug-console-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2.4.x
+ 2.3.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Type
<a name="local-debug-console-component-type"></a>

<a name="public-component-type-plugin-para1"></a>Ce composant est un composant de plugin (`aws.greengrass.plugin`). Le [noyau Greengrass](greengrass-nucleus-component.md) 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.

<a name="public-component-type-plugin-para2"></a>Ce composant utilise le même fichier journal que le noyau Greengrass. Pour de plus amples informations, veuillez consulter [AWS IoT Greengrass Journaux de surveillance](monitor-logs.md).

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="local-debug-console-component-os-support"></a>

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

## Exigences
<a name="local-debug-console-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ Vous utilisez un nom d'utilisateur et un mot de passe pour vous connecter au tableau de bord. Le nom d'utilisateur, qui est`debug`, vous est fourni. Vous devez utiliser la AWS IoT Greengrass CLI pour créer un mot de passe temporaire qui vous authentifie auprès du tableau de bord d'un appareil principal. Vous devez être en mesure d'utiliser la AWS IoT Greengrass CLI pour utiliser la console de débogage locale. Pour plus d'informations, consultez les exigences de [Greengrass CLI](greengrass-cli-component.md#greengrass-cli-component-requirements). Pour plus d'informations sur la façon de générer le mot de passe et de se connecter, consultez la section [Utilisation des composants de la console de débogage locale](#local-debug-console-component-usage).
+ Le composant de console de débogage local peut être exécuté dans un VPC.

## Dépendances
<a name="local-debug-console-component-dependencies"></a>

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](#local-debug-console-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.4.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,1,0 <2,17,0 | Stricte | 
| [Greengrass CLI](greengrass-cli-component.md) | >=2,1,0 <2,17,0 | Stricte | 

------
#### [ 2.4.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,1,0 <2,16,0 | Stricte | 
| [Greengrass CLI](greengrass-cli-component.md) | >=2,1,0 <2,16,0 | Stricte | 

------
#### [ 2.4.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,1,0 <2,15,0 | Stricte | 
| [Greengrass CLI](greengrass-cli-component.md) | >=2,1,0 <2,15,0 | Stricte | 

------
#### [ 2.4.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,1,0 <2,14,0 | Stricte | 
| [Greengrass CLI](greengrass-cli-component.md) | >=2,1,0 <2,14,0 | Stricte | 

------
#### [ 2.4.1 – 2.4.2 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,1,0 <2,13,0 | Stricte | 
| [Greengrass CLI](greengrass-cli-component.md) | >=2,1,0 <2,13,0 | Stricte | 

------
#### [ 2.4.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,1,0 <2,12,0 | Stricte | 
| [Greengrass CLI](greengrass-cli-component.md) | >=2,1,0 <2,12,0 | Stricte | 

------
#### [ 2.3.0 and 2.3.1 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,1,0 <2,12,0 | Stricte | 
| [Greengrass CLI](greengrass-cli-component.md) | >=2,1,0 <2,12,0 | Stricte | 

------
#### [ 2.2.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,1,0 <2,12,0 | Stricte | 
| [Greengrass CLI](greengrass-cli-component.md) | >=2,1,0 <2,12,0 | Stricte | 

------
#### [ 2.2.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,10 <2,11,0 | Stricte | 
| [Greengrass CLI](greengrass-cli-component.md) | >=2,10 <2,11,0 | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) | >=2,10 <2,1,0 | Stricte | 
| [Greengrass CLI](greengrass-cli-component.md) | >=2,10 <2,1,0 | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) | >=2,10 <2,9,0 | Stricte | 
| [Greengrass CLI](greengrass-cli-component.md) | >=2,10 <2,9,0 | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) | >=2,10 <2,8,0 | Stricte | 
| [Greengrass CLI](greengrass-cli-component.md) | >=2,10 <2,8,0 | Stricte | 

------
#### [ 2.2.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,10 <2,7,0 | Stricte | 
| [Greengrass CLI](greengrass-cli-component.md) | >=2,10 <2,7,0 | Stricte | 

------
#### [ 2.2.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,10 <2,6,0 | Stricte | 
| [Greengrass CLI](greengrass-cli-component.md) | >=2,10 <2,6,0 | Stricte | 

------
#### [ 2.2.2 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,10 <2,5,0 | Stricte | 
| [Greengrass CLI](greengrass-cli-component.md) | >=2,10 <2,5,0 | Stricte | 

------
#### [ 2.2.1 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,10 <2,4,0 | Stricte | 
| [Greengrass CLI](greengrass-cli-component.md) | >=2,10 <2,4,0 | Stricte | 

------
#### [ 2.2.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,10 <2,3,0 | Stricte | 
| [Greengrass CLI](greengrass-cli-component.md) | >=2,10 <2,3,0 | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) | >=2,10 <2,2,0 | Stricte | 
| [Greengrass CLI](greengrass-cli-component.md) | >=2,10 <2,2,0 | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) |  >=2,0,3 <2,10  | Flexible | 
| [Greengrass CLI](greengrass-cli-component.md) |  >=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](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="local-debug-console-component-configuration"></a>

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

------
#### [ v2.1.x - v2.4.x ]

`httpsEnabled`  
(Facultatif) Vous pouvez activer la communication HTTPS pour la console de débogage locale. Si vous activez la communication HTTPS, la console de débogage locale crée un certificat auto-signé. Les navigateurs Web affichent des avertissements de sécurité pour les sites Web qui utilisent des certificats auto-signés. Vous devez donc vérifier le certificat manuellement. Ensuite, vous pouvez contourner l'avertissement. Pour de plus amples informations, veuillez consulter [Usage](#local-debug-console-component-usage).  
Par défaut: `true`

`port`  <a name="local-debug-console-component-configuration-port"></a>
(Facultatif) Port sur lequel fournir la console de débogage locale.  
Valeur par défaut : `1441`

`websocketPort`  <a name="local-debug-console-component-configuration-websocket-port"></a>
(Facultatif) Le port websocket à utiliser pour la console de débogage locale.  
Valeur par défaut : `1442`

`bindHostname`  <a name="local-debug-console-component-configuration-bind-hostname"></a>
(Facultatif) Le nom d'hôte à utiliser pour la console de débogage locale.  
Si vous [exécutez le logiciel AWS IoT Greengrass Core dans un conteneur Docker](run-greengrass-docker.md), définissez ce paramètre sur afin de pouvoir ouvrir la console de débogage locale en dehors du conteneur Docker. `0.0.0.0`  
Valeur par défaut : `localhost`

**Example Exemple : mise à jour de la fusion de configurations**  
L'exemple de configuration suivant indique d'ouvrir la console de débogage locale sur des ports autres que ceux par défaut et de désactiver le protocole HTTPS.  

```
{
  "httpsEnabled": false,
  "port": "10441",
  "websocketPort": "10442"
}
```

------
#### [ v2.0.x ]

`port`  <a name="local-debug-console-component-configuration-port"></a>
(Facultatif) Port sur lequel fournir la console de débogage locale.  
Valeur par défaut : `1441`

`websocketPort`  <a name="local-debug-console-component-configuration-websocket-port"></a>
(Facultatif) Le port websocket à utiliser pour la console de débogage locale.  
Valeur par défaut : `1442`

`bindHostname`  <a name="local-debug-console-component-configuration-bind-hostname"></a>
(Facultatif) Le nom d'hôte à utiliser pour la console de débogage locale.  
Si vous [exécutez le logiciel AWS IoT Greengrass Core dans un conteneur Docker](run-greengrass-docker.md), définissez ce paramètre sur afin de pouvoir ouvrir la console de débogage locale en dehors du conteneur Docker. `0.0.0.0`  
Valeur par défaut : `localhost`

**Example Exemple : mise à jour de la fusion de configurations**  
L'exemple de configuration suivant indique d'ouvrir la console de débogage locale sur des ports autres que ceux par défaut.  

```
{
  "port": "10441",
  "websocketPort": "10442"
}
```

------

## Usage
<a name="local-debug-console-component-usage"></a>

Pour utiliser la console de débogage locale, créez une session à partir de la CLI Greengrass. Lorsque vous créez une session, la CLI Greengrass fournit un nom d'utilisateur et un mot de passe temporaire que vous pouvez utiliser pour vous connecter à la console de débogage locale.

Suivez ces instructions pour ouvrir la console de débogage locale sur votre périphérique principal ou sur votre ordinateur de développement.

------
#### [ v2.1.x - v2.4.x ]

Dans les versions 2.1.0 et ultérieures, la console de débogage locale utilise HTTPS par défaut. Lorsque le protocole HTTPS est activé, la console de débogage locale crée un certificat auto-signé pour sécuriser la connexion. Votre navigateur Web affiche un avertissement de sécurité lorsque vous ouvrez la console de débogage locale en raison de ce certificat auto-signé. Lorsque vous créez une session avec la CLI Greengrass, la sortie inclut les empreintes digitales du certificat, afin que vous puissiez vérifier que le certificat est légitime et que la connexion est sécurisée.

Vous pouvez désactiver le protocole HTTPS. Pour plus d'informations, consultez la section [Configuration de la console de débogage locale](#local-debug-console-component-configuration).

**Pour ouvrir la console de débogage locale**

1. <a name="local-debug-console-component-usage-forward-port"></a>(Facultatif) Pour afficher la console de débogage locale sur votre ordinateur de développement, vous pouvez transférer le port de la console via SSH. Cependant, vous devez d'abord activer l'`AllowTcpForwarding`option dans le fichier de configuration SSH de votre appareil principal. Cette option est activée par défaut. Exécutez la commande suivante sur votre ordinateur de développement pour afficher le tableau de bord `localhost:1441` sur votre ordinateur de développement.

   ```
   ssh -L 1441:localhost:1441 -L 1442:localhost:1442 username@core-device-ip-address
   ```
**Note**  
Vous pouvez modifier les ports par défaut à partir de `1441` et`1442`. Pour plus d'informations, consultez la section [Configuration de la console de débogage locale](#local-debug-console-component-configuration).

1. <a name="local-debug-console-component-create-session-step"></a>Créez une session pour utiliser la console de débogage locale. Lorsque vous créez une session, vous générez un mot de passe que vous utilisez pour vous authentifier. La console de débogage locale nécessite un mot de passe pour renforcer la sécurité, car vous pouvez utiliser ce composant pour afficher des informations importantes et effectuer des opérations sur le périphérique principal. La console de débogage locale crée également un certificat pour sécuriser la connexion si vous activez le protocole HTTPS dans la configuration du composant. Le protocole HTTPS est activé par défaut.

   Utilisez la AWS IoT Greengrass CLI pour créer la session. Cette commande génère un mot de passe aléatoire de 43 caractères qui expire au bout de 8 heures. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par le chemin d'accès au dossier AWS IoT Greengrass V2 racine.

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

   ```
   sudo /greengrass/v2/bin/greengrass-cli get-debug-password
   ```

------
#### [ Windows ]

   ```
   C:\greengrass\v2\bin\greengrass-cli get-debug-password
   ```

------

   La sortie de commande ressemble à l'exemple suivant si vous avez configuré la console de débogage locale pour utiliser le protocole HTTPS. Vous utilisez les empreintes du certificat pour vérifier que la connexion est sécurisée lorsque vous ouvrez la console de débogage locale.

   ```
   Username: debug
   Password: bEDp3MOHdj8ou2w5de_sCBI2XAaguy3a8XxREXAMPLE
   Password expires at: 2021-04-01T17:01:43.921999931-07:00
   The local debug console is configured to use TLS security. The certificate is self-signed so you will need to bypass your web browser's security warnings to open the console.
   Before you bypass the security warning, verify that the certificate fingerprint matches the following fingerprints.
   SHA-256: 15 0B 2C E2 54 8B 22 DE 08 46 54 8A B1 2B 25 DE FB 02 7D 01 4E 4A 56 67 96 DA A6 CC B1 D2 C4 1B
   SHA-1: BC 3E 16 04 D3 80 70 DA E0 47 25 F9 90 FA D6 02 80 3E B5 C1
   ```

   Le composant debug view crée une session d'une durée de 8 heures. Ensuite, vous devez générer un nouveau mot de passe pour afficher à nouveau la console de débogage locale. 

1. Ouvrez le tableau de bord et connectez-vous à celui-ci. Consultez le tableau de bord sur votre appareil principal Greengrass ou sur votre ordinateur de développement si vous transférez le port via SSH. Effectuez l’une des actions suivantes :
   + Si vous avez activé le protocole HTTPS dans la console de débogage locale, qui est le paramètre par défaut, procédez comme suit :

     1. Ouvrez `https://localhost:1441` sur votre périphérique principal ou sur votre ordinateur de développement si vous avez transféré le port via SSH.

        Il est possible que votre navigateur affiche un avertissement de sécurité concernant un certificat de sécurité non valide.

     1. Si votre navigateur affiche un avertissement de sécurité, vérifiez que le certificat est légitime et contournez l'avertissement de sécurité. Procédez comme suit :

        1. Recherchez l'empreinte SHA-256 ou SHA-1 du certificat et vérifiez qu'elle correspond à l'empreinte SHA-256 ou SHA-1 précédemment imprimée par la commande. `get-debug-password` Votre navigateur peut fournir une ou les deux empreintes digitales. Consultez la documentation de votre navigateur pour consulter le certificat et ses empreintes digitales. Dans certains navigateurs, l'empreinte du certificat est appelée empreinte numérique.
**Note**  
Si l'empreinte du certificat ne correspond pas, accédez [Step 2](#local-debug-console-component-create-session-step) à pour créer une nouvelle session. Si l'empreinte du certificat ne correspond toujours pas, votre connexion n'est peut-être pas sécurisée.

        1. Si l'empreinte du certificat correspond, ignorez l'avertissement de sécurité de votre navigateur pour ouvrir la console de débogage locale. Consultez la documentation de votre navigateur pour contourner l'avertissement de sécurité du navigateur.

     1. Connectez-vous au site Web en utilisant le nom d'utilisateur et le mot de passe que la `get-debug-password` commande a imprimés précédemment.

        La console de débogage locale s'ouvre.

     1. Si la console de débogage locale affiche une erreur indiquant qu'elle ne peut pas se connecter au WebSocket en raison d'un échec de connexion TLS, vous devez ignorer l'avertissement de sécurité auto-signé pour l'URL. WebSocket   
![\[L'erreur WebSocket de liaison TLS dans la console de débogage locale.\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/images/local-debug-console/websocket-tls-handshake-error.png)

        Procédez comme suit :

        1. Ouvrez `https://localhost:1442` dans le même navigateur que celui dans lequel vous avez ouvert la console de débogage locale.

        1. Vérifiez le certificat et contournez l'avertissement de sécurité.

           Votre navigateur peut afficher une page HTTP 404 une fois que vous avez ignoré l'avertissement.

        1. Ouvrez `https://localhost:1441` à nouveau.

           La console de débogage locale affiche des informations sur le périphérique principal.
   + Si vous avez désactivé le protocole HTTPS dans la console de débogage locale, procédez comme suit :

     1. <a name="local-debug-console-component-usage-open-localhost-http"></a>`http://localhost:1441`Ouvrez-le sur votre périphérique principal ou ouvrez-le sur votre ordinateur de développement si vous avez transféré le port via SSH.

     1. <a name="local-debug-console-component-usage-sign-in"></a>Connectez-vous au site Web en utilisant le nom d'utilisateur et le mot de passe que la `get-debug-password` commande a précédemment imprimés.

        La console de débogage locale s'ouvre.

------
#### [ v2.0.x ]

**Pour ouvrir la console de débogage locale**

1. <a name="local-debug-console-component-usage-forward-port"></a>(Facultatif) Pour afficher la console de débogage locale sur votre ordinateur de développement, vous pouvez transférer le port de la console via SSH. Cependant, vous devez d'abord activer l'`AllowTcpForwarding`option dans le fichier de configuration SSH de votre appareil principal. Cette option est activée par défaut. Exécutez la commande suivante sur votre ordinateur de développement pour afficher le tableau de bord `localhost:1441` sur votre ordinateur de développement.

   ```
   ssh -L 1441:localhost:1441 -L 1442:localhost:1442 username@core-device-ip-address
   ```
**Note**  
Vous pouvez modifier les ports par défaut à partir de `1441` et`1442`. Pour plus d'informations, consultez la section [Configuration de la console de débogage locale](#local-debug-console-component-configuration).

1. Créez une session pour utiliser la console de débogage locale. Lorsque vous créez une session, vous générez un mot de passe que vous utilisez pour vous authentifier. La console de débogage locale nécessite un mot de passe pour renforcer la sécurité, car vous pouvez utiliser ce composant pour afficher des informations importantes et effectuer des opérations sur le périphérique principal.

   Utilisez la AWS IoT Greengrass CLI pour créer la session. Cette commande génère un mot de passe aléatoire de 43 caractères qui expire au bout de 8 heures. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par le chemin d'accès au dossier AWS IoT Greengrass V2 racine.

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

   ```
   sudo /greengrass/v2/bin/greengrass-cli get-debug-password
   ```

------
#### [ Windows ]

   ```
   C:\greengrass\v2\bin\greengrass-cli get-debug-password
   ```

------

   La sortie de commande ressemble à l'exemple suivant.

   ```
   Username: debug
   Password: bEDp3MOHdj8ou2w5de_sCBI2XAaguy3a8XxREXAMPLE
   Password will expire at: 2021-04-01T17:01:43.921999931-07:00
   ```

   Le composant d'affichage du débogage crée une session qui dure 4 heures, puis vous devez générer un nouveau mot de passe pour afficher à nouveau la console de débogage locale.

1. <a name="local-debug-console-component-usage-open-localhost-http"></a>`http://localhost:1441`Ouvrez-le sur votre périphérique principal ou ouvrez-le sur votre ordinateur de développement si vous avez transféré le port via SSH.

1. <a name="local-debug-console-component-usage-sign-in"></a>Connectez-vous au site Web en utilisant le nom d'utilisateur et le mot de passe que la `get-debug-password` commande a précédemment imprimés.

   La console de débogage locale s'ouvre.

------

## Fichier journal local
<a name="local-debug-console-component-log-file"></a>

Ce composant utilise le même fichier journal que le composant [Greengrass nucleus](greengrass-nucleus-component.md).

------
#### [ 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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par 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
<a name="local-debug-console-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.4.7  |  Met à jour la version du composant pour la version 2.17.0 de Greengrass Nucleus.  | 
|  2.4.6  |  Version mise à jour pour la version 2.16.0 de Greengrass Nucleus.  | 
|  2.4.5  | Version mise à jour pour la version 2.15.0 de Greengrass Nucleus. | 
|  2.4.4  | Version mise à jour pour la version 2.14.0 de Greengrass Nucleus. | 
|  2.4.3  |  Version mise à jour pour la version 2.13.0 de Greengrass Nucleus. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/local-debug-console-component.html)  | 
|  2.4.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/local-debug-console-component.html)  | 
|  2.4.1  |  Version mise à jour pour la version 2.12.0 de Greengrass Nucleus.  | 
|  2.4.0  |  <a name="changelog-local-debug-console-2.4.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/local-debug-console-component.html)  | 
|  2.3.1  |  Version mise à jour pour la version 2.11.0 de Greengrass Nucleus.  | 
|  2.3.0  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/local-debug-console-component.html) | 
|  2.2.7  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  2.2.6  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  2.2.5  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  2.2.4  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  2.2.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/local-debug-console-component.html)  | 
|  2.2.2  |  Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.  | 
|  2.2.1  |  Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.  | 
|  2.2.0  |  Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.  | 
|  2.1.0  |  <a name="changelog-local-debug-console-2.1.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/local-debug-console-component.html)  | 
|  2.0.3  |  Première version.  | 

# Gestionnaire de journaux
<a name="log-manager-component"></a>

**Avertissement**  
Nous vous recommandons de passer à Log Manager v2.3.5 ou version ultérieure. La version 2.3.5 optimise les écritures de configuration de Log Manager, en réduisant les opérations d'E/S, en améliorant la vitesse de téléchargement des journaux, les performances globales des appareils et en prolongeant éventuellement leur durée de vie.

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, consultez[AWS IoT Greengrass Journaux de surveillance](monitor-logs.md).

<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**

  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, le gestionnaire de journaux version 2.3.0 (et versions ultérieures) traite et télécharge directement ce 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 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](monitor-logs.md#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*.

Pour plus d'informations sur les groupes de journaux et les flux de journaux vers lesquels ce composant télécharge les journaux, consultez[Usage](#log-manager-component-usage).

**Topics**
+ [Versions](#log-manager-component-versions)
+ [Type](#log-manager-component-type)
+ [Système d’exploitation](#log-manager-component-os-support)
+ [Exigences](#log-manager-component-requirements)
+ [Dépendances](#log-manager-component-dependencies)
+ [Configuration](#log-manager-component-configuration)
+ [Usage](#log-manager-component-usage)
+ [Fichier journal local](#log-manager-component-log-file)
+ [Journal des modifications](#log-manager-component-changelog)

## Versions
<a name="log-manager-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2.3.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Type
<a name="log-manager-component-type"></a>

<a name="public-component-type-plugin-para1"></a>Ce composant est un composant de plugin (`aws.greengrass.plugin`). Le [noyau Greengrass](greengrass-nucleus-component.md) 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.

<a name="public-component-type-plugin-para2"></a>Ce composant utilise le même fichier journal que le noyau Greengrass. Pour de plus amples informations, veuillez consulter [AWS IoT Greengrass Journaux de surveillance](monitor-logs.md).

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="log-manager-component-os-support"></a>

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

## Exigences
<a name="log-manager-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ Le [rôle d'appareil Greengrass](device-service-role.md) doit autoriser les `logs:DescribeLogStreams` actions`logs:CreateLogGroup`,`logs:CreateLogStream`, et`logs:PutLogEvents`, comme indiqué dans l'exemple de politique IAM 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](device-service-role.md) 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é (politiques IAM) pour les CloudWatch journaux](https://docs.aws.amazon.com/AmazonCloudWatch/latest/logs/iam-identity-based-access-control-cwl.html) dans le guide de l'utilisateur *Amazon CloudWatch Logs*.
+ Le composant du gestionnaire de journaux peut être exécuté dans un VPC. Pour déployer ce composant dans un VPC, les éléments suivants sont requis.
  + Le composant du gestionnaire de journaux doit disposer d'une connectivité `logs.region.amazonaws.com` dont le point de terminaison VPC est de. `com.amazonaws.us-east-1.logs`

### Points de terminaison et ports
<a name="log-manager-component-endpoints"></a>

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](allow-device-traffic.md).


| Endpoint |  Port | Obligatoire | Description | 
| --- | --- | --- | --- | 
|  `logs.region.amazonaws.com`  | 443 | Non |  Obligatoire si vous écrivez des journaux dans CloudWatch Logs.  | 

## Dépendances
<a name="log-manager-component-dependencies"></a>

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](#log-manager-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.3.11 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,1,0 <2,17,0 | Flexible | 

------
#### [ 2.3.10 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,10 <2,16,0 | Flexible | 

------
#### [ 2.3.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,10 <2,15,0 | Flexible | 

------
#### [ 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](greengrass-nucleus-component.md) | >=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](greengrass-nucleus-component.md) | >=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](greengrass-nucleus-component.md) | >=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](greengrass-nucleus-component.md) | >=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](greengrass-nucleus-component.md) | >=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](greengrass-nucleus-component.md) | >=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](greengrass-nucleus-component.md) | >=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](greengrass-nucleus-component.md) | >=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](greengrass-nucleus-component.md) | >=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](greengrass-nucleus-component.md) | >=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](greengrass-nucleus-component.md) | >=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](greengrass-nucleus-component.md) | >=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](greengrass-nucleus-component.md) | >=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](greengrass-nucleus-component.md) |  >=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](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="log-manager-component-configuration"></a>

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

------
#### [ v2.3.10 ]

`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](greengrass-nucleus-component.md) et des composants du [plugin](develop-greengrass-components.md#component-types). 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`  <a name="log-manager-component-configuration-system-upload-to-cloud-watch"></a>
(Facultatif) Vous pouvez télécharger les journaux du système dans CloudWatch Logs.  
Valeur par défaut : `false`  
`minimumLogLevel`  <a name="log-manager-component-configuration-system-minimum-log-level"></a>
(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](greengrass-nucleus-component.md) au format JSON. Pour activer les journaux au format JSON, spécifiez `JSON` le paramètre de [format de journalisation](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-logging-format) (`logging.format`).  
Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valeur par défaut : `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-system-disk-space-limit"></a>
(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](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) du composant du [noyau Greengrass](greengrass-nucleus-component.md). Le logiciel AWS IoT Greengrass Core utilise le minimum des deux valeurs comme taille maximale totale du journal du système Greengrass.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Facultatif) L'unité pour le`diskSpaceLimit`. Sélectionnez l’une des options suivantes :  
+ `KB`— kilo-octets
+ `MB`— mégaoctets
+ `GB`— gigaoctets
Valeur par défaut : `KB`  
`deleteLogFileAfterCloudUpload`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Facultatif) Vous pouvez supprimer un fichier journal une fois que le composant du gestionnaire de journaux a chargé les journaux dans CloudWatch Logs.  
Valeur 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.  
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 le`logFileRegex`. 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.](#log-manager-multiple-logs-v2.3.10)
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`*  
Configuration du journal pour le *`componentName`* composant ou 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.  
Chaque objet contient les informations suivantes :    
`minimumLogLevel`  <a name="log-manager-component-configuration-component-minimum-log-level"></a>
(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 format JSON spécifique, que vous pouvez trouver dans le référentiel du [module de AWS IoT Greengrass journalisation](https://github.com/aws-greengrass/aws-greengrass-logging-java) sur GitHub.  
Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valeur par défaut : `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-component-disk-space-limit"></a>
(Facultatif) Taille totale maximale de tous les fichiers journaux pour ce composant, dans l'unité que vous spécifiez`diskSpaceLimitUnit`. 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](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) du composant du [noyau Greengrass](greengrass-nucleus-component.md). Le logiciel AWS IoT Greengrass Core utilise le minimum des deux valeurs comme taille maximale totale du journal pour ce composant.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Facultatif) L'unité pour le`diskSpaceLimit`. Sélectionnez l’une des options suivantes :  
+ `KB`— kilo-octets
+ `MB`— mégaoctets
+ `GB`— gigaoctets
Valeur par défaut : `KB`  
`logFileDirectoryPath`  <a name="log-manager-component-configuration-component-log-file-dir-path"></a>
(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).  
Valeur par défaut : `/greengrass/v2/logs`.  
`logFileRegex`  <a name="log-manager-component-configuration-component-log-file-regex"></a>
(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\$1world\$1\$1\$1\$1w\$1.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`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Facultatif) Vous pouvez supprimer un fichier journal une fois que le composant du gestionnaire de journaux a chargé les journaux dans CloudWatch Logs.  
Valeur par défaut : `false`  
`multiLineStartPattern`  <a name="log-manager-component-configuration-component-multi-line-start-pattern"></a>
(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)

`updateToTlogIntervalSec`  
(Facultatif) Période en secondes pendant laquelle le noyau écrit les détails des événements de Amazon CloudWatch Events téléchargement du journal dans le journal des transactions local ()`config.tlog`. La valeur par défaut est spécifiée dans. `periodicUploadIntervalSec` Vous pouvez modifier ce paramètre pour augmenter l'intervalle d'écriture.  
Valeur par défaut : `periodicUploadIntervalSec`  
Minimum : `periodicUploadIntervalSec`

`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.  
La valeur par défaut est `true`.

**Example 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"
}
```

**Example 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 au`logFileRegex`. 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.6 – v2.3.9 ]

`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](greengrass-nucleus-component.md) et des composants du [plugin](develop-greengrass-components.md#component-types). 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`  <a name="log-manager-component-configuration-system-upload-to-cloud-watch"></a>
(Facultatif) Vous pouvez télécharger les journaux du système dans CloudWatch Logs.  
Valeur par défaut : `false`  
`minimumLogLevel`  <a name="log-manager-component-configuration-system-minimum-log-level"></a>
(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](greengrass-nucleus-component.md) au format JSON. Pour activer les journaux au format JSON, spécifiez `JSON` le paramètre de [format de journalisation](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-logging-format) (`logging.format`).  
Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valeur par défaut : `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-system-disk-space-limit"></a>
(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](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) du composant du [noyau Greengrass](greengrass-nucleus-component.md). Le logiciel AWS IoT Greengrass Core utilise le minimum des deux valeurs comme taille maximale totale du journal du système Greengrass.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Facultatif) L'unité pour le`diskSpaceLimit`. Sélectionnez l’une des options suivantes :  
+ `KB`— kilo-octets
+ `MB`— mégaoctets
+ `GB`— gigaoctets
Valeur par défaut : `KB`  
`deleteLogFileAfterCloudUpload`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Facultatif) Vous pouvez supprimer un fichier journal une fois que le composant du gestionnaire de journaux a chargé les journaux dans CloudWatch Logs.  
Valeur 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.  
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 le`logFileRegex`. 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.](#log-manager-multiple-logs-v2.3.1)
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`*  
Configuration du journal pour le *`componentName`* composant ou 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.  
Chaque objet contient les informations suivantes :    
`minimumLogLevel`  <a name="log-manager-component-configuration-component-minimum-log-level"></a>
(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 format JSON spécifique, que vous pouvez trouver dans le référentiel du [module de AWS IoT Greengrass journalisation](https://github.com/aws-greengrass/aws-greengrass-logging-java) sur GitHub.  
Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valeur par défaut : `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-component-disk-space-limit"></a>
(Facultatif) Taille totale maximale de tous les fichiers journaux pour ce composant, dans l'unité que vous spécifiez`diskSpaceLimitUnit`. 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](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) du composant du [noyau Greengrass](greengrass-nucleus-component.md). Le logiciel AWS IoT Greengrass Core utilise le minimum des deux valeurs comme taille maximale totale du journal pour ce composant.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Facultatif) L'unité pour le`diskSpaceLimit`. Sélectionnez l’une des options suivantes :  
+ `KB`— kilo-octets
+ `MB`— mégaoctets
+ `GB`— gigaoctets
Valeur par défaut : `KB`  
`logFileDirectoryPath`  <a name="log-manager-component-configuration-component-log-file-dir-path"></a>
(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).  
Valeur par défaut : `/greengrass/v2/logs`.  
`logFileRegex`  <a name="log-manager-component-configuration-component-log-file-regex"></a>
(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\$1world\$1\$1\$1\$1w\$1.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`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Facultatif) Vous pouvez supprimer un fichier journal une fois que le composant du gestionnaire de journaux a chargé les journaux dans CloudWatch Logs.  
Valeur par défaut : `false`  
`multiLineStartPattern`  <a name="log-manager-component-configuration-component-multi-line-start-pattern"></a>
(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.  
La valeur par défaut est `true`.

**Example 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"
}
```

**Example 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 au`logFileRegex`. 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.0 – 2.3.5 ]

`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](greengrass-nucleus-component.md) et des composants du [plugin](develop-greengrass-components.md#component-types). 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`  <a name="log-manager-component-configuration-system-upload-to-cloud-watch"></a>
(Facultatif) Vous pouvez télécharger les journaux du système dans CloudWatch Logs.  
Valeur par défaut : `false`  
`minimumLogLevel`  <a name="log-manager-component-configuration-system-minimum-log-level"></a>
(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](greengrass-nucleus-component.md) au format JSON. Pour activer les journaux au format JSON, spécifiez `JSON` le paramètre de [format de journalisation](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-logging-format) (`logging.format`).  
Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valeur par défaut : `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-system-disk-space-limit"></a>
(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](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) du composant du [noyau Greengrass](greengrass-nucleus-component.md). Le logiciel AWS IoT Greengrass Core utilise le minimum des deux valeurs comme taille maximale totale du journal du système Greengrass.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Facultatif) L'unité pour le`diskSpaceLimit`. Sélectionnez l’une des options suivantes :  
+ `KB`— kilo-octets
+ `MB`— mégaoctets
+ `GB`— gigaoctets
Valeur par défaut : `KB`  
`deleteLogFileAfterCloudUpload`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Facultatif) Vous pouvez supprimer un fichier journal une fois que le composant du gestionnaire de journaux a chargé les journaux dans CloudWatch Logs.  
Valeur 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.  
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 le`logFileRegex`. 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.](#log-manager-multiple-logs-v2.3.1)
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`*  
Configuration du journal pour le *`componentName`* composant ou 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.  
Chaque objet contient les informations suivantes :    
`minimumLogLevel`  <a name="log-manager-component-configuration-component-minimum-log-level"></a>
(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 format JSON spécifique, que vous pouvez trouver dans le référentiel du [module de AWS IoT Greengrass journalisation](https://github.com/aws-greengrass/aws-greengrass-logging-java) sur GitHub.  
Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valeur par défaut : `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-component-disk-space-limit"></a>
(Facultatif) Taille totale maximale de tous les fichiers journaux pour ce composant, dans l'unité que vous spécifiez`diskSpaceLimitUnit`. 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](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) du composant du [noyau Greengrass](greengrass-nucleus-component.md). Le logiciel AWS IoT Greengrass Core utilise le minimum des deux valeurs comme taille maximale totale du journal pour ce composant.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Facultatif) L'unité pour le`diskSpaceLimit`. Sélectionnez l’une des options suivantes :  
+ `KB`— kilo-octets
+ `MB`— mégaoctets
+ `GB`— gigaoctets
Valeur par défaut : `KB`  
`logFileDirectoryPath`  <a name="log-manager-component-configuration-component-log-file-dir-path"></a>
(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).  
Valeur par défaut : `/greengrass/v2/logs`.  
`logFileRegex`  <a name="log-manager-component-configuration-component-log-file-regex"></a>
(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\$1world\$1\$1\$1\$1w\$1.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`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Facultatif) Vous pouvez supprimer un fichier journal une fois que le composant du gestionnaire de journaux a chargé les journaux dans CloudWatch Logs.  
Valeur par défaut : `false`  
`multiLineStartPattern`  <a name="log-manager-component-configuration-component-multi-line-start-pattern"></a>
(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)

**Example 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"
}
```

**Example 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 au`logFileRegex`. 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](greengrass-nucleus-component.md) et des composants du [plugin](develop-greengrass-components.md#component-types). 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`  <a name="log-manager-component-configuration-system-upload-to-cloud-watch"></a>
(Facultatif) Vous pouvez télécharger les journaux du système dans CloudWatch Logs.  
Valeur par défaut : `false`  
`minimumLogLevel`  <a name="log-manager-component-configuration-system-minimum-log-level"></a>
(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](greengrass-nucleus-component.md) au format JSON. Pour activer les journaux au format JSON, spécifiez `JSON` le paramètre de [format de journalisation](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-logging-format) (`logging.format`).  
Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valeur par défaut : `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-system-disk-space-limit"></a>
(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](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) du composant du [noyau Greengrass](greengrass-nucleus-component.md). Le logiciel AWS IoT Greengrass Core utilise le minimum des deux valeurs comme taille maximale totale du journal du système Greengrass.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Facultatif) L'unité pour le`diskSpaceLimit`. Sélectionnez l’une des options suivantes :  
+ `KB`— kilo-octets
+ `MB`— mégaoctets
+ `GB`— gigaoctets
Valeur par défaut : `KB`  
`deleteLogFileAfterCloudUpload`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Facultatif) Vous pouvez supprimer un fichier journal une fois que le composant du gestionnaire de journaux a chargé les journaux dans CloudWatch Logs.  
Valeur 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.  
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`*  
Configuration du journal pour le *`componentName`* composant ou 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.  
Chaque objet contient les informations suivantes :    
`minimumLogLevel`  <a name="log-manager-component-configuration-component-minimum-log-level"></a>
(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 format JSON spécifique, que vous pouvez trouver dans le référentiel du [module de AWS IoT Greengrass journalisation](https://github.com/aws-greengrass/aws-greengrass-logging-java) sur GitHub.  
Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valeur par défaut : `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-component-disk-space-limit"></a>
(Facultatif) Taille totale maximale de tous les fichiers journaux pour ce composant, dans l'unité que vous spécifiez`diskSpaceLimitUnit`. 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](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) du composant du [noyau Greengrass](greengrass-nucleus-component.md). Le logiciel AWS IoT Greengrass Core utilise le minimum des deux valeurs comme taille maximale totale du journal pour ce composant.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Facultatif) L'unité pour le`diskSpaceLimit`. Sélectionnez l’une des options suivantes :  
+ `KB`— kilo-octets
+ `MB`— mégaoctets
+ `GB`— gigaoctets
Valeur par défaut : `KB`  
`logFileDirectoryPath`  <a name="log-manager-component-configuration-component-log-file-dir-path"></a>
(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).  
Valeur par défaut : `/greengrass/v2/logs`.  
`logFileRegex`  <a name="log-manager-component-configuration-component-log-file-regex"></a>
(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\$1world\$1\$1\$1\$1w\$1.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`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Facultatif) Vous pouvez supprimer un fichier journal une fois que le composant du gestionnaire de journaux a chargé les journaux dans CloudWatch Logs.  
Valeur par défaut : `false`  
`multiLineStartPattern`  <a name="log-manager-component-configuration-component-multi-line-start-pattern"></a>
(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)

**Example 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](greengrass-nucleus-component.md) et des composants du [plugin](develop-greengrass-components.md#component-types). 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`  <a name="log-manager-component-configuration-system-upload-to-cloud-watch"></a>
(Facultatif) Vous pouvez télécharger les journaux du système dans CloudWatch Logs.  
Valeur par défaut : `false`  
`minimumLogLevel`  <a name="log-manager-component-configuration-system-minimum-log-level"></a>
(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](greengrass-nucleus-component.md) au format JSON. Pour activer les journaux au format JSON, spécifiez `JSON` le paramètre de [format de journalisation](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-logging-format) (`logging.format`).  
Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valeur par défaut : `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-system-disk-space-limit"></a>
(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](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) du composant du [noyau Greengrass](greengrass-nucleus-component.md). Le logiciel AWS IoT Greengrass Core utilise le minimum des deux valeurs comme taille maximale totale du journal du système Greengrass.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Facultatif) L'unité pour le`diskSpaceLimit`. Sélectionnez l’une des options suivantes :  
+ `KB`— kilo-octets
+ `MB`— mégaoctets
+ `GB`— gigaoctets
Valeur par défaut : `KB`  
`deleteLogFileAfterCloudUpload`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Facultatif) Vous pouvez supprimer un fichier journal une fois que le composant du gestionnaire de journaux a chargé les journaux dans CloudWatch Logs.  
Valeur 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`  <a name="log-manager-component-configuration-component-component-name"></a>
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`  <a name="log-manager-component-configuration-component-minimum-log-level"></a>
(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 format JSON spécifique, que vous pouvez trouver dans le référentiel du [module de AWS IoT Greengrass journalisation](https://github.com/aws-greengrass/aws-greengrass-logging-java) sur GitHub.  
Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valeur par défaut : `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-component-disk-space-limit"></a>
(Facultatif) Taille totale maximale de tous les fichiers journaux pour ce composant, dans l'unité que vous spécifiez`diskSpaceLimitUnit`. 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](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) du composant du [noyau Greengrass](greengrass-nucleus-component.md). Le logiciel AWS IoT Greengrass Core utilise le minimum des deux valeurs comme taille maximale totale du journal pour ce composant.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Facultatif) L'unité pour le`diskSpaceLimit`. Sélectionnez l’une des options suivantes :  
+ `KB`— kilo-octets
+ `MB`— mégaoctets
+ `GB`— gigaoctets
Valeur par défaut : `KB`  
`logFileDirectoryPath`  <a name="log-manager-component-configuration-component-log-file-dir-path"></a>
(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).  
Valeur par défaut : `/greengrass/v2/logs`.  
`logFileRegex`  <a name="log-manager-component-configuration-component-log-file-regex"></a>
(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\$1world\$1\$1\$1\$1w\$1.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`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Facultatif) Vous pouvez supprimer un fichier journal une fois que le composant du gestionnaire de journaux a chargé les journaux dans CloudWatch Logs.  
Valeur par défaut : `false`  
`multiLineStartPattern`  <a name="log-manager-component-configuration-component-multi-line-start-pattern"></a>
(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)

**Example 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`  <a name="log-manager-component-configuration-system-upload-to-cloud-watch"></a>
(Facultatif) Vous pouvez télécharger les journaux du système dans CloudWatch Logs.  
Valeur par défaut : `false`  
`minimumLogLevel`  <a name="log-manager-component-configuration-system-minimum-log-level"></a>
(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](greengrass-nucleus-component.md) au format JSON. Pour activer les journaux au format JSON, spécifiez `JSON` le paramètre de [format de journalisation](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-logging-format) (`logging.format`).  
Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valeur par défaut : `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-system-disk-space-limit"></a>
(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](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) du composant du [noyau Greengrass](greengrass-nucleus-component.md). Le logiciel AWS IoT Greengrass Core utilise le minimum des deux valeurs comme taille maximale totale du journal du système Greengrass.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Facultatif) L'unité pour le`diskSpaceLimit`. Sélectionnez l’une des options suivantes :  
+ `KB`— kilo-octets
+ `MB`— mégaoctets
+ `GB`— gigaoctets
Valeur par défaut : `KB`  
`deleteLogFileAfterCloudUpload`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Facultatif) Vous pouvez supprimer un fichier journal une fois que le composant du gestionnaire de journaux a chargé les journaux dans CloudWatch Logs.  
Valeur 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`  <a name="log-manager-component-configuration-component-component-name"></a>
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`  <a name="log-manager-component-configuration-component-minimum-log-level"></a>
(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 format JSON spécifique, que vous pouvez trouver dans le référentiel du [module de AWS IoT Greengrass journalisation](https://github.com/aws-greengrass/aws-greengrass-logging-java) sur GitHub.  
Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :  <a name="nucleus-log-levels"></a>
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valeur par défaut : `INFO`  
`diskSpaceLimit`  <a name="log-manager-component-configuration-component-disk-space-limit"></a>
(Facultatif) Taille totale maximale de tous les fichiers journaux pour ce composant, dans l'unité que vous spécifiez`diskSpaceLimitUnit`. 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](greengrass-nucleus-component.md#greengrass-nucleus-component-configuration-system-logs-limit) (`totalLogsSizeKB`) du composant du [noyau Greengrass](greengrass-nucleus-component.md). Le logiciel AWS IoT Greengrass Core utilise le minimum des deux valeurs comme taille maximale totale du journal pour ce composant.  
`diskSpaceLimitUnit`  <a name="log-manager-component-configuration-disk-space-limit-unit"></a>
(Facultatif) L'unité pour le`diskSpaceLimit`. Sélectionnez l’une des options suivantes :  
+ `KB`— kilo-octets
+ `MB`— mégaoctets
+ `GB`— gigaoctets
Valeur 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\$1\$1w\$1.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`  <a name="log-manager-component-configuration-delete-log-file-after-cloud-upload"></a>
(Facultatif) Vous pouvez supprimer un fichier journal une fois que le composant du gestionnaire de journaux a chargé les journaux dans CloudWatch Logs.  
Valeur par défaut : `false`  
`multiLineStartPattern`  <a name="log-manager-component-configuration-component-multi-line-start-pattern"></a>
(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)

**Example 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"
}
```

------

## Usage
<a name="log-manager-component-usage"></a>

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

------
#### [ 2.1.0 and later ]<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 composant](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, par exemple`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 (`+`).

------
#### [ 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](greengrass-nucleus-component.md).
  + `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 est`System`.

**Nom du flux de log**  

```
/date/deploymentTargets/thingName
```
Le nom du flux de journal utilise les variables suivantes :  
+ `date`— La date du journal, par exemple`2020/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 est`LOCAL_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 sont`thing/MyGreengrassCore/thinggroup/MyGreengrassCoreGroup`.
+ `thingName`— Le nom de l'appareil principal.

------

### Formats pour les entrées du journal.
<a name="log-manager-entry-format"></a>

Le noyau Greengrass écrit les fichiers journaux au format chaîne ou JSON. Pour les journaux système, vous pouvez contrôler le format en définissant le `format` champ de l'`logging`entrée. Vous pouvez trouver l'`logging`entrée dans le fichier de configuration du composant Greengrass nucleus. Pour plus d'informations, consultez la section Configuration du [noyau de Greengrass](https://docs.aws.amazon.com/greengrass/v2/developerguide/greengrass-nucleus-component.html#greengrass-nucleus-component-configuration).

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 le format JSON si vous souhaitez afficher les journaux à l'aide de la commande [Greengrass CLI logs](https://docs.aws.amazon.com/greengrass/v2/developerguide/gg-cli-logs.html) ou interagir avec les journaux par programmation. L'exemple suivant décrit la forme JSON :

```
{
   "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 format JSON. Vous devez utiliser le même format que le fichier journal du système.

## Fichier journal local
<a name="log-manager-component-log-file"></a>

Ce composant utilise le même fichier journal que le composant [Greengrass nucleus](greengrass-nucleus-component.md).

------
#### [ 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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par 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
<a name="log-manager-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.3.12  |  Met à jour la version du composant pour la version 2.17.0 de Greengrass Nucleus.  | 
|  2.3.11  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.3.10  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.3.9  |  Version mise à jour pour la version 2.14.0 de Greengrass Nucleus.  | 
|  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  |  <a name="changelog-log-manager-2.3.6"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.3.5  |  <a name="changelog-log-manager-2.3.5"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/log-manager-component.html) Version mise à jour pour la version 2.11.0 de Greengrass Nucleus.  | 
|  2.3.4  |  <a name="changelog-log-manager-2.3.4"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.3.3  |  Version mise à jour pour la version 2.10.0 de Greengrass Nucleus.  | 
|  2.3.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.3.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.3.0  |   Nous vous recommandons de passer à Greengrass nucleus 2.9.1 lors de la mise à niveau vers le gestionnaire de journaux 2.3.0.   [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/log-manager-component.html)  | 
|  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  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.2.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.2.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.2.1  |  Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.  | 
|  2.2.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/log-manager-component.html)  | 
|  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  |  <a name="changelog-log-manager-2.1.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.1.0  |  <a name="changelog-log-manager-2.1.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/log-manager-component.html)  | 
|  2.0.x  |  Première version.  | 

# Composants d'apprentissage automatique
<a name="machine-learning-components"></a>

AWS IoT Greengrass fournit les composants d'apprentissage automatique suivants que vous pouvez déployer sur des appareils pris en charge pour [effectuer des inférences d'apprentissage automatique](perform-machine-learning-inference.md) à l'aide de modèles entraînés par Amazon SageMaker AI ou de vos propres modèles préentraînés stockés dans Amazon S3. <a name="ml-component-types"></a>

AWS fournit les catégories suivantes de composants d'apprentissage automatique :
+ **Composant du modèle** : contient des modèles d'apprentissage automatique sous forme d'artefacts Greengrass.
+ **Composant d'exécution** : contient le script qui installe le framework d'apprentissage automatique et ses dépendances sur le périphérique principal de Greengrass.
+ **Composant d'inférence** : contient le code d'inférence et inclut les dépendances des composants pour installer le framework d'apprentissage automatique et télécharger des modèles d'apprentissage automatique préentraînés.

Vous pouvez utiliser l'exemple de code d'inférence et les modèles préentraînés dans les composants d'apprentissage automatique AWS fournis pour effectuer la classification d'images et la détection d'objets à l'aide de DLR et Lite. TensorFlow Pour effectuer une inférence d'apprentissage automatique personnalisée avec vos propres modèles stockés dans Amazon S3, ou pour utiliser un autre framework d'apprentissage automatique, vous pouvez utiliser les recettes de ces composants publics comme modèles afin de créer des composants d'apprentissage automatique personnalisés. Pour de plus amples informations, veuillez consulter [Personnalisez vos composants d'apprentissage automatique](ml-customization.md).

AWS IoT Greengrass inclut également un composant AWS fourni pour gérer l'installation et le cycle de vie de l'agent SageMaker AI Edge Manager sur les appareils principaux de Greengrass. Avec SageMaker AI Edge Manager, vous pouvez utiliser les modèles compilés par Amazon SageMaker AI Neo directement sur votre appareil principal. Pour de plus amples informations, veuillez consulter [Utiliser Amazon SageMaker AI Edge Manager sur les appareils principaux de Greengrass](use-sagemaker-edge-manager.md).

Le tableau suivant répertorie les composants d'apprentissage automatique disponibles dans AWS IoT Greengrass. 

**Note**  <a name="component-nucleus-dependency-update-note"></a>
Plusieurs composants AWS fournis dépendent de versions mineures spécifiques du noyau Greengrass. En raison de cette dépendance, vous devez mettre à jour ces composants lorsque vous mettez à jour le noyau Greengrass vers une nouvelle version mineure. Pour plus d'informations sur les versions spécifiques du noyau dont dépend chaque composant, consultez la rubrique correspondante sur les composants. Pour plus d'informations sur la mise à jour du noyau, consultez[Mettre à jour le logiciel AWS IoT Greengrass principal (OTA)](update-greengrass-core-v2.md).

<a name="component-table-type-description"></a>Lorsqu'un composant possède un type de composant à la fois générique et Lambda, la version actuelle du composant est le type générique et une version précédente du composant est le type Lambda.


| Composant | Description | [Type de composant](develop-greengrass-components.md#component-types) | Systèmes d'exploitation pris en charge | [Open source](open-source.md) | 
| --- | --- | --- | --- | --- | 
| [SageMaker Gestionnaire AI Edge](sagemaker-edge-manager-component.md) | Déploie l'agent Amazon SageMaker AI Edge Manager sur l'appareil principal de Greengrass. | Générique | Linux, Windows | Non | 
| [Classification des images DLR](dlr-image-classification-component.md) | Composant d'inférence qui utilise le magasin de modèles de classification d'images DLR et le composant d'exécution DLR comme dépendances pour installer le DLR, télécharger des exemples de modèles de classification d'images et effectuer une inférence de classification d'images sur les appareils pris en charge. | Générique | Linux, Windows | Non | 
| [Détection d'objets DLR](dlr-object-detection-component.md) | Composant d'inférence qui utilise le model store de détection d'objets DLR et le composant d'exécution DLR comme dépendances pour installer le DLR, télécharger des exemples de modèles de détection d'objets et effectuer une inférence de détection d'objets sur les appareils pris en charge. | Générique | Linux, Windows | Non | 
| [magasin de modèles de classification d'images DLR](dlr-image-classification-model-store-component.md) | Composant de modèle contenant des exemples de ResNet 50 modèles de classification d'images sous forme d'artefacts Greengrass. | Générique | Linux, Windows | Non | 
| [Model Store dédié à la détection d'objets DLR](dlr-object-detection-model-store-component.md) | Composant de modèle contenant des exemples de modèles de détection YOLOv3 d'objets sous forme d'artefacts Greengrass. | Générique | Linux, Windows | Non | 
| [Temps d'exécution du DLR](dlr-component.md) | Composant d'exécution contenant un script d'installation utilisé pour installer le DLR et ses dépendances sur le périphérique principal de Greengrass. | Générique | Linux, Windows | Non | 
| [TensorFlow Classification d'images Lite](tensorflow-lite-image-classification-component.md) | Composant d'inférence qui utilise le magasin de modèles de classification d'images TensorFlow Lite et le composant d'exécution TensorFlow Lite comme dépendances pour installer TensorFlow Lite, télécharger des exemples de modèles de classification d'images et effectuer une inférence de classification d'images sur les appareils pris en charge. | Générique | Linux, Windows | Non | 
| [TensorFlow Détection d'objets allégée](tensorflow-lite-object-detection-component.md) | Composant d'inférence qui utilise le magasin de modèles de détection d'objets TensorFlow Lite et le composant d'exécution TensorFlow Lite comme dépendances pour installer TensorFlow Lite, télécharger des exemples de modèles de détection d'objets et effectuer une inférence de détection d'objets sur les appareils pris en charge. | Générique | Linux, Windows | Non | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | Composant de modèle contenant un exemple de modèle MobileNet v1 en tant qu'artefact Greengrass. | Générique | Linux, Windows | Non | 
| [TensorFlow Boutique de modèles de détection d'objets Lite](tensorflow-lite-object-detection-model-store-component.md) | Composant de modèle contenant un exemple de MobileNet modèle de détection par injection unique (SSD) sous forme d'artefact Greengrass. | Générique | Linux, Windows | Non | 
| [TensorFlow Temps d'exécution allégé](tensorflow-lite-component.md) | Composant d'exécution contenant un script d'installation utilisé pour installer TensorFlow Lite et ses dépendances sur le périphérique principal de Greengrass. | Générique | Linux, Windows | Non | 

# SageMaker Gestionnaire AI Edge
<a name="sagemaker-edge-manager-component"></a>

**Important**  
SageMaker AI Edge Manager a été abandonné le 26 avril 2024. Pour plus d'informations sur la poursuite du déploiement de vos modèles sur des appareils Edge, consultez [SageMaker AI Edge Manager end of life](https://docs.aws.amazon.com/sagemaker/latest/dg/edge-eol.html).

Le composant Amazon SageMaker AI Edge Manager (`aws.greengrass.SageMakerEdgeManager`) installe le binaire de l'agent SageMaker AI Edge Manager. 

SageMaker AI Edge Manager permet de gérer les modèles pour les appareils de périphérie afin que vous puissiez optimiser, sécuriser, surveiller et gérer les modèles d'apprentissage automatique sur des flottes d'appareils de périphérie. Le composant SageMaker AI Edge Manager installe et gère le cycle de vie de l'agent SageMaker AI Edge Manager sur votre appareil principal. Vous pouvez également utiliser SageMaker AI Edge Manager pour empaqueter et utiliser des modèles compilés par SageMaker AI Neo en tant que composants de modèle sur les appareils principaux de Greengrass. Pour plus d'informations sur l'utilisation de l'agent SageMaker AI Edge Manager sur votre appareil principal, consultez[Utiliser Amazon SageMaker AI Edge Manager sur les appareils principaux de Greengrass](use-sagemaker-edge-manager.md).

SageMaker Le composant AI Edge Manager v1.3.x installe le binaire de l'agent Edge Manager v1.20220822.836f3023. Pour plus d'informations sur les versions binaires de l'agent Edge Manager, consultez la section [Agent Edge Manager](https://docs.aws.amazon.com/sagemaker/latest/dg/edge-device-fleet-about).

**Note**  
Le composant SageMaker AI Edge Manager n'est disponible que dans les versions suivantes Régions AWS :  
USA Est (Ohio)
USA Est (Virginie du Nord)
USA Ouest (Oregon)
UE (Francfort)
UE (Irlande)
Asie-Pacifique (Tokyo)

**Topics**
+ [Versions](#sagemaker-edge-manager-component-versions)
+ [Type](#sagemaker-edge-manager-component-type)
+ [Système d’exploitation](#sagemaker-edge-manager-component-os-support)
+ [Prérequis](#sagemaker-edge-manager-component-requirements)
+ [Dépendances](#sagemaker-edge-manager-component-dependencies)
+ [Configuration](#sagemaker-edge-manager-component-configuration)
+ [Fichier journal local](#sagemaker-edge-manager-component-log-file)
+ [Journal des modifications](#sagemaker-edge-manager-component-changelog)

## Versions
<a name="sagemaker-edge-manager-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 1.3.x
+ 1,2. x
+ 1,1x
+ 1,0 x

## Type
<a name="sagemaker-edge-manager-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="sagemaker-edge-manager-component-os-support"></a>

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

## Prérequis
<a name="sagemaker-edge-manager-component-requirements"></a>

Ce composant répond aux exigences suivantes :<a name="sm-edge-manager-component-reqs"></a>
+ <a name="sm-req-core-device"></a>Un appareil Greengrass principal fonctionnant sous Amazon Linux 2, une plate-forme Linux basée sur Debian (x86\$164 ou Armv8) ou Windows (x86\$164). Si vous n'en avez pas, veuillez consulter [Tutoriel : Débuter avec AWS IoT Greengrass V2](getting-started.md).
+ <a name="sm-req-python"></a>[Python](https://www.python.org/downloads/) 3.6 ou version ultérieure, y compris `pip` pour votre version de Python, installé sur votre appareil principal.
+ Le [rôle d'appareil Greengrass](device-service-role.md) est configuré comme suit : 
  + <a name="sm-req-iam-trust-relationship"></a>Une relation de confiance qui permet `credentials.iot.amazonaws.com` et permet `sagemaker.amazonaws.com` d'assumer le rôle, comme le montre l'exemple de politique IAM suivant.

    ```
    { 
      "Version": "2012-10-17",		 	 	 
      "Statement": [ 
        { 
          "Effect": "Allow", 
          "Principal": {
            "Service": "credentials.iot.amazonaws.com"
           }, 
          "Action": "sts:AssumeRole" 
        },
        { 
          "Effect": "Allow", 
          "Principal": {
            "Service": "sagemaker.amazonaws.com"
          }, 
          "Action": "sts:AssumeRole" 
        } 
      ] 
    }
    ```
  + <a name="sm-req-iam-sagemanakeredgedevicefleetpolicy"></a>La politique gérée par [AmazonSageMakerEdgeDeviceFleetPolicy](https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/service-role/AmazonSageMakerEdgeDeviceFleetPolicy)IAM.
  + <a name="sm-req-iam-s3-putobject"></a>L'`s3:PutObject`action, comme illustré dans l'exemple de politique IAM suivant.

    ```
    {
      "Version": "2012-10-17",		 	 	 
      "Statement": [
        {
          "Action": [
            "s3:PutObject"
          ],
          "Resource": [
            "*"
          ],
          "Effect": "Allow"
        }
      ]
    }
    ```
+ <a name="sm-req-s3-bucket"></a>Un bucket Amazon S3 créé en même temps Compte AWS et en même temps Région AWS que votre appareil principal Greengrass. SageMaker AI Edge Manager nécessite un compartiment S3 pour créer un parc d'appareils Edge et pour stocker des exemples de données provenant de l'exécution d'inférences sur votre appareil. Pour plus d'informations sur la création de compartiments S3, consultez [Getting started with Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/GetStartedWithS3.html).
+ <a name="sm-req-edge-device-fleet"></a>Un parc d'appareils SageMaker AI Edge qui utilise le même alias de AWS IoT rôle que votre appareil principal Greengrass. Pour de plus amples informations, veuillez consulter [Créez un parc d'appareils de pointe](get-started-with-edge-manager-on-greengrass.md#create-edge-device-fleet-for-greengrass).
+ <a name="sm-req-edge-device"></a>Votre appareil principal Greengrass est enregistré en tant qu'appareil Edge dans votre parc d'appareils SageMaker AI Edge. Le nom de l'appareil Edge doit correspondre au nom de l' AWS IoT objet de votre appareil principal. Pour de plus amples informations, veuillez consulter [Enregistrez votre appareil Greengrass Core](get-started-with-edge-manager-on-greengrass.md#register-greengrass-core-device-in-sme).

### Endpoints et ports
<a name="sagemaker-edge-manager-component-endpoints"></a>

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](allow-device-traffic.md).


| Endpoint |  Port | Obligatoire | Description | 
| --- | --- | --- | --- | 
|  `edge.sagemaker.region.amazonaws.com`  | 443 | Oui |  Vérifiez l'état d'enregistrement de l'appareil et envoyez des métriques à l' SageMaker IA.  | 
|  `*.s3.amazonaws.com`  | 443 | Oui |  Téléchargez les données de capture dans le compartiment S3 que vous spécifiez. Vous pouvez le `*` remplacer par le nom de chaque compartiment dans lequel vous chargez des données.  | 

## Dépendances
<a name="sagemaker-edge-manager-component-dependencies"></a>

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](#sagemaker-edge-manager-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 1.3.5 and 1.3.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,13.0 | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | >=0,0.0 | Stricte | 

------
#### [ 1.3.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,12.0 | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | >=0,0.0 | Stricte | 

------
#### [ 1.3.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,11.0 | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | >=0,0.0 | Stricte | 

------
#### [ 1.3.2 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,1,0 | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | >=0,0.0 | Stricte | 

------
#### [ 1.3.1 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,9.0 | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | >=0,0.0 | Stricte | 

------
#### [ 1.1.1 - 1.3.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,8.0 | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | >=0,0.0 | Stricte | 

------
#### [ 1.1.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,6.0 | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | >=0,0.0 | Stricte | 

------
#### [ 1.0.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,5.0 | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | >=0,0.0 | Stricte | 

------
#### [ 1.0.1 and 1.0.2 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,4.0 | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | >=0,0.0 | Stricte | 

------
#### [ 1.0.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,3.0 | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | >=0,0.0 | Stricte | 

------

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="sagemaker-edge-manager-component-configuration"></a>

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

**Note**  
Cette section décrit les paramètres de configuration que vous définissez dans le composant. Pour plus d'informations sur la configuration correspondante d' SageMaker AI Edge Manager, consultez la section [Edge Manager Agent](https://docs.aws.amazon.com/sagemaker/latest/dg/edge-device-fleet-about.html#edge-device-fleet-running-agent) dans le manuel *Amazon SageMaker AI Developer Guide*.

`DeviceFleetName`  
Le nom du parc d'appareils SageMaker AI Edge Manager qui contient votre appareil principal Greengrass.   
Vous devez spécifier une valeur pour ce paramètre dans la mise à jour de configuration lorsque vous déployez ce composant.

`BucketName`  
Nom du compartiment S3 dans lequel vous chargez les données d'inférence capturées. Le nom du bucket doit contenir la chaîne`sagemaker`.   
Si vous définissez sur `CaptureDataDestination``Cloud`, ou si vous définissez sur `CaptureDataPeriodicUpload``true`, vous devez spécifier une valeur pour ce paramètre dans la mise à jour de configuration lorsque vous déployez ce composant.  
La capture de données est une fonctionnalité d' SageMaker intelligence artificielle que vous utilisez pour télécharger des entrées d'inférence, des résultats d'inférence et des données d'inférence supplémentaires dans un compartiment S3 ou un répertoire local en vue d'une analyse future. Pour plus d'informations sur l'utilisation des données de capture avec SageMaker AI Edge Manager, consultez [Manage Model](https://docs.aws.amazon.com/sagemaker/latest/dg/edge-manage-model.html#edge-manage-model-capturedata) dans le manuel *Amazon SageMaker AI Developer Guide*.

`CaptureDataBatchSize`  
(Facultatif) Taille d'un lot de demandes de données de capture traitées par l'agent. Cette valeur doit être inférieure à la taille de la mémoire tampon que vous spécifiez dans`CaptureDataBufferSize`. Nous vous recommandons de ne pas dépasser la moitié de la taille de la mémoire tampon.  
L'agent gère un lot de demandes lorsque le nombre de demandes dans la mémoire tampon correspond à ce `CaptureDataBatchSize` nombre, ou lorsque l'`CaptureDataPushPeriodSeconds`intervalle est écoulé, selon la première éventualité.  
Par défaut : `10`

`CaptureDataBufferSize`  
(Facultatif) Le nombre maximum de demandes de données de capture stockées dans la mémoire tampon.  
Par défaut : `30`

`CaptureDataDestination`  
(Facultatif) La destination où vous stockez les données capturées. Ce paramètre peut présenter les valeurs suivantes :  
+ `Cloud`—Télécharge les données capturées dans le compartiment S3 que vous spécifiez. `BucketName`
+ `Disk`: écrit les données capturées dans le répertoire de travail du composant. 
Si vous le spécifiez`Disk`, vous pouvez également choisir de télécharger régulièrement les données capturées dans votre compartiment S3 en réglant `CaptureDataPeriodicUpload` sur`true`.  
Par défaut : `Cloud`

`CaptureDataPeriodicUpload`  
(Facultatif) Valeur de chaîne qui indique s'il faut télécharger régulièrement les données capturées. Les valeurs prises en charge sont `true` et `false`.  
Définissez ce paramètre sur `true` si vous le définissez `CaptureDataDestination` sur`Disk`, et vous souhaitez également que l'agent télécharge régulièrement les données capturées dans votre compartiment S3.  
Par défaut : `false`

`CaptureDataPeriodicUploadPeriodSeconds`  
(Facultatif) Intervalle en secondes pendant lequel l'agent SageMaker AI Edge Manager télécharge les données capturées dans le compartiment S3. Utilisez ce paramètre si vous définissez `CaptureDataPeriodicUpload` sur`true`.  
Par défaut : `8`

`CaptureDataPushPeriodSeconds`  
(Facultatif) Intervalle en secondes pendant lequel l'agent SageMaker AI Edge Manager traite un lot de demandes de données de capture provenant de la mémoire tampon.   
L'agent gère un lot de demandes lorsque le nombre de demandes dans la mémoire tampon correspond à ce `CaptureDataBatchSize` nombre, ou lorsque l'`CaptureDataPushPeriodSeconds`intervalle est écoulé, selon la première éventualité.  
Par défaut : `4`

`CaptureDataBase64EmbedLimit`  
(Facultatif) Taille maximale en octets des données capturées que l'agent SageMaker AI Edge Manager télécharge.  
Par défaut : `3072`

`FolderPrefix`  
(Facultatif) Nom du dossier dans lequel l'agent écrit les données capturées. Si vous définissez `CaptureDataDestination` cette `Disk` option, l'agent crée le dossier dans le répertoire spécifié par`CaptureDataDiskPath`. Si vous avez défini `CaptureDataDestination` ou défini sur`true`, `CaptureDataPeriodicUpload` l'agent crée le dossier dans votre compartiment S3. `Cloud`   
Par défaut : `sme-capture`

`CaptureDataDiskPath`  
Cette fonctionnalité est disponible dans les versions v1.1.0 et ultérieures du composant SageMaker AI Edge Manager.  
(Facultatif) Le chemin d'accès au dossier dans lequel l'agent crée le dossier de données capturées. Si vous définissez cette `CaptureDataDestination` option`Disk`, l'agent crée le dossier de données capturées dans ce répertoire. Si vous ne spécifiez pas cette valeur, l'agent crée le dossier de données capturées dans le répertoire de travail du composant. Utilisez le `FolderPrefix` paramètre pour spécifier le nom du dossier de données capturé.  
Par défaut : `/greengrass/v2/work/aws.greengrass.SageMakerEdgeManager/capture`

`LocalDataRootPath`  
Cette fonctionnalité est disponible dans les versions v1.2.0 et ultérieures du composant SageMaker AI Edge Manager.  
(Facultatif) Le chemin où ce composant stocke les données suivantes sur le périphérique principal :  
+ La base de données locale pour les données d'exécution lorsque vous définissez `DbEnable` sur`true`.
+ SageMaker Modèles compilés par AI Neo que ce composant télécharge automatiquement lorsque vous le configurez`DeploymentEnable`. `true`
Par défaut : `/greengrass/v2/work/aws.greengrass.SageMakerEdgeManager`

`DbEnable`  
(Facultatif) Vous pouvez activer ce composant pour stocker les données d'exécution dans une base de données locale afin de préserver les données, en cas de panne du composant ou de coupure d'alimentation du périphérique.  
Cette base de données nécessite 5 Mo de stockage sur le système de fichiers de l'appareil principal.  
Par défaut : `false`

`DeploymentEnable`  
Cette fonctionnalité est disponible dans les versions v1.2.0 et ultérieures du composant SageMaker AI Edge Manager.  
(Facultatif) Vous pouvez activer ce composant pour récupérer automatiquement les modèles compilés par SageMaker AI Neo à partir desquels vous les téléchargez sur Amazon S3. Après avoir chargé un nouveau modèle sur Amazon S3, utilisez SageMaker AI Studio ou l'API SageMaker AI pour déployer le nouveau modèle sur cet appareil principal. Lorsque vous activez cette fonctionnalité, vous pouvez déployer de nouveaux modèles sur les appareils principaux sans avoir à créer de AWS IoT Greengrass déploiement.  
Pour utiliser cette fonctionnalité, vous devez `DbEnable` définir sur`true`. Cette fonctionnalité utilise la base de données locale pour suivre les modèles qu'elle extrait du AWS Cloud.
Par défaut : `false`

`DeploymentPollInterval`  
Cette fonctionnalité est disponible dans les versions v1.2.0 et ultérieures du composant SageMaker AI Edge Manager.  
(Facultatif) Durée (en minutes) entre laquelle ce composant vérifie la présence de nouveaux modèles à télécharger. Cette option s'applique lorsque vous définissez `DeploymentEnable` sur`true`.  
Par défaut : `1440` (1 jour)

`DLRBackendOptions`  
Cette fonctionnalité est disponible dans les versions v1.2.0 et ultérieures du composant SageMaker AI Edge Manager.  
(Facultatif) Les indicateurs d'exécution du DLR à définir dans le moteur d'exécution du DLR utilisé par ce composant. Vous pouvez définir le drapeau suivant :  
+ `TVM_TENSORRT_CACHE_DIR`— Active la mise en cache du modèle TensorRT. Spécifiez un chemin absolu vers un dossier existant doté d'autorisations de lecture/écriture.
+ `TVM_TENSORRT_CACHE_DISK_SIZE_MB`— Attribue la limite supérieure du dossier de cache du modèle TensorRT. Lorsque la taille du répertoire dépasse cette limite, les moteurs mis en cache les moins utilisés sont supprimés. La valeur par défaut est de 512 Mo.
Par exemple, vous pouvez définir ce paramètre sur la valeur suivante pour activer la mise en cache du modèle TensorRT et limiter la taille du cache à 800 Mo.  

```
TVM_TENSORRT_CACHE_DIR=/data/secured_folder/trt/cache; TVM_TENSORRT_CACHE_DISK_SIZE_MB=800
```

`SagemakerEdgeLogVerbose`  
(Facultatif) Valeur de chaîne qui indique s'il faut activer la journalisation du débogage. Les valeurs prises en charge sont `true` et `false`.  
Par défaut : `false`

`UnixSocketName`  
(Facultatif) Emplacement du descripteur de fichier de socket SageMaker AI Edge Manager sur le périphérique principal.  
Par défaut : `/tmp/aws.greengrass.SageMakerEdgeManager.sock`

**Example Exemple : mise à jour de la fusion de configurations**  
L'exemple de configuration suivant indique que le périphérique principal fait partie du *MyEdgeDeviceFleet* et que l'agent écrit les données de capture à la fois sur le périphérique et dans un compartiment S3. Cette configuration permet également la journalisation du débogage.  

```
{
    "DeviceFleetName": "MyEdgeDeviceFleet",
    "BucketName": "amzn-s3-demo-bucket",
    "CaptureDataDestination": "Disk",
    "CaptureDataPeriodicUpload": "true",
    "SagemakerEdgeLogVerbose": "true"    
}
```

## Fichier journal local
<a name="sagemaker-edge-manager-component-log-file"></a>

Ce composant utilise le fichier journal suivant.

------
#### [ Linux ]

```
/greengrass/v2/logs/aws.greengrass.SageMakerEdgeManager.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\aws.greengrass.SageMakerEdgeManager.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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par le chemin d'accès au dossier AWS IoT Greengrass racine.

------
#### [ Linux ]

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

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.greengrass.SageMakerEdgeManager.log -Tail 10 -Wait
  ```

------

## Journal des modifications
<a name="sagemaker-edge-manager-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  1.3.6  |  Version mise à jour pour la version 2.12.5 de Greengrass Nucleus.  | 
|  1.3.5  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  1.3.4  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  1.3.3  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. | 
|  1.3.2  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  1.3.1  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  1.3.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/sagemaker-edge-manager-component.html)  | 
|  1.2.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/sagemaker-edge-manager-component.html)  | 
|  1.1.1  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  1.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/sagemaker-edge-manager-component.html)  | 
|  1.0.3  |  Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.  | 
|  1.0.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/sagemaker-edge-manager-component.html)  | 
|  1.0.1  |  Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.  | 
|  1.0.0  |  Première version.  | 

# Classification des images DLR
<a name="dlr-image-classification-component"></a>

Le composant de classification d'images DLR (`aws.greengrass.DLRImageClassification`) contient un exemple de code d'inférence permettant d'effectuer une inférence de classification d'images à l'aide des modèles [Deep Learning Runtime](https://github.com/neo-ai/neo-ai-dlr) et Resnet-50. Ce composant utilise la variante [magasin de modèles de classification d'images DLR](dlr-image-classification-model-store-component.md) et les [Temps d'exécution du DLR](dlr-component.md) composants comme dépendances pour télécharger le DLR et les exemples de modèles. 

Pour utiliser ce composant d'inférence avec un modèle DLR entraîné sur mesure, [créez une version personnalisée](ml-customization.md#override-public-model-store) du composant Model Store dépendant. Pour utiliser votre propre code d'inférence personnalisé, vous pouvez utiliser la recette de ce composant comme modèle pour [créer un composant d'inférence personnalisé](ml-customization.md#create-inference-component).

**Topics**
+ [Versions](#dlr-image-classification-component-versions)
+ [Type](#dlr-image-classification-component-type)
+ [Système d’exploitation](#dlr-image-classification-component-os-support)
+ [Prérequis](#dlr-image-classification-component-requirements)
+ [Dépendances](#dlr-image-classification-component-dependencies)
+ [Configuration](#dlr-image-classification-component-configuration)
+ [Fichier journal local](#dlr-image-classification-component-log-file)
+ [Journal des modifications](#dlr-image-classification-component-changelog)

## Versions
<a name="dlr-image-classification-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2,1x
+ 2,0.x

## Type
<a name="dlr-image-classification-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="dlr-image-classification-component-os-support"></a>

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

## Prérequis
<a name="dlr-image-classification-component-requirements"></a>

Ce composant répond aux exigences suivantes :<a name="ml-component-requirements"></a>
+ Sur les appareils principaux de Greengrass exécutant Amazon Linux 2 ou Ubuntu 18.04, la version 2.27 ou ultérieure de la [bibliothèque GNU C](https://www.gnu.org/software/libc/) (glibc) est installée sur l'appareil.
+ Sur les appareils ARMv7L, tels que Raspberry Pi, les dépendances pour OpenCV-Python sont installées sur l'appareil. Exécutez la commande suivante pour installer les dépendances.

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ Les appareils Raspberry Pi qui exécutent le système d'exploitation Raspberry Pi Bullseye doivent répondre aux exigences suivantes :
  + NumPy 1.22.4 ou version ultérieure installée sur l'appareil. Raspberry Pi OS Bullseye inclut une version antérieure de NumPy. Vous pouvez donc exécuter la commande suivante pour effectuer la mise à niveau NumPy sur l'appareil.

    ```
    pip3 install --upgrade numpy
    ```
  + L'ancienne pile de caméras activée sur l'appareil. Raspberry Pi OS Bullseye inclut une nouvelle pile de caméras activée par défaut et non compatible. Vous devez donc activer la pile de caméras existante.<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**Pour activer l'ancienne pile de caméras**

    1. Exécutez la commande suivante pour ouvrir l'outil de configuration du Raspberry Pi.

       ```
       sudo raspi-config
       ```

    1. Sélectionnez **Options d'interface**.

    1. Sélectionnez **Legacy camera** pour activer l'ancienne pile de caméras.

    1. Redémarrez l'appareil Raspberry Pi.

## Dépendances
<a name="dlr-image-classification-component-dependencies"></a>

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](#dlr-image-classification-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.1.13 and 2.1.14 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,13,0 | Flexible | 
| [magasin de modèles de classification d'images DLR](dlr-image-classification-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 2.1.12 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,12.0 | Flexible | 
| [magasin de modèles de classification d'images DLR](dlr-image-classification-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 2.1.11 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,11.0 | Flexible | 
| [magasin de modèles de classification d'images DLR](dlr-image-classification-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 2.1.10 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,1,0 | Flexible | 
| [magasin de modèles de classification d'images DLR](dlr-image-classification-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 2.1.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,9.0 | Flexible | 
| [magasin de modèles de classification d'images DLR](dlr-image-classification-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 2.1.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,8.0 | Flexible | 
| [magasin de modèles de classification d'images DLR](dlr-image-classification-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 2.1.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,7.0 | Flexible | 
| [magasin de modèles de classification d'images DLR](dlr-image-classification-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 2.1.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,6.0 | Flexible | 
| [magasin de modèles de classification d'images DLR](dlr-image-classification-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 2.1.4 - 2.1.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,5.0 | Flexible | 
| [magasin de modèles de classification d'images DLR](dlr-image-classification-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 2.1.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,4.0 | Flexible | 
| [magasin de modèles de classification d'images DLR](dlr-image-classification-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) | >=2,0.0 <2,3.0 | Flexible | 
| [magasin de modèles de classification d'images DLR](dlr-image-classification-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) | >=2,0.0 <2,2.0 | Flexible | 
| [magasin de modèles de classification d'images DLR](dlr-image-classification-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) | \$12,0.0 | Flexible | 
| magasin de modèles de classification d'images DLR | \$12,0.0 | Stricte | 
| DLR | \$11,3,0 | Flexible | 

------

## Configuration
<a name="dlr-image-classification-component-configuration"></a>

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

------
#### [ 2.1.x ]

`accessControl`  
<a name="ml-config-accesscontrol-desc"></a>(Facultatif) Objet contenant la [politique d'autorisation](interprocess-communication.md#ipc-authorization-policies) qui permet au composant de publier des messages dans la rubrique de notifications par défaut.   
Par défaut :   

```
{
   "aws.greengrass.ipc.mqttproxy": {
      "aws.greengrass.DLRImageClassification:mqttproxy:1": {
         "policyDescription": "Allows access to publish via topic ml/dlr/image-classification.",
         "operations": [
            "aws.greengrass#PublishToIoTCore"
         ],
         "resources": [
            "ml/dlr/image-classification"
         ]
      }
   }
}
```

`PublishResultsOnTopic`  
<a name="ml-config-publishresultsontopic-desc"></a>(Facultatif) Rubrique sur laquelle vous souhaitez publier les résultats de l'inférence. Si vous modifiez cette valeur, vous devez également modifier la valeur de `resources` dans le `accessControl` paramètre pour qu'elle corresponde au nom de votre rubrique personnalisée.  
Par défaut : `ml/dlr/image-classification`

`Accelerator`  <a name="ml-config-accelerator"></a>
L'accélérateur que vous souhaitez utiliser. Les valeurs prises en charge sont `cpu` et `gpu`.  
Les modèles d'exemple du composant du modèle dépendant ne prennent en charge que l'accélération du processeur. Pour utiliser l'accélération GPU avec un autre modèle personnalisé, [créez un composant de modèle personnalisé](ml-customization.md#override-public-model-store) pour remplacer le composant de modèle public.  
Par défaut : `cpu`

`ImageDirectory`  
<a name="ml-config-imagedirectory-desc"></a>(Facultatif) Le chemin du dossier sur le périphérique où les composants d'inférence lisent les images. Vous pouvez modifier cette valeur en fonction de n'importe quel emplacement de votre appareil auquel vous avez read/write accès.  
<a name="ml-config-imagedirectory-img-default"></a>Par défaut : `/greengrass/v2/packages/artifacts-unarchived/component-name/image_classification/sample_images/`  
Si vous définissez la valeur de `UseCamera` to`true`, ce paramètre de configuration est ignoré. 

`ImageName`  
<a name="ml-config-imagename-desc"></a>(Facultatif) Nom de l'image que le composant d'inférence utilise comme entrée pour effectuer une prédiction. Le composant recherche l'image dans le dossier spécifié dans`ImageDirectory`. Par défaut, le composant utilise l'image d'exemple dans le répertoire d'images par défaut. AWS IoT Greengrass prend en charge les formats d'image suivants : `jpeg``jpg`,`png`, et`npy`.   
<a name="ml-config-imagename-img-default"></a>Par défaut : `cat.jpeg`  
Si vous définissez la valeur de `UseCamera` to`true`, ce paramètre de configuration est ignoré. 

`InferenceInterval`  <a name="ml-config-inferenceinterval"></a>
(Facultatif) Le délai en secondes entre chaque prédiction effectuée par le code d'inférence. L'exemple de code d'inférence s'exécute indéfiniment et répète ses prédictions à l'intervalle de temps spécifié. Par exemple, vous pouvez réduire cet intervalle si vous souhaitez utiliser des images prises par une caméra pour des prévisions en temps réel.  
Par défaut : `3600`

`ModelResourceKey`  <a name="ml-config-modelresourcekey"></a>
<a name="ml-config-modelresourcekey-desc"></a>(Facultatif) Les modèles utilisés dans le composant de modèle public dépendant. Modifiez ce paramètre uniquement si vous remplacez le composant du modèle public par un composant personnalisé.   
Par défaut :  

```
{
    "armv7l": "DLR-resnet50-armv7l-cpu-ImageClassification",
    "aarch64": "DLR-resnet50-aarch64-cpu-ImageClassification",
    "x86_64": "DLR-resnet50-x86_64-cpu-ImageClassification",
    "windows": "DLR-resnet50-win-cpu-ImageClassification"
}
```

`UseCamera`  <a name="ml-config-usecamera"></a>
(Facultatif) Valeur de chaîne qui définit s'il faut utiliser les images d'une caméra connectée au périphérique principal de Greengrass. Les valeurs prises en charge sont `true` et `false`.  
Lorsque vous définissez cette valeur sur`true`, l'exemple de code d'inférence accède à la caméra de votre appareil et exécute l'inférence localement sur l'image capturée. Les valeurs des `ImageDirectory` paramètres `ImageName` et sont ignorées. Assurez-vous que l'utilisateur exécutant ce composant a read/write accès à l'emplacement où l'appareil photo stocke les images capturées.  
Par défaut : `false`  
Lorsque vous consultez la recette de ce composant, le paramètre `UseCamera` de configuration n'apparaît pas dans la configuration par défaut. Toutefois, vous pouvez modifier la valeur de ce paramètre dans une mise à [jour de fusion de configuration](update-component-configurations.md) lorsque vous déployez le composant.   
Lorsque vous définissez sur `UseCamera``true`, vous devez également créer un lien symbolique pour permettre au composant d'inférence d'accéder à votre caméra depuis l'environnement virtuel créé par le composant d'exécution. Pour plus d'informations sur l'utilisation d'une caméra avec les composants d'inférence d'échantillons, consultez[Mettre à jour les configurations des composants](ml-tutorial-image-classification-camera.md).

------
#### [ 2.0.x ]

`MLRootPath`  <a name="ml-config-mlrootpath"></a>
<a name="ml-config-mlrootpath-desc"></a>(Facultatif) Le chemin du dossier sur les périphériques principaux Linux où les composants d'inférence lisent les images et écrivent les résultats d'inférence. Vous pouvez modifier cette valeur à n'importe quel emplacement de votre appareil auquel l'utilisateur exécutant ce composant a read/write accès.  
<a name="ml-config-mlrootpath-default-dlr"></a>Par défaut : `/greengrass/v2/work/variant.DLR/greengrass_ml`  
<a name="ml-config-mlrootpath-default-tfl"></a>Par défaut : `/greengrass/v2/work/variant.TensorFlowLite/greengrass_ml`

`Accelerator`  <a name="ml-config-accelerator"></a>
L'accélérateur que vous souhaitez utiliser. Les valeurs prises en charge sont `cpu` et `gpu`.  
Les modèles d'exemple du composant du modèle dépendant ne prennent en charge que l'accélération du processeur. Pour utiliser l'accélération GPU avec un autre modèle personnalisé, [créez un composant de modèle personnalisé](ml-customization.md#override-public-model-store) pour remplacer le composant de modèle public.  
Par défaut : `cpu`

`ImageName`  
<a name="ml-config-imagename-desc-dlr-1.3.0"></a>(Facultatif) Nom de l'image que le composant d'inférence utilise comme entrée pour effectuer une prédiction. Le composant recherche l'image dans le dossier spécifié dans`ImageDirectory`. L'emplacement par défaut est`MLRootPath/images`. AWS IoT Greengrass prend en charge les formats d'image suivants : `jpeg``jpg`,`png`, et`npy`.   
<a name="ml-config-imagename-img-default"></a>Par défaut : `cat.jpeg`

`InferenceInterval`  <a name="ml-config-inferenceinterval"></a>
(Facultatif) Le délai en secondes entre chaque prédiction effectuée par le code d'inférence. L'exemple de code d'inférence s'exécute indéfiniment et répète ses prédictions à l'intervalle de temps spécifié. Par exemple, vous pouvez réduire cet intervalle si vous souhaitez utiliser des images prises par une caméra pour des prévisions en temps réel.  
Par défaut : `3600`

`ModelResourceKey`  <a name="ml-config-modelresourcekey"></a>
<a name="ml-config-modelresourcekey-desc"></a>(Facultatif) Les modèles utilisés dans le composant de modèle public dépendant. Modifiez ce paramètre uniquement si vous remplacez le composant du modèle public par un composant personnalisé.   
Par défaut :  

```
armv7l: "DLR-resnet50-armv7l-cpu-ImageClassification"
x86_64: "DLR-resnet50-x86_64-cpu-ImageClassification"
```

------

## Fichier journal local
<a name="dlr-image-classification-component-log-file"></a>

Ce composant utilise le fichier journal suivant.

------
#### [ Linux ]

```
/greengrass/v2/logs/aws.greengrass.DLRImageClassification.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\aws.greengrass.DLRImageClassification.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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par le chemin d'accès au dossier AWS IoT Greengrass racine.

------
#### [ Linux ]

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

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.greengrass.DLRImageClassification.log -Tail 10 -Wait
  ```

------

## Journal des modifications
<a name="dlr-image-classification-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.1.14  | Version mise à jour pour la version 2.12.5 de Greengrass Nucleus. | 
|  2.1.13  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  2.1.12  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  2.1.11  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. | 
|  2.1.10  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  2.1.9  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  2.1.8  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  2.1.7  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  2.1.6  |  Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.  | 
|  2.1.5  |  Le composant a été publié dans son intégralité Régions AWS.  | 
|  2.1.4  |  Version mise à jour pour la version 2.4.0 de Greengrass Nucleus. Cette version n'est pas disponible en Europe (Londres) (`eu-west-2`).  | 
|  2.1.3  |  Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.  | 
|  2.1.2  |  Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.  | 
|  2.1.1  |  <a name="changelog-dlr-image-classification-2.1.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/dlr-image-classification-component.html)  | 
|  2.0.4  |  Première version.  | 

# Détection d'objets DLR
<a name="dlr-object-detection-component"></a>

Le composant de détection d'objets DLR (`aws.greengrass.DLRObjectDetection`) contient un exemple de code d'inférence pour effectuer une inférence de détection d'objets à l'aide du [Deep Learning Runtime](https://github.com/neo-ai/neo-ai-dlr) et des exemples de modèles préentraînés. Ce composant utilise la variante [Model Store dédié à la détection d'objets DLR](dlr-object-detection-model-store-component.md) et les [Temps d'exécution du DLR](dlr-component.md) composants comme dépendances pour télécharger le DLR et les exemples de modèles. 

Pour utiliser ce composant d'inférence avec un modèle DLR entraîné sur mesure, [créez une version personnalisée](ml-customization.md#override-public-model-store) du composant Model Store dépendant. Pour utiliser votre propre code d'inférence personnalisé, vous pouvez utiliser la recette de ce composant comme modèle pour [créer un composant d'inférence personnalisé](ml-customization.md#create-inference-component).

**Topics**
+ [Versions](#dlr-object-detection-component-versions)
+ [Type](#dlr-object-detection-component-type)
+ [Système d’exploitation](#dlr-object-detection-component-os-support)
+ [Prérequis](#dlr-object-detection-component-requirements)
+ [Dépendances](#dlr-object-detection-component-dependencies)
+ [Configuration](#dlr-object-detection-component-configuration)
+ [Fichier journal local](#dlr-object-detection-component-log-file)
+ [Journal des modifications](#dlr-object-detection-component-changelog)

## Versions
<a name="dlr-object-detection-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2,1x
+ 2,0.x

## Type
<a name="dlr-object-detection-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="dlr-object-detection-component-os-support"></a>

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

## Prérequis
<a name="dlr-object-detection-component-requirements"></a>

Ce composant répond aux exigences suivantes :<a name="ml-component-requirements"></a>
+ Sur les appareils principaux de Greengrass exécutant Amazon Linux 2 ou Ubuntu 18.04, la version 2.27 ou ultérieure de la [bibliothèque GNU C](https://www.gnu.org/software/libc/) (glibc) est installée sur l'appareil.
+ Sur les appareils ARMv7L, tels que Raspberry Pi, les dépendances pour OpenCV-Python sont installées sur l'appareil. Exécutez la commande suivante pour installer les dépendances.

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ Les appareils Raspberry Pi qui exécutent le système d'exploitation Raspberry Pi Bullseye doivent répondre aux exigences suivantes :
  + NumPy 1.22.4 ou version ultérieure installée sur l'appareil. Raspberry Pi OS Bullseye inclut une version antérieure de NumPy. Vous pouvez donc exécuter la commande suivante pour effectuer la mise à niveau NumPy sur l'appareil.

    ```
    pip3 install --upgrade numpy
    ```
  + L'ancienne pile de caméras activée sur l'appareil. Raspberry Pi OS Bullseye inclut une nouvelle pile de caméras qui est activée par défaut et qui n'est pas compatible. Vous devez donc activer la pile de caméras existante.<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**Pour activer l'ancienne pile de caméras**

    1. Exécutez la commande suivante pour ouvrir l'outil de configuration du Raspberry Pi.

       ```
       sudo raspi-config
       ```

    1. Sélectionnez **Options d'interface**.

    1. Sélectionnez **Legacy camera** pour activer l'ancienne pile de caméras.

    1. Redémarrez l'appareil Raspberry Pi.

## Dépendances
<a name="dlr-object-detection-component-dependencies"></a>

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](#dlr-object-detection-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.1.13 and 2.1.14 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,13,0 | Flexible | 
| [Model Store dédié à la détection d'objets DLR](dlr-object-detection-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 2.1.12 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,12.0 | Flexible | 
| [Model Store dédié à la détection d'objets DLR](dlr-object-detection-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 2.1.11 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,11.0 | Flexible | 
| [Model Store dédié à la détection d'objets DLR](dlr-object-detection-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 2.1.10 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,1,0 | Flexible | 
| [Model Store dédié à la détection d'objets DLR](dlr-object-detection-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 2.1.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,9.0 | Flexible | 
| [Model Store dédié à la détection d'objets DLR](dlr-object-detection-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 2.1.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,8.0 | Flexible | 
| [Model Store dédié à la détection d'objets DLR](dlr-object-detection-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 2.1.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,7.0 | Flexible | 
| [Model Store dédié à la détection d'objets DLR](dlr-object-detection-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 2.1.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,6.0 | Flexible | 
| [Model Store dédié à la détection d'objets DLR](dlr-object-detection-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 2.1.4 - 2.1.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,5.0 | Flexible | 
| [Model Store dédié à la détection d'objets DLR](dlr-object-detection-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 2.1.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,4.0 | Flexible | 
| [Model Store dédié à la détection d'objets DLR](dlr-object-detection-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) | >=2,0.0 <2,3.0 | Flexible | 
| [Model Store dédié à la détection d'objets DLR](dlr-object-detection-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) | >=2,0.0 <2,2.0 | Flexible | 
| [Model Store dédié à la détection d'objets DLR](dlr-object-detection-model-store-component.md) | \$12,10 | Stricte | 
| [DLR](dlr-component.md) | \$11,6,0 | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) | \$12,0.0 | Flexible | 
| Model Store dédié à la détection d'objets DLR | \$12,0.0 | Stricte | 
| DLR | \$11,3,0 | Flexible | 

------

## Configuration
<a name="dlr-object-detection-component-configuration"></a>

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

------
#### [ 2.1.x ]

`accessControl`  
<a name="ml-config-accesscontrol-desc"></a>(Facultatif) Objet contenant la [politique d'autorisation](interprocess-communication.md#ipc-authorization-policies) qui permet au composant de publier des messages dans la rubrique de notifications par défaut.   
Par défaut :   

```
{
   "aws.greengrass.ipc.mqttproxy": {
      "aws.greengrass.DLRObjectDetection:mqttproxy:1": {
         "policyDescription": "Allows access to publish via topic ml/dlr/object-detection.",
         "operations": [
            "aws.greengrass#PublishToIoTCore"
         ],
         "resources": [
            "ml/dlr/object-detection"
         ]
      }
   }
}
```

`PublishResultsOnTopic`  
<a name="ml-config-publishresultsontopic-desc"></a>(Facultatif) Rubrique sur laquelle vous souhaitez publier les résultats de l'inférence. Si vous modifiez cette valeur, vous devez également modifier la valeur de `resources` dans le `accessControl` paramètre pour qu'elle corresponde au nom de votre rubrique personnalisée.  
Par défaut : `ml/dlr/object-detection`

`Accelerator`  <a name="ml-config-accelerator"></a>
L'accélérateur que vous souhaitez utiliser. Les valeurs prises en charge sont `cpu` et `gpu`.  
Les modèles d'exemple du composant du modèle dépendant ne prennent en charge que l'accélération du processeur. Pour utiliser l'accélération GPU avec un autre modèle personnalisé, [créez un composant de modèle personnalisé](ml-customization.md#override-public-model-store) pour remplacer le composant de modèle public.  
Par défaut : `cpu`

`ImageDirectory`  
<a name="ml-config-imagedirectory-desc"></a>(Facultatif) Le chemin du dossier sur le périphérique où les composants d'inférence lisent les images. Vous pouvez modifier cette valeur en fonction de n'importe quel emplacement de votre appareil auquel vous avez read/write accès.  
<a name="ml-config-imagedirectory-obj-default"></a>Par défaut : `/greengrass/v2/packages/artifacts-unarchived/component-name/object_detection/sample_images/`  
Si vous définissez la valeur de `UseCamera` to`true`, ce paramètre de configuration est ignoré. 

`ImageName`  
<a name="ml-config-imagename-desc"></a>(Facultatif) Nom de l'image que le composant d'inférence utilise comme entrée pour effectuer une prédiction. Le composant recherche l'image dans le dossier spécifié dans`ImageDirectory`. Par défaut, le composant utilise l'image d'exemple dans le répertoire d'images par défaut. AWS IoT Greengrass prend en charge les formats d'image suivants : `jpeg``jpg`,`png`, et`npy`.   
<a name="ml-config-imagename-obj-default"></a>Par défaut : `objects.jpg`  
Si vous définissez la valeur de `UseCamera` to`true`, ce paramètre de configuration est ignoré. 

`InferenceInterval`  <a name="ml-config-inferenceinterval"></a>
(Facultatif) Le délai en secondes entre chaque prédiction effectuée par le code d'inférence. L'exemple de code d'inférence s'exécute indéfiniment et répète ses prédictions à l'intervalle de temps spécifié. Par exemple, vous pouvez réduire cet intervalle si vous souhaitez utiliser des images prises par une caméra pour des prévisions en temps réel.  
Par défaut : `3600`

`ModelResourceKey`  <a name="ml-config-modelresourcekey"></a>
<a name="ml-config-modelresourcekey-desc"></a>(Facultatif) Les modèles utilisés dans le composant de modèle public dépendant. Modifiez ce paramètre uniquement si vous remplacez le composant du modèle public par un composant personnalisé.   
Par défaut :  

```
{
    "armv7l": "DLR-yolo3-armv7l-cpu-ObjectDetection",
    "aarch64": "DLR-yolo3-aarch64-gpu-ObjectDetection",
    "x86_64": "DLR-yolo3-x86_64-cpu-ObjectDetection",
    "windows": "DLR-resnet50-win-cpu-ObjectDetection"
}
```

`UseCamera`  <a name="ml-config-usecamera"></a>
(Facultatif) Valeur de chaîne qui définit s'il faut utiliser les images d'une caméra connectée au périphérique principal de Greengrass. Les valeurs prises en charge sont `true` et `false`.  
Lorsque vous définissez cette valeur sur`true`, l'exemple de code d'inférence accède à la caméra de votre appareil et exécute l'inférence localement sur l'image capturée. Les valeurs des `ImageDirectory` paramètres `ImageName` et sont ignorées. Assurez-vous que l'utilisateur exécutant ce composant a read/write accès à l'emplacement où l'appareil photo stocke les images capturées.  
Par défaut : `false`  
Lorsque vous consultez la recette de ce composant, le paramètre `UseCamera` de configuration n'apparaît pas dans la configuration par défaut. Toutefois, vous pouvez modifier la valeur de ce paramètre dans une mise à [jour de fusion de configuration](update-component-configurations.md) lorsque vous déployez le composant.   
Lorsque vous définissez sur `UseCamera``true`, vous devez également créer un lien symbolique pour permettre au composant d'inférence d'accéder à votre caméra depuis l'environnement virtuel créé par le composant d'exécution. Pour plus d'informations sur l'utilisation d'une caméra avec les composants d'inférence d'échantillons, consultez[Mettre à jour les configurations des composants](ml-tutorial-image-classification-camera.md).

------
#### [ 2.0.x ]

`MLRootPath`  <a name="ml-config-mlrootpath"></a>
<a name="ml-config-mlrootpath-desc"></a>(Facultatif) Le chemin du dossier sur les périphériques principaux Linux où les composants d'inférence lisent les images et écrivent les résultats d'inférence. Vous pouvez modifier cette valeur à n'importe quel emplacement de votre appareil auquel l'utilisateur exécutant ce composant a read/write accès.  
<a name="ml-config-mlrootpath-default-dlr"></a>Par défaut : `/greengrass/v2/work/variant.DLR/greengrass_ml`  
<a name="ml-config-mlrootpath-default-tfl"></a>Par défaut : `/greengrass/v2/work/variant.TensorFlowLite/greengrass_ml`

`Accelerator`  
Ne le modifiez pas. Actuellement, la seule valeur prise en charge pour l'accélérateur est `cpu` que les modèles des composants du modèle dépendant sont compilés uniquement pour l'accélérateur CPU.

`ImageName`  
<a name="ml-config-imagename-desc-dlr-1.3.0"></a>(Facultatif) Nom de l'image que le composant d'inférence utilise comme entrée pour effectuer une prédiction. Le composant recherche l'image dans le dossier spécifié dans`ImageDirectory`. L'emplacement par défaut est`MLRootPath/images`. AWS IoT Greengrass prend en charge les formats d'image suivants : `jpeg``jpg`,`png`, et`npy`.   
<a name="ml-config-imagename-obj-default"></a>Par défaut : `objects.jpg`

`InferenceInterval`  <a name="ml-config-inferenceinterval"></a>
(Facultatif) Le délai en secondes entre chaque prédiction effectuée par le code d'inférence. L'exemple de code d'inférence s'exécute indéfiniment et répète ses prédictions à l'intervalle de temps spécifié. Par exemple, vous pouvez réduire cet intervalle si vous souhaitez utiliser des images prises par une caméra pour des prévisions en temps réel.  
Par défaut : `3600`

`ModelResourceKey`  <a name="ml-config-modelresourcekey"></a>
<a name="ml-config-modelresourcekey-desc"></a>(Facultatif) Les modèles utilisés dans le composant de modèle public dépendant. Modifiez ce paramètre uniquement si vous remplacez le composant du modèle public par un composant personnalisé.   
Par défaut :  

```
{
    armv7l: "DLR-yolo3-armv7l-cpu-ObjectDetection",
    x86_64: "DLR-yolo3-x86_64-cpu-ObjectDetection"
}
```

------

## Fichier journal local
<a name="dlr-object-detection-component-log-file"></a>

Ce composant utilise le fichier journal suivant.

------
#### [ Linux ]

```
/greengrass/v2/logs/aws.greengrass.DLRObjectDetection.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\aws.greengrass.DLRObjectDetection.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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par le chemin d'accès au dossier AWS IoT Greengrass racine.

------
#### [ Linux ]

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

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.greengrass.DLRObjectDetection.log -Tail 10 -Wait
  ```

------

## Journal des modifications
<a name="dlr-object-detection-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.1.14  | Version mise à jour pour la version 2.12.5 de Greengrass Nucleus. | 
|  2.1.13  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  2.1.12  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  2.1.11  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. | 
|  2.1.10  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  2.1.9  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  2.1.8  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  2.1.7  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  2.1.6  |  Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.  | 
|  2.1.5  |  Composant publié dans son intégralité Régions AWS.  | 
|  2.1.4  |  Version mise à jour pour la version 2.4.0 de Greengrass Nucleus. Cette version n'est pas disponible en Europe (Londres) (`eu-west-2`).  | 
|  2.1.3  |  Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.  | 
|  2.1.2  |  <a name="changelog-dlr-object-detection-2.1.2"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/dlr-object-detection-component.html)  | 
|  2.1.1  |  <a name="changelog-dlr-object-detection-2.1.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/dlr-object-detection-component.html)  | 
|  2.0.4  |  Première version.  | 

# magasin de modèles de classification d'images DLR
<a name="dlr-image-classification-model-store-component"></a>

Le magasin de modèles de classification d'images DLR est un composant de modèle d'apprentissage automatique qui contient des modèles ResNet -50 pré-entraînés sous forme d'artefacts Greengrass. [Les modèles pré-entraînés utilisés dans ce composant sont extraits du [GluonCV Model Zoo](https://cv.gluon.ai/model_zoo/index.html) et compilés à l'aide d' SageMaker AI Neo Deep Learning Runtime.](https://github.com/neo-ai/neo-ai-dlr)

Le composant d'inférence de [classification d'images DLR](dlr-image-classification-component.md) utilise ce composant comme dépendance pour la source du modèle. Pour utiliser un modèle DLR entraîné sur mesure, [créez une version personnalisée](ml-customization.md#override-public-model-store) de ce composant de modèle et incluez votre modèle personnalisé en tant qu'artefact de composant. Vous pouvez utiliser la recette de ce composant comme modèle pour créer des composants de modèle personnalisés. 

**Note**  
Le nom du composant Model Store de classification d'images DLR varie en fonction de sa version. Le nom du composant pour la version 2.1.x et les versions ultérieures est`variant.DLR.ImageClassification.ModelStore`. Le nom du composant pour la version 2.0.x est. `variant.ImageClassification.ModelStore`

**Topics**
+ [Versions](#dlr-image-classification-model-store-component-versions)
+ [Type](#dlr-image-classification-model-store-component-type)
+ [Système d’exploitation](#dlr-image-classification-model-store-component-os-support)
+ [Prérequis](#dlr-image-classification-model-store-component-requirements)
+ [Dépendances](#dlr-image-classification-model-store-component-dependencies)
+ [Configuration](#dlr-image-classification-model-store-component-configuration)
+ [Fichier journal local](#dlr-image-classification-model-store-component-log-file)
+ [Journal des modifications](#dlr-image-classification-model-store-component-changelog)

## Versions
<a name="dlr-image-classification-model-store-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2,1x () `variant.DLR.ImageClassification.ModelStore` 
+ 2,0.x () `variant.ImageClassification.ModelStore` 

## Type
<a name="dlr-image-classification-model-store-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="dlr-image-classification-model-store-component-os-support"></a>

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

## Prérequis
<a name="dlr-image-classification-model-store-component-requirements"></a>

Ce composant répond aux exigences suivantes :<a name="ml-component-requirements"></a>
+ Sur les appareils principaux de Greengrass exécutant Amazon Linux 2 ou Ubuntu 18.04, la version 2.27 ou ultérieure de la [bibliothèque GNU C](https://www.gnu.org/software/libc/) (glibc) est installée sur l'appareil.
+ Sur les appareils ARMv7L, tels que Raspberry Pi, les dépendances pour OpenCV-Python sont installées sur l'appareil. Exécutez la commande suivante pour installer les dépendances.

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ Les appareils Raspberry Pi qui exécutent le système d'exploitation Raspberry Pi Bullseye doivent répondre aux exigences suivantes :
  + NumPy 1.22.4 ou version ultérieure installée sur l'appareil. Raspberry Pi OS Bullseye inclut une version antérieure de NumPy. Vous pouvez donc exécuter la commande suivante pour effectuer la mise à niveau NumPy sur l'appareil.

    ```
    pip3 install --upgrade numpy
    ```
  + L'ancienne pile de caméras activée sur l'appareil. Raspberry Pi OS Bullseye inclut une nouvelle pile de caméras qui est activée par défaut et qui n'est pas compatible. Vous devez donc activer la pile de caméras existante.<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**Pour activer l'ancienne pile de caméras**

    1. Exécutez la commande suivante pour ouvrir l'outil de configuration du Raspberry Pi.

       ```
       sudo raspi-config
       ```

    1. Sélectionnez **Options d'interface**.

    1. Sélectionnez **Legacy camera** pour activer l'ancienne pile de caméras.

    1. Redémarrez l'appareil Raspberry Pi.

## Dépendances
<a name="dlr-image-classification-model-store-component-dependencies"></a>

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](#dlr-image-classification-model-store-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.1.12 - 2.1.14 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,13,0 | Flexible | 

------
#### [ 2.1.11 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,12.0 | Flexible | 

------
#### [ 2.1.10 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,11.0 | Flexible | 

------
#### [ 2.1.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,1,0 | Flexible | 

------
#### [ 2.1.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,9.0 | Flexible | 

------
#### [ 2.1.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,8.0 | Flexible | 

------
#### [ 2.1.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,7.0 | Flexible | 

------
#### [ 2.1.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,6.0 | Flexible | 

------
#### [ 2.1.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,5.0 | Flexible | 

------
#### [ 2.1.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,4.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](greengrass-nucleus-component.md) | >=2,0.0 <2,3.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](greengrass-nucleus-component.md) | >=2,0.0 <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](greengrass-nucleus-component.md) | \$12,0.0 | Flexible | 

------

## Configuration
<a name="dlr-image-classification-model-store-component-configuration"></a>

Ce composant ne possède aucun paramètre de configuration.

## Fichier journal local
<a name="dlr-image-classification-model-store-component-log-file"></a>

Ce composant ne génère pas de journaux.

## Journal des modifications
<a name="dlr-image-classification-model-store-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.1.13  | Version mise à jour pour la version 2.12.5 de Greengrass Nucleus. | 
|  2.1.12  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  2.1.11  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  2.1.10  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. | 
|  2.1.9  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  2.1.8  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  2.1.7  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  2.1.6  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  2.1.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/dlr-image-classification-model-store-component.html)  | 
|  2.1.4  |  Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.  | 
|  2.1.3  |  Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.  | 
|  2.1.2  |  Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.  | 
|  2.1.1  |  <a name="changelog-dlr-image-classification-model-store-2.1.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/dlr-image-classification-model-store-component.html)  | 
|  2.0.4  |  Première version.  | 

# Model Store dédié à la détection d'objets DLR
<a name="dlr-object-detection-model-store-component"></a>

Le magasin de modèles de détection d'objets DLR est un composant de modèle d'apprentissage automatique qui contient des YOLOv3 modèles préentraînés sous forme d'artefacts Greengrass. Les exemples de modèles utilisés dans ce composant sont extraits du [GluonCV Model Zoo](https://cv.gluon.ai/model_zoo/index.html) et compilés à l'aide d' SageMaker AI Neo [Deep](https://github.com/neo-ai/neo-ai-dlr) Learning Runtime.

Le composant d'inférence [de détection d'objets DLR](dlr-object-detection-component.md) utilise ce composant comme dépendance pour la source du modèle. Pour utiliser un modèle DLR entraîné sur mesure, [créez une version personnalisée](ml-customization.md#override-public-model-store) de ce composant de modèle et incluez votre modèle personnalisé en tant qu'artefact de composant. Vous pouvez utiliser la recette de ce composant comme modèle pour créer des composants de modèle personnalisés. 

**Note**  
Le nom du composant du Model Store de détection d'objets DLR varie en fonction de sa version. Le nom du composant pour la version 2.1.x et les versions ultérieures est`variant.DLR.ObjectDetection.ModelStore`. Le nom du composant pour la version 2.0.x est. `variant.ObjectDetection.ModelStore`

**Topics**
+ [Versions](#dlr-object-detection-model-store-component-versions)
+ [Type](#dlr-object-detection-model-store-component-type)
+ [Système d’exploitation](#dlr-object-detection-model-store-component-os-support)
+ [Prérequis](#dlr-object-detection-model-store-component-requirements)
+ [Dépendances](#dlr-object-detection-model-store-component-dependencies)
+ [Configuration](#dlr-object-detection-model-store-component-configuration)
+ [Fichier journal local](#dlr-object-detection-model-store-component-log-file)
+ [Journal des modifications](#dlr-object-detection-model-store-component-changelog)

## Versions
<a name="dlr-object-detection-model-store-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2,1x 
+ 2,0.x

## Type
<a name="dlr-object-detection-model-store-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="dlr-object-detection-model-store-component-os-support"></a>

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

## Prérequis
<a name="dlr-object-detection-model-store-component-requirements"></a>

Ce composant répond aux exigences suivantes :<a name="ml-component-requirements"></a>
+ Sur les appareils principaux de Greengrass exécutant Amazon Linux 2 ou Ubuntu 18.04, la version 2.27 ou ultérieure de la [bibliothèque GNU C](https://www.gnu.org/software/libc/) (glibc) est installée sur l'appareil.
+ Sur les appareils ARMv7L, tels que le Raspberry Pi, les dépendances pour OpenCV-Python sont installées sur l'appareil. Exécutez la commande suivante pour installer les dépendances.

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ Les appareils Raspberry Pi qui exécutent le système d'exploitation Raspberry Pi Bullseye doivent répondre aux exigences suivantes :
  + NumPy 1.22.4 ou version ultérieure installée sur l'appareil. Raspberry Pi OS Bullseye inclut une version antérieure de NumPy. Vous pouvez donc exécuter la commande suivante pour effectuer la mise à niveau NumPy sur l'appareil.

    ```
    pip3 install --upgrade numpy
    ```
  + L'ancienne pile de caméras activée sur l'appareil. Raspberry Pi OS Bullseye inclut une nouvelle pile de caméras qui est activée par défaut et qui n'est pas compatible. Vous devez donc activer la pile de caméras existante.<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**Pour activer l'ancienne pile de caméras**

    1. Exécutez la commande suivante pour ouvrir l'outil de configuration du Raspberry Pi.

       ```
       sudo raspi-config
       ```

    1. Sélectionnez **Options d'interface**.

    1. Sélectionnez **Legacy camera** pour activer l'ancienne pile de caméras.

    1. Redémarrez l'appareil Raspberry Pi.

## Dépendances
<a name="dlr-object-detection-model-store-component-dependencies"></a>

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](#dlr-object-detection-model-store-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.1.13 and 2.1.14 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,13.0 | Flexible | 

------
#### [ 2.1.12 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,12.0 | Flexible | 

------
#### [ 2.1.11 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,11.0 | Flexible | 

------
#### [ 2.1.10 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,1,0 | Flexible | 

------
#### [ 2.1.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,9.0 | Flexible | 

------
#### [ 2.1.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,8.0 | Flexible | 

------
#### [ 2.1.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,7.0 | Flexible | 

------
#### [ 2.1.5 and 2.1.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,6.0 | Flexible | 

------
#### [ 2.1.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,5.0 | Flexible | 

------
#### [ 2.1.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,4.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](greengrass-nucleus-component.md) | >=2,0.0 <2,3.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](greengrass-nucleus-component.md) | >=2,0.0 <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](greengrass-nucleus-component.md) | \$12,0.0 | Flexible | 

------

## Configuration
<a name="dlr-object-detection-model-store-component-configuration"></a>

Ce composant ne possède aucun paramètre de configuration.

## Fichier journal local
<a name="dlr-object-detection-model-store-component-log-file"></a>

Ce composant ne génère pas de journaux.

## Journal des modifications
<a name="dlr-object-detection-model-store-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.1.14  |  Version mise à jour pour la version 2.12.5 de Greengrass Nucleus.  | 
|  2.1.13  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  2.1.12  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  2.1.11  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. | 
|  2.1.10  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  2.1.9  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  2.1.8  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  2.1.7  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  2.1.6  |  Ajoute un modèle de processeur pour résoudre un problème sur les appareils Armv8 (AArch64).  | 
|  2.1.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/dlr-object-detection-model-store-component.html)  | 
|  2.1.4  |  Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.  | 
|  2.1.3  |  Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.  | 
|  2.1.2  |  Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.  | 
|  2.1.1  |  <a name="changelog-dlr-object-detection-model-store-2.1.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/dlr-object-detection-model-store-component.html) | 
|  2.0.4  |  Première version.  | 

# Temps d'exécution du DLR
<a name="dlr-component"></a>

Le composant d'exécution DLR (`variant.DLR`) contient un script qui installe [Deep Learning Runtime](https://github.com/neo-ai/neo-ai-dlr) (DLR) et ses dépendances dans un environnement virtuel sur votre appareil. Les [Détection d'objets DLR](dlr-object-detection-component.md) composants [Classification des images DLR](dlr-image-classification-component.md) et utilisent ce composant comme dépendance pour l'installation du DLR. La version 1.6.x du composant installe le DLR v1.6.0 et la version 1.3.x du composant installe le DLR v1.3.0. 

Pour utiliser un autre environnement d'exécution, vous pouvez utiliser la recette de ce composant comme modèle pour [créer un composant d'apprentissage automatique personnalisé](ml-customization.md). 

**Topics**
+ [Versions](#dlr-component-versions)
+ [Type](#dlr-component-type)
+ [Système d’exploitation](#dlr-component-os-support)
+ [Prérequis](#dlr-component-requirements)
+ [Dépendances](#dlr-component-dependencies)
+ [Configuration](#dlr-component-configuration)
+ [Utilisation](#dlr-component-usage)
+ [Fichier journal local](#dlr-component-log-file)
+ [Journal des modifications](#dlr-component-changelog)

## Versions
<a name="dlr-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 1,6. x
+ 1.3.x

## Type
<a name="dlr-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="dlr-component-os-support"></a>

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

## Prérequis
<a name="dlr-component-requirements"></a>

Ce composant répond aux exigences suivantes :<a name="ml-component-requirements"></a>
+ Sur les appareils principaux de Greengrass exécutant Amazon Linux 2 ou Ubuntu 18.04, la version 2.27 ou ultérieure de la [bibliothèque GNU C](https://www.gnu.org/software/libc/) (glibc) est installée sur l'appareil.
+ Sur les appareils ARMv7L, tels que le Raspberry Pi, les dépendances pour OpenCV-Python sont installées sur l'appareil. Exécutez la commande suivante pour installer les dépendances.

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ Les appareils Raspberry Pi qui exécutent le système d'exploitation Raspberry Pi Bullseye doivent répondre aux exigences suivantes :
  + NumPy 1.22.4 ou version ultérieure installée sur l'appareil. Raspberry Pi OS Bullseye inclut une version antérieure de NumPy. Vous pouvez donc exécuter la commande suivante pour effectuer la mise à niveau NumPy sur l'appareil.

    ```
    pip3 install --upgrade numpy
    ```
  + L'ancienne pile de caméras activée sur l'appareil. Raspberry Pi OS Bullseye inclut une nouvelle pile de caméras qui est activée par défaut et qui n'est pas compatible. Vous devez donc activer la pile de caméras existante.<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**Pour activer l'ancienne pile de caméras**

    1. Exécutez la commande suivante pour ouvrir l'outil de configuration du Raspberry Pi.

       ```
       sudo raspi-config
       ```

    1. Sélectionnez **Options d'interface**.

    1. Sélectionnez **Legacy camera** pour activer l'ancienne pile de caméras.

    1. Redémarrez l'appareil Raspberry Pi.

### Points de terminaison et ports
<a name="dlr-component-endpoints"></a>

Par défaut, ce composant utilise un script d'installation pour installer les packages à l'aide des `pip` commandes `apt` `yum``brew`,, et, en fonction de la plate-forme utilisée par le périphérique principal. Ce composant doit être capable d'exécuter des requêtes sortantes vers différents index de packages et référentiels pour exécuter le script d'installation. Pour autoriser le trafic sortant de ce composant à passer par un proxy ou un pare-feu, vous devez identifier les points de terminaison des index de packages et des référentiels auxquels votre périphérique principal se connecte pour l'installation.

Tenez compte des points suivants lorsque vous identifiez les points de terminaison requis pour le script d'installation de ce composant :
+ Les points de terminaison dépendent de la plate-forme de l'appareil principal. Par exemple, un périphérique principal qui exécute Ubuntu utilise `apt` plutôt que `yum` ou`brew`. En outre, les appareils qui utilisent le même index de packages peuvent avoir des listes de sources différentes, de sorte qu'ils peuvent récupérer des packages à partir de différents référentiels.
+ Les points de terminaison peuvent différer entre plusieurs appareils utilisant le même index de packages, car chaque appareil possède ses propres listes de sources qui définissent où récupérer les packages.
+ Les points de terminaison peuvent changer au fil du temps. Chaque index URLs de package fournit les référentiels dans lesquels vous téléchargez des packages, et le propriétaire d'un package peut modifier ce que fournit URLs l'index de package.

Pour plus d'informations sur les dépendances installées par ce composant et sur la façon de désactiver le script d'installation, consultez le paramètre [UseInstaller](#dlr-component-config-useinstaller-term)de configuration.

Pour plus d'informations sur les points de terminaison et les ports requis pour le fonctionnement de base, consultez[Autoriser le trafic des appareils via un proxy ou un pare-feu](allow-device-traffic.md).

## Dépendances
<a name="dlr-component-dependencies"></a>

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](#dlr-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 1.6.11 - 1.6.16 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <3,0.0 | Flexible | 

------
#### [ 1.6.10 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,9.0 | Flexible | 

------
#### [ 1.6.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,8.0 | Flexible | 

------
#### [ 1.6.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,7.0 | Flexible | 

------
#### [ 1.6.6 and 1.6.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,6.0 | Flexible | 

------
#### [ 1.6.4 and 1.6.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,5.0 | Flexible | 

------
#### [ 1.6.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,4.0 | Flexible | 

------
#### [ 1.6.2 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,3.0 | Flexible | 

------
#### [ 1.6.1 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,2.0 | Flexible | 

------
#### [ 1.3.x ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | \$12,0.0 | Flexible | 

------

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="dlr-component-configuration"></a>

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

`MLRootPath`  
<a name="ml-config-mlrootpath-desc"></a>(Facultatif) Le chemin du dossier sur les périphériques principaux Linux où les composants d'inférence lisent les images et écrivent les résultats d'inférence. Vous pouvez modifier cette valeur à n'importe quel emplacement de votre appareil auquel l'utilisateur exécutant ce composant a read/write accès.  
<a name="ml-config-mlrootpath-default-dlr"></a>Par défaut : `/greengrass/v2/work/variant.DLR/greengrass_ml`

`WindowsMLRootPath`  
Cette fonctionnalité est disponible dans la version 1.6.6 et les versions ultérieures de ce composant.  
<a name="ml-config-windowsmlrootpath-desc"></a>(Facultatif) Le chemin du dossier sur le périphérique principal de Windows où les composants d'inférence lisent les images et écrivent les résultats d'inférence. Vous pouvez modifier cette valeur à n'importe quel emplacement de votre appareil auquel l'utilisateur exécutant ce composant a read/write accès.  
<a name="ml-config-windowsmlrootpath-default-dlr"></a>Par défaut : `C:\greengrass\v2\\work\\variant.DLR\\greengrass_ml`

  `UseInstaller`   
<a name="ml-config-useinstaller-desc-dlr"></a>(Facultatif) Valeur de chaîne qui définit s'il faut utiliser le script d'installation dans ce composant pour installer le DLR et ses dépendances. Les valeurs prises en charge sont `true` et `false`.   <a name="ml-config-useinstaller-libraries-dlr"></a>

Définissez cette valeur sur `false` si vous souhaitez utiliser un script personnalisé pour l'installation du DLR ou si vous souhaitez inclure des dépendances d'exécution dans une image Linux prédéfinie. Pour utiliser ce composant avec les composants d'inférence DLR AWS fournis, installez les bibliothèques suivantes, y compris les dépendances, et mettez-les à la disposition de l'utilisateur du système, par exemple celui `ggc_user` qui exécute les composants ML.
+ [Python](https://www.python.org/downloads/) 3.7 ou version ultérieure, y compris `pip` pour votre version de Python.
+ [Deep Learning Runtime](https://github.com/neo-ai/neo-ai-dlr) v1.6.0
+ [NumPy](https://numpy.org/install/).
+ [OpenCV-Python](https://pypi.org/project/opencv-python/).
+ [Kit SDK des appareils AWS IoT v2 pour Python](https://github.com/aws/aws-iot-device-sdk-python-v2).
+ [AWS Python CRT (Common Runtime)](https://github.com/awslabs/aws-crt-python).
+ [Picamera](https://picamera.readthedocs.io/en/release-1.13/) (pour les appareils Raspberry Pi uniquement).
+ [`awscam`module](https://docs.aws.amazon.com/deeplens/latest/dg/deeplens-library-awscam-module.html) (pour les AWS DeepLens appareils).
+ LibGL (pour les appareils Linux)
<a name="ml-config-useinstaller-default"></a>Par défaut : `true`

## Utilisation
<a name="dlr-component-usage"></a>

Utilisez ce composant avec le paramètre `UseInstaller` de configuration défini sur `true` pour installer le DLR et ses dépendances sur votre appareil. Le composant configure un environnement virtuel sur votre appareil qui inclut l'OpenCV NumPy et les bibliothèques requises pour le DLR. 

**Note**  <a name="ml-installer-component-usage-note"></a>
Le script d'installation de ce composant installe également les dernières versions des bibliothèques système supplémentaires requises pour configurer l'environnement virtuel sur votre appareil et pour utiliser l'infrastructure d'apprentissage automatique installée. Cela peut mettre à niveau les bibliothèques système existantes sur votre appareil. Consultez le tableau suivant pour obtenir la liste des bibliothèques que ce composant installe pour chaque système d'exploitation pris en charge. Si vous souhaitez personnaliser ce processus d'installation, définissez le paramètre `UseInstaller` de configuration sur `false` et développez votre propre script d'installation.


| Plateforme | Bibliothèques installées sur le système de l'appareil | Bibliothèques installées dans l'environnement virtuel | 
| --- | --- | --- | 
| Armv7l | build-essential, cmake, ca-certificates, git | setuptools, wheel | 
| Amazon Linux 2 | mesa-libGL | Aucune | 
| Ubuntu | wget | Aucune | 

Lorsque vous déployez votre composant d'inférence, ce composant d'exécution vérifie d'abord si le DLR et ses dépendances sont déjà installés sur votre appareil, puis il les installe pour vous. 

## Fichier journal local
<a name="dlr-component-log-file"></a>

Ce composant utilise le fichier journal suivant.

------
#### [ Linux ]

```
/greengrass/v2/logs/variant.DLR.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\variant.DLR.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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par le chemin d'accès au dossier AWS IoT Greengrass racine.

------
#### [ Linux ]

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

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\variant.DLR.log -Tail 10 -Wait
  ```

------

## Journal des modifications
<a name="dlr-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  1.6,16  |  Version mise à jour pour Greengrass nucleus version 2.12.5.  | 
|  1.6,12  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/dlr-component.html)  | 
|  1.6.11  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  1,6.10  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  1.6.9  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  1.6.8  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  1.6.7  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/dlr-component.html)  | 
|  1.6.6  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/dlr-component.html)  | 
|  1.6.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/dlr-component.html)  | 
|  1.6.4  |  Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.  | 
|  1.6.3  |  Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.  | 
|  1.6.2  |  Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.  | 
|  1.6.1  |  <a name="changelog-dlr-1.6.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/dlr-component.html)  | 
|  1.3.2  |  Première version. Installe le DLR v1.3.0.  | 

# TensorFlow Classification d'images Lite
<a name="tensorflow-lite-image-classification-component"></a>

Le composant de classification d'images TensorFlow Lite (`aws.greengrass.TensorFlowLiteImageClassification`) contient un exemple de code d'inférence permettant d'effectuer une inférence de classification d'images à l'aide du moteur d'exécution [TensorFlow Lite](https://www.tensorflow.org/lite/guide/python) et un exemple de modèle quantifié MobileNet 1.0 préentraîné. Ce composant utilise la variante [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) et les [TensorFlow Temps d'exécution allégé](tensorflow-lite-component.md) composants comme dépendances pour télécharger le runtime TensorFlow Lite et le modèle d'exemple.

Pour utiliser ce composant d'inférence avec un modèle TensorFlow Lite entraîné sur mesure, [créez une version personnalisée](ml-customization.md#override-public-model-store) du composant Model Store dépendant. Pour utiliser votre propre code d'inférence personnalisé, vous pouvez utiliser la recette de ce composant comme modèle pour [créer un composant d'inférence personnalisé](ml-customization.md#create-inference-component).

**Topics**
+ [Versions](#tensorflow-lite-image-classification-component-versions)
+ [Type](#tensorflow-lite-image-classification-component-type)
+ [Système d’exploitation](#tensorflow-lite-image-classification-component-os-support)
+ [Prérequis](#tensorflow-lite-image-classification-component-requirements)
+ [Dépendances](#tensorflow-lite-image-classification-component-dependencies)
+ [Configuration](#tensorflow-lite-image-classification-component-configuration)
+ [Fichier journal local](#tensorflow-lite-image-classification-component-log-file)
+ [Journal des modifications](#tensorflow-lite-image-classification-component-changelog)

## Versions
<a name="tensorflow-lite-image-classification-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2,1x

## Type
<a name="tensorflow-lite-image-classification-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="tensorflow-lite-image-classification-component-os-support"></a>

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

## Prérequis
<a name="tensorflow-lite-image-classification-component-requirements"></a>

Ce composant répond aux exigences suivantes :<a name="ml-component-requirements"></a>
+ Sur les appareils principaux de Greengrass exécutant Amazon Linux 2 ou Ubuntu 18.04, la version 2.27 ou ultérieure de la [bibliothèque GNU C](https://www.gnu.org/software/libc/) (glibc) est installée sur l'appareil.
+ Sur les appareils ARMv7L, tels que le Raspberry Pi, les dépendances pour OpenCV-Python sont installées sur l'appareil. Exécutez la commande suivante pour installer les dépendances.

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ Les appareils Raspberry Pi qui exécutent le système d'exploitation Raspberry Pi Bullseye doivent répondre aux exigences suivantes :
  + NumPy 1.22.4 ou version ultérieure installée sur l'appareil. Raspberry Pi OS Bullseye inclut une version antérieure de NumPy. Vous pouvez donc exécuter la commande suivante pour effectuer la mise à niveau NumPy sur l'appareil.

    ```
    pip3 install --upgrade numpy
    ```
  + L'ancienne pile de caméras activée sur l'appareil. Raspberry Pi OS Bullseye inclut une nouvelle pile de caméras qui est activée par défaut et qui n'est pas compatible. Vous devez donc activer la pile de caméras existante.<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**Pour activer l'ancienne pile de caméras**

    1. Exécutez la commande suivante pour ouvrir l'outil de configuration du Raspberry Pi.

       ```
       sudo raspi-config
       ```

    1. Sélectionnez **Options d'interface**.

    1. Sélectionnez **Legacy camera** pour activer l'ancienne pile de caméras.

    1. Redémarrez l'appareil Raspberry Pi.

## Dépendances
<a name="tensorflow-lite-image-classification-component-dependencies"></a>

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](#tensorflow-lite-image-classification-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.1.11 and 2.1.12 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,13,0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------
#### [ 2.1.10 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,12.0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------
#### [ 2.1.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,11.0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------
#### [ 2.1.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,1,0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------
#### [ 2.1.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,9.0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------
#### [ 2.1.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,8.0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------
#### [ 2.1.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,7.0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------
#### [ 2.1.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,6.0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------
#### [ 2.1.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,5.0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) | >=2,0.0 <2,4.0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) | >=2,0.0 <2,3.0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) | >=2,0.0 <2,2.0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------

## Configuration
<a name="tensorflow-lite-image-classification-component-configuration"></a>

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

`accessControl`  
<a name="ml-config-accesscontrol-desc"></a>(Facultatif) Objet contenant la [politique d'autorisation](interprocess-communication.md#ipc-authorization-policies) qui permet au composant de publier des messages dans la rubrique de notifications par défaut.   
Par défaut :   

```
{
   "aws.greengrass.ipc.mqttproxy": {
      "aws.greengrass.TensorFlowLiteImageClassification:mqttproxy:1": {
         "policyDescription": "Allows access to publish via topic ml/tflite/image-classification.",
         "operations": [
            "aws.greengrass#PublishToIoTCore"
         ],
         "resources": [
            "ml/tflite/image-classification"
         ]
      }
   }
}
```

`PublishResultsOnTopic`  
<a name="ml-config-publishresultsontopic-desc"></a>(Facultatif) Rubrique sur laquelle vous souhaitez publier les résultats de l'inférence. Si vous modifiez cette valeur, vous devez également modifier la valeur de `resources` dans le `accessControl` paramètre pour qu'elle corresponde au nom de votre rubrique personnalisée.  
Par défaut : `ml/tflite/image-classification`

`Accelerator`  <a name="ml-config-accelerator"></a>
L'accélérateur que vous souhaitez utiliser. Les valeurs prises en charge sont `cpu` et `gpu`.  
Les modèles d'exemple du composant du modèle dépendant ne prennent en charge que l'accélération du processeur. Pour utiliser l'accélération GPU avec un autre modèle personnalisé, [créez un composant de modèle personnalisé](ml-customization.md#override-public-model-store) pour remplacer le composant de modèle public.  
Par défaut : `cpu`

`ImageDirectory`  
<a name="ml-config-imagedirectory-desc"></a>(Facultatif) Le chemin du dossier sur le périphérique où les composants d'inférence lisent les images. Vous pouvez modifier cette valeur en fonction de n'importe quel emplacement de votre appareil auquel vous avez read/write accès.  
<a name="ml-config-imagedirectory-img-default"></a>Par défaut : `/greengrass/v2/packages/artifacts-unarchived/component-name/image_classification/sample_images/`  
Si vous définissez la valeur de `UseCamera` to`true`, ce paramètre de configuration est ignoré. 

`ImageName`  
<a name="ml-config-imagename-desc"></a>(Facultatif) Nom de l'image que le composant d'inférence utilise comme entrée pour effectuer une prédiction. Le composant recherche l'image dans le dossier spécifié dans`ImageDirectory`. Par défaut, le composant utilise l'image d'exemple dans le répertoire d'images par défaut. AWS IoT Greengrass prend en charge les formats d'image suivants : `jpeg``jpg`,`png`, et`npy`.   
<a name="ml-config-imagename-img-default"></a>Par défaut : `cat.jpeg`  
Si vous définissez la valeur de `UseCamera` to`true`, ce paramètre de configuration est ignoré. 

`InferenceInterval`  <a name="ml-config-inferenceinterval"></a>
(Facultatif) Le délai en secondes entre chaque prédiction effectuée par le code d'inférence. L'exemple de code d'inférence s'exécute indéfiniment et répète ses prédictions à l'intervalle de temps spécifié. Par exemple, vous pouvez réduire cet intervalle si vous souhaitez utiliser des images prises par une caméra pour des prévisions en temps réel.  
Par défaut : `3600`

`ModelResourceKey`  <a name="ml-config-modelresourcekey"></a>
<a name="ml-config-modelresourcekey-desc"></a>(Facultatif) Les modèles utilisés dans le composant de modèle public dépendant. Modifiez ce paramètre uniquement si vous remplacez le composant du modèle public par un composant personnalisé.   
Par défaut :  

```
{
    "model": "TensorFlowLite-Mobilenet"
}
```

`UseCamera`  <a name="ml-config-usecamera"></a>
(Facultatif) Valeur de chaîne qui définit s'il faut utiliser les images d'une caméra connectée au périphérique principal de Greengrass. Les valeurs prises en charge sont `true` et `false`.  
Lorsque vous définissez cette valeur sur`true`, l'exemple de code d'inférence accède à la caméra de votre appareil et exécute l'inférence localement sur l'image capturée. Les valeurs des `ImageDirectory` paramètres `ImageName` et sont ignorées. Assurez-vous que l'utilisateur exécutant ce composant a read/write accès à l'emplacement où l'appareil photo stocke les images capturées.  
Par défaut : `false`  
Lorsque vous consultez la recette de ce composant, le paramètre `UseCamera` de configuration n'apparaît pas dans la configuration par défaut. Toutefois, vous pouvez modifier la valeur de ce paramètre dans une mise à [jour de fusion de configuration](update-component-configurations.md) lorsque vous déployez le composant.   
Lorsque vous définissez sur `UseCamera``true`, vous devez également créer un lien symbolique pour permettre au composant d'inférence d'accéder à votre caméra depuis l'environnement virtuel créé par le composant d'exécution. Pour plus d'informations sur l'utilisation d'une caméra avec les composants d'inférence d'échantillons, consultez[Mettre à jour les configurations des composants](ml-tutorial-image-classification-camera.md).

## Fichier journal local
<a name="tensorflow-lite-image-classification-component-log-file"></a>

Ce composant utilise le fichier journal suivant.

------
#### [ Linux ]

```
/greengrass/v2/logs/aws.greengrass.TensorFlowLiteImageClassification.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\aws.greengrass.TensorFlowLiteImageClassification.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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par le chemin d'accès au dossier AWS IoT Greengrass racine.

------
#### [ Linux ]

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

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.greengrass.TensorFlowLiteImageClassification.log -Tail 10 -Wait
  ```

------

## Journal des modifications
<a name="tensorflow-lite-image-classification-component-changelog"></a>

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


|  Version  |  Modifications  | 
| --- | --- | 
|  2.1.12  |  Version mise à jour pour la version 2.12.5 de Greengrass Nucleus.  | 
|  2.1.11  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  2.1.10  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  2.1.9  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. | 
|  2.1.8  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  2.1.7  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  2.1.6  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  2.1.5  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  2.1.4  |  Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.  | 
|  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  |  Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.  | 
|  2.1.0  |  Première version.  | 

# TensorFlow Détection d'objets allégée
<a name="tensorflow-lite-object-detection-component"></a>

Le composant de détection d'objets TensorFlow Lite (`aws.greengrass.TensorFlowLiteObjectDetection`) contient un exemple de code d'inférence permettant d'effectuer une inférence de détection d'objets à l'aide de [TensorFlow Lite](https://www.tensorflow.org/lite/guide/python) et un exemple de modèle Single Shot Detection (SSD) MobileNet 1.0 préentraîné. Ce composant utilise la variante [TensorFlow Boutique de modèles de détection d'objets Lite](tensorflow-lite-object-detection-model-store-component.md) et les [TensorFlow Temps d'exécution allégé](tensorflow-lite-component.md) composants comme dépendances pour télécharger TensorFlow Lite et l'exemple de modèle. 

Pour utiliser ce composant d'inférence avec un modèle TensorFlow Lite entraîné sur mesure, vous pouvez [créer une version personnalisée](ml-customization.md#override-public-model-store) du composant Model Store dépendant. Pour utiliser votre propre code d'inférence personnalisé, utilisez la recette de ce composant comme modèle pour [créer un composant d'inférence personnalisé](ml-customization.md#create-inference-component).

**Topics**
+ [Versions](#tensorflow-lite-object-detection-component-versions)
+ [Type](#tensorflow-lite-object-detection-component-type)
+ [Système d’exploitation](#tensorflow-lite-object-detection-component-os-support)
+ [Prérequis](#tensorflow-lite-object-detection-component-requirements)
+ [Dépendances](#tensorflow-lite-object-detection-component-dependencies)
+ [Configuration](#tensorflow-lite-object-detection-component-configuration)
+ [Fichier journal local](#tensorflow-lite-object-detection-component-log-file)
+ [Journal des modifications](#tensorflow-lite-object-detection-component-changelog)

## Versions
<a name="tensorflow-lite-object-detection-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2,1x

## Type
<a name="tensorflow-lite-object-detection-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="tensorflow-lite-object-detection-component-os-support"></a>

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

## Prérequis
<a name="tensorflow-lite-object-detection-component-requirements"></a>

Ce composant répond aux exigences suivantes :<a name="ml-component-requirements"></a>
+ Sur les appareils principaux de Greengrass exécutant Amazon Linux 2 ou Ubuntu 18.04, la version 2.27 ou ultérieure de la [bibliothèque GNU C](https://www.gnu.org/software/libc/) (glibc) est installée sur l'appareil.
+ Sur les appareils ARMv7L, tels que Raspberry Pi, les dépendances pour OpenCV-Python sont installées sur l'appareil. Exécutez la commande suivante pour installer les dépendances.

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ Les appareils Raspberry Pi qui exécutent le système d'exploitation Raspberry Pi Bullseye doivent répondre aux exigences suivantes :
  + NumPy 1.22.4 ou version ultérieure installée sur l'appareil. Raspberry Pi OS Bullseye inclut une version antérieure de NumPy. Vous pouvez donc exécuter la commande suivante pour effectuer la mise à niveau NumPy sur l'appareil.

    ```
    pip3 install --upgrade numpy
    ```
  + L'ancienne pile de caméras activée sur l'appareil. Raspberry Pi OS Bullseye inclut une nouvelle pile de caméras activée par défaut et non compatible. Vous devez donc activer la pile de caméras existante.<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**Pour activer l'ancienne pile de caméras**

    1. Exécutez la commande suivante pour ouvrir l'outil de configuration du Raspberry Pi.

       ```
       sudo raspi-config
       ```

    1. Sélectionnez **Options d'interface**.

    1. Sélectionnez **Legacy camera** pour activer l'ancienne pile de caméras.

    1. Redémarrez l'appareil Raspberry Pi.

## Dépendances
<a name="tensorflow-lite-object-detection-component-dependencies"></a>

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](#tensorflow-lite-object-detection-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.1.11 and 2.1.12 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,13,0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------
#### [ 2.1.10 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,12.0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------
#### [ 2.1.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,11.0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------
#### [ 2.1.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,1,0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------
#### [ 2.1.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,9.0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------
#### [ 2.1.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,8.0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------
#### [ 2.1.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,7.0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------
#### [ 2.1.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,6.0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------
#### [ 2.1.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,5.0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) | >=2,0.0 <2,4.0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) | >=2,0.0 <2,3.0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) | >=2,0.0 <2,2.0 | Flexible | 
| [TensorFlow Boutique de modèles de classification d'images Lite](tensorflow-lite-image-classification-model-store-component.md) | >=2,10 <2,2,0 | Stricte | 
| [TensorFlow Lite](tensorflow-lite-component.md) | >=2,5,0 <2,6,0 | Stricte | 

------

## Configuration
<a name="tensorflow-lite-object-detection-component-configuration"></a>

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

`accessControl`  
<a name="ml-config-accesscontrol-desc"></a>(Facultatif) Objet contenant la [politique d'autorisation](interprocess-communication.md#ipc-authorization-policies) qui permet au composant de publier des messages dans la rubrique de notifications par défaut.   
Par défaut :   

```
{
   "aws.greengrass.ipc.mqttproxy": {
      "aws.greengrass.TensorFlowLiteObjectDetection:mqttproxy:1": {
         "policyDescription": "Allows access to publish via topic ml/tflite/object-detection.",
         "operations": [
            "aws.greengrass#PublishToIoTCore"
         ],
         "resources": [
            "ml/tflite/object-detection"
         ]
      }
   }
}
```

`PublishResultsOnTopic`  
<a name="ml-config-publishresultsontopic-desc"></a>(Facultatif) Rubrique sur laquelle vous souhaitez publier les résultats de l'inférence. Si vous modifiez cette valeur, vous devez également modifier la valeur de `resources` dans le `accessControl` paramètre pour qu'elle corresponde au nom de votre rubrique personnalisée.  
Par défaut : `ml/tflite/object-detection`

`Accelerator`  <a name="ml-config-accelerator"></a>
L'accélérateur que vous souhaitez utiliser. Les valeurs prises en charge sont `cpu` et `gpu`.  
Les modèles d'exemple du composant du modèle dépendant ne prennent en charge que l'accélération du processeur. Pour utiliser l'accélération GPU avec un autre modèle personnalisé, [créez un composant de modèle personnalisé](ml-customization.md#override-public-model-store) pour remplacer le composant de modèle public.  
Par défaut : `cpu`

`ImageDirectory`  
<a name="ml-config-imagedirectory-desc"></a>(Facultatif) Le chemin du dossier sur le périphérique où les composants d'inférence lisent les images. Vous pouvez modifier cette valeur en fonction de n'importe quel emplacement de votre appareil auquel vous avez read/write accès.  
<a name="ml-config-imagedirectory-obj-default"></a>Par défaut : `/greengrass/v2/packages/artifacts-unarchived/component-name/object_detection/sample_images/`  
Si vous définissez la valeur de `UseCamera` to`true`, ce paramètre de configuration est ignoré. 

`ImageName`  
<a name="ml-config-imagename-desc"></a>(Facultatif) Nom de l'image que le composant d'inférence utilise comme entrée pour effectuer une prédiction. Le composant recherche l'image dans le dossier spécifié dans`ImageDirectory`. Par défaut, le composant utilise l'image d'exemple dans le répertoire d'images par défaut. AWS IoT Greengrass prend en charge les formats d'image suivants : `jpeg``jpg`,`png`, et`npy`.   
<a name="ml-config-imagename-obj-default"></a>Par défaut : `objects.jpg`  
Si vous définissez la valeur de `UseCamera` to`true`, ce paramètre de configuration est ignoré. 

`InferenceInterval`  <a name="ml-config-inferenceinterval"></a>
(Facultatif) Le délai en secondes entre chaque prédiction effectuée par le code d'inférence. L'exemple de code d'inférence s'exécute indéfiniment et répète ses prédictions à l'intervalle de temps spécifié. Par exemple, vous pouvez réduire cet intervalle si vous souhaitez utiliser des images prises par une caméra pour des prévisions en temps réel.  
Par défaut : `3600`

`ModelResourceKey`  <a name="ml-config-modelresourcekey"></a>
<a name="ml-config-modelresourcekey-desc"></a>(Facultatif) Les modèles utilisés dans le composant de modèle public dépendant. Modifiez ce paramètre uniquement si vous remplacez le composant du modèle public par un composant personnalisé.   
Par défaut :  

```
{
    "model": "TensorFlowLite-SSD"
}
```

`UseCamera`  <a name="ml-config-usecamera"></a>
(Facultatif) Valeur de chaîne qui définit s'il faut utiliser les images d'une caméra connectée au périphérique principal de Greengrass. Les valeurs prises en charge sont `true` et `false`.  
Lorsque vous définissez cette valeur sur`true`, l'exemple de code d'inférence accède à la caméra de votre appareil et exécute l'inférence localement sur l'image capturée. Les valeurs des `ImageDirectory` paramètres `ImageName` et sont ignorées. Assurez-vous que l'utilisateur exécutant ce composant a read/write accès à l'emplacement où l'appareil photo stocke les images capturées.  
Par défaut : `false`  
Lorsque vous consultez la recette de ce composant, le paramètre `UseCamera` de configuration n'apparaît pas dans la configuration par défaut. Toutefois, vous pouvez modifier la valeur de ce paramètre dans une mise à [jour de fusion de configuration](update-component-configurations.md) lorsque vous déployez le composant.   
Lorsque vous définissez sur `UseCamera``true`, vous devez également créer un lien symbolique pour permettre au composant d'inférence d'accéder à votre caméra depuis l'environnement virtuel créé par le composant d'exécution. Pour plus d'informations sur l'utilisation d'une caméra avec les composants d'inférence d'échantillons, consultez[Mettre à jour les configurations des composants](ml-tutorial-image-classification-camera.md).

**Note**  <a name="ml-config-not-visible-note"></a>
Lorsque vous consultez la recette de ce composant, le paramètre `UseCamera` de configuration n'apparaît pas dans la configuration par défaut. Toutefois, vous pouvez modifier la valeur de ce paramètre dans une mise à [jour de fusion de configuration](update-component-configurations.md) lorsque vous déployez le composant.   
Lorsque vous définissez sur `UseCamera``true`, vous devez également créer un lien symbolique pour permettre au composant d'inférence d'accéder à votre caméra depuis l'environnement virtuel créé par le composant d'exécution. Pour plus d'informations sur l'utilisation d'une caméra avec les composants d'inférence d'échantillons, consultez[Mettre à jour les configurations des composants](ml-tutorial-image-classification-camera.md).

## Fichier journal local
<a name="tensorflow-lite-object-detection-component-log-file"></a>

Ce composant utilise le fichier journal suivant.

------
#### [ Linux ]

```
/greengrass/v2/logs/aws.greengrass.TensorFlowLiteObjectDetection.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\aws.greengrass.TensorFlowLiteObjectDetection.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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par le chemin d'accès au dossier AWS IoT Greengrass racine.

------
#### [ Linux ]

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

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.greengrass.TensorFlowLiteObjectDetection.log -Tail 10 -Wait
  ```

------

## Journal des modifications
<a name="tensorflow-lite-object-detection-component-changelog"></a>

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


|  Version  |  Modifications  | 
| --- | --- | 
|  2.1.12  |  Version mise à jour pour la version 2.12.5 de Greengrass Nucleus.  | 
|  2.1.11  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  2.1.10  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  2.1.9  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. | 
|  2.1.8  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  2.1.7  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  2.1.6  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  2.1.5  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  2.1.4  |  Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.  | 
|  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  |  <a name="changelog-tensorflow-lite-object-detection-2.1.1"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/tensorflow-lite-object-detection-component.html)  | 
|  2.1.0  |  Première version.  | 

# TensorFlow Boutique de modèles de classification d'images Lite
<a name="tensorflow-lite-image-classification-model-store-component"></a>

Le magasin de modèles de classification d'images TensorFlow Lite (`variant.TensorFlowLite.ImageClassification.ModelStore`) est un composant de modèle d'apprentissage automatique qui contient un modèle MobileNet v1 préentraîné en tant qu'artefact Greengrass. L'exemple de modèle utilisé dans ce composant est extrait du [TensorFlowHub](https://tfhub.dev/) et implémenté à l'aide de [TensorFlow Lite](https://www.tensorflow.org/lite/guide/python).

Le composant [TensorFlow Classification d'images Lite](tensorflow-lite-image-classification-component.md) d'inférence utilise ce composant comme dépendance pour la source du modèle. Pour utiliser un modèle TensorFlow Lite entraîné sur mesure, [créez une version personnalisée](ml-customization.md#override-public-model-store) de ce composant de modèle et incluez votre modèle personnalisé en tant qu'artefact de composant. Vous pouvez utiliser la recette de ce composant comme modèle pour créer des composants de modèle personnalisés. 

**Topics**
+ [Versions](#tensorflow-lite-image-classification-model-store-component-versions)
+ [Type](#tensorflow-lite-image-classification-model-store-component-type)
+ [Système d’exploitation](#tensorflow-lite-image-classification-model-store-component-os-support)
+ [Prérequis](#tensorflow-lite-image-classification-model-store-component-requirements)
+ [Dépendances](#tensorflow-lite-image-classification-model-store-component-dependencies)
+ [Configuration](#tensorflow-lite-image-classification-model-store-component-configuration)
+ [Fichier journal local](#tensorflow-lite-image-classification-model-store-component-log-file)
+ [Journal des modifications](#tensorflow-lite-image-classification-model-store-component-changelog)

## Versions
<a name="tensorflow-lite-image-classification-model-store-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2,1x

## Type
<a name="tensorflow-lite-image-classification-model-store-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="tensorflow-lite-image-classification-model-store-component-os-support"></a>

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

## Prérequis
<a name="tensorflow-lite-image-classification-model-store-component-requirements"></a>

Ce composant répond aux exigences suivantes :<a name="ml-component-requirements"></a>
+ Sur les appareils principaux de Greengrass exécutant Amazon Linux 2 ou Ubuntu 18.04, la version 2.27 ou ultérieure de la [bibliothèque GNU C](https://www.gnu.org/software/libc/) (glibc) est installée sur l'appareil.
+ Sur les appareils ARMv7L, tels que le Raspberry Pi, les dépendances pour OpenCV-Python sont installées sur l'appareil. Exécutez la commande suivante pour installer les dépendances.

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ Les appareils Raspberry Pi qui exécutent le système d'exploitation Raspberry Pi Bullseye doivent répondre aux exigences suivantes :
  + NumPy 1.22.4 ou version ultérieure installée sur l'appareil. Raspberry Pi OS Bullseye inclut une version antérieure de NumPy. Vous pouvez donc exécuter la commande suivante pour effectuer la mise à niveau NumPy sur l'appareil.

    ```
    pip3 install --upgrade numpy
    ```
  + L'ancienne pile de caméras activée sur l'appareil. Raspberry Pi OS Bullseye inclut une nouvelle pile de caméras qui est activée par défaut et qui n'est pas compatible. Vous devez donc activer la pile de caméras existante.<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**Pour activer l'ancienne pile de caméras**

    1. Exécutez la commande suivante pour ouvrir l'outil de configuration du Raspberry Pi.

       ```
       sudo raspi-config
       ```

    1. Sélectionnez **Options d'interface**.

    1. Sélectionnez **Legacy camera** pour activer l'ancienne pile de caméras.

    1. Redémarrez l'appareil Raspberry Pi.

## Dépendances
<a name="tensorflow-lite-image-classification-model-store-component-dependencies"></a>

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](#tensorflow-lite-image-classification-model-store-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.1.11 and 2.1.12  ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,13,0 | Flexible | 

------
#### [ 2.1.10 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,12.0 | Flexible | 

------
#### [ 2.1.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,11.0 | Flexible | 

------
#### [ 2.1.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,1,0 | Flexible | 

------
#### [ 2.1.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,9.0 | Flexible | 

------
#### [ 2.1.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,8.0 | Flexible | 

------
#### [ 2.1.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,7.0 | Flexible | 

------
#### [ 2.1.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,6.0 | Flexible | 

------
#### [ 2.1.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <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](greengrass-nucleus-component.md) | >=2,0.0 <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](greengrass-nucleus-component.md) | >=2,0.0 <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](greengrass-nucleus-component.md) | >=2,0.0 <2,2.0 | Flexible | 

------

## Configuration
<a name="tensorflow-lite-image-classification-model-store-component-configuration"></a>

Ce composant ne possède aucun paramètre de configuration.

## Fichier journal local
<a name="tensorflow-lite-image-classification-model-store-component-log-file"></a>

Ce composant ne génère pas de journaux.

## Journal des modifications
<a name="tensorflow-lite-image-classification-model-store-component-changelog"></a>

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


|  Version  |  Modifications  | 
| --- | --- | 
|  2.1.12  |  Version mise à jour pour la version 2.12.5 de Greengrass Nucleus.  | 
|  2.1.11  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  2.1.10  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  2.1.9  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. | 
|  2.1.8  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  2.1.7  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  2.1.6  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  2.1.5  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  2.1.4  |  Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.  | 
|  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  |  Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.  | 
|  2.1.0  |  Première version.  | 

# TensorFlow Boutique de modèles de détection d'objets Lite
<a name="tensorflow-lite-object-detection-model-store-component"></a>

Le magasin de modèles de détection d'objets TensorFlow Lite (`variant.TensorFlowLite.ObjectDetection.ModelStore`) est un composant du modèle d'apprentissage automatique qui contient un MobileNet modèle SSD (Single Shot Detection) préentraîné en tant qu'artefact Greengrass. L'exemple de modèle utilisé dans ce composant est extrait du [TensorFlow Hub](https://tfhub.dev/) et implémenté à l'aide de [TensorFlow Lite](https://www.tensorflow.org/lite/guide/python).

Le composant d'inférence [de détection d'objets TensorFlow Lite](tensorflow-lite-object-detection-component.md) utilise ce composant comme dépendance pour la source du modèle. Pour utiliser un modèle TensorFlow Lite entraîné sur mesure, [créez une version personnalisée](ml-customization.md#override-public-model-store) de ce composant de modèle et incluez votre modèle personnalisé en tant qu'artefact de composant. Vous pouvez utiliser la recette de ce composant comme modèle pour créer des composants de modèle personnalisés. 

**Topics**
+ [Versions](#tensorflow-lite-object-detection-model-store-component-versions)
+ [Type](#tensorflow-lite-object-detection-model-store-component-type)
+ [Système d’exploitation](#tensorflow-lite-object-detection-model-store-component-os-support)
+ [Prérequis](#tensorflow-lite-object-detection-model-store-component-requirements)
+ [Dépendances](#tensorflow-lite-object-detection-model-store-component-dependencies)
+ [Configuration](#tensorflow-lite-object-detection-model-store-component-configuration)
+ [Fichier journal local](#tensorflow-lite-object-detection-model-store-component-log-file)
+ [Journal des modifications](#tensorflow-lite-object-detection-model-store-component-changelog)

## Versions
<a name="tensorflow-lite-object-detection-model-store-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2,1x

## Type
<a name="tensorflow-lite-object-detection-model-store-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="tensorflow-lite-object-detection-model-store-component-os-support"></a>

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

## Prérequis
<a name="tensorflow-lite-object-detection-model-store-component-requirements"></a>

Ce composant répond aux exigences suivantes :<a name="ml-component-requirements"></a>
+ Sur les appareils principaux de Greengrass exécutant Amazon Linux 2 ou Ubuntu 18.04, la version 2.27 ou ultérieure de la [bibliothèque GNU C](https://www.gnu.org/software/libc/) (glibc) est installée sur l'appareil.
+ Sur les appareils ARMv7L, tels que le Raspberry Pi, les dépendances pour OpenCV-Python sont installées sur l'appareil. Exécutez la commande suivante pour installer les dépendances.

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ Les appareils Raspberry Pi qui exécutent le système d'exploitation Raspberry Pi Bullseye doivent répondre aux exigences suivantes :
  + NumPy 1.22.4 ou version ultérieure installée sur l'appareil. Raspberry Pi OS Bullseye inclut une version antérieure de NumPy. Vous pouvez donc exécuter la commande suivante pour effectuer la mise à niveau NumPy sur l'appareil.

    ```
    pip3 install --upgrade numpy
    ```
  + L'ancienne pile de caméras activée sur l'appareil. Raspberry Pi OS Bullseye inclut une nouvelle pile de caméras qui est activée par défaut et qui n'est pas compatible. Vous devez donc activer la pile de caméras existante.<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**Pour activer l'ancienne pile de caméras**

    1. Exécutez la commande suivante pour ouvrir l'outil de configuration du Raspberry Pi.

       ```
       sudo raspi-config
       ```

    1. Sélectionnez **Options d'interface**.

    1. Sélectionnez **Legacy camera** pour activer l'ancienne pile de caméras.

    1. Redémarrez l'appareil Raspberry Pi.

## Dépendances
<a name="tensorflow-lite-object-detection-model-store-component-dependencies"></a>

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](#tensorflow-lite-object-detection-model-store-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.1.11 and 2.1.12 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,13,0 | Flexible | 

------
#### [ 2.1.10 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,12.0 | Flexible | 

------
#### [ 2.1.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,11.0 | Flexible | 

------
#### [ 2.1.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,1,0 | Flexible | 

------
#### [ 2.1.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,9.0 | Flexible | 

------
#### [ 2.1.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,8.0 | Flexible | 

------
#### [ 2.1.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,7.0 | Flexible | 

------
#### [ 2.1.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,6.0 | Flexible | 

------
#### [ 2.1.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <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](greengrass-nucleus-component.md) | >=2,0.0 <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](greengrass-nucleus-component.md) | >=2,0.0 <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](greengrass-nucleus-component.md) | >=2,0.0 <2,2.0 | Flexible | 

------

## Configuration
<a name="tensorflow-lite-object-detection-model-store-component-configuration"></a>

Ce composant ne possède aucun paramètre de configuration.

## Fichier journal local
<a name="tensorflow-lite-object-detection-model-store-component-log-file"></a>

Ce composant ne génère pas de journaux.

## Journal des modifications
<a name="tensorflow-lite-object-detection-model-store-component-changelog"></a>

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


|  Version  |  Modifications  | 
| --- | --- | 
|  2.1.12  |  Version mise à jour pour la version 2.12.5 de Greengrass Nucleus.  | 
|  2.1.11  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  2.1.10  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  2.1.9  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. | 
|  2.1.8  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  2.1.7  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  2.1.6  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  2.1.5  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  2.1.4  |  Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.  | 
|  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  |  Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.  | 
|  2.1.0  |  Première version.  | 

# TensorFlow Temps d'exécution allégé
<a name="tensorflow-lite-component"></a>

Le composant d'exécution TensorFlow Lite (`variant.TensorFlowLite`) contient un script qui installe la version [TensorFlow Lite](https://www.tensorflow.org/lite/guide/python) 2.5.0 et ses dépendances dans un environnement virtuel sur votre appareil. Le composant de [classification d'images TensorFlow TensorFlow Lite](tensorflow-lite-image-classification-component.md) [et de détection d'objets Lite](tensorflow-lite-object-detection-component.md) utilise ce composant d'exécution comme dépendance pour l'installation de TensorFlow Lite. 

**Note**  
TensorFlow Le composant d'exécution Lite v2.5.6 et versions ultérieures réinstalle les installations existantes du moteur d'exécution TensorFlow Lite et ses dépendances. Cette réinstallation permet de s'assurer que le périphérique principal exécute des versions compatibles de TensorFlow Lite et de ses dépendances.

Pour utiliser un autre environnement d'exécution, vous pouvez utiliser la recette de ce composant comme modèle pour [créer un composant d'apprentissage automatique personnalisé](ml-customization.md).

**Topics**
+ [Versions](#tensorflow-lite-component-versions)
+ [Type](#tensorflow-lite-component-type)
+ [Système d’exploitation](#tensorflow-lite-component-os-support)
+ [Prérequis](#tensorflow-lite-component-requirements)
+ [Dépendances](#tensorflow-lite-component-dependencies)
+ [Configuration](#tensorflow-lite-component-configuration)
+ [Utilisation](#tensorflow-lite-component-usage)
+ [Fichier journal local](#tensorflow-lite-component-log-file)
+ [Journal des modifications](#tensorflow-lite-component-changelog)

## Versions
<a name="tensorflow-lite-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2,5.x

## Type
<a name="tensorflow-lite-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="tensorflow-lite-component-os-support"></a>

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

## Prérequis
<a name="tensorflow-lite-component-requirements"></a>

Ce composant répond aux exigences suivantes :<a name="ml-component-requirements"></a>
+ Sur les appareils principaux de Greengrass exécutant Amazon Linux 2 ou Ubuntu 18.04, la version 2.27 ou ultérieure de la [bibliothèque GNU C](https://www.gnu.org/software/libc/) (glibc) est installée sur l'appareil.
+ Sur les appareils ARMv7L, tels que le Raspberry Pi, les dépendances pour OpenCV-Python sont installées sur l'appareil. Exécutez la commande suivante pour installer les dépendances.

  ```
  sudo apt-get install libopenjp2-7 libilmbase23 libopenexr-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev libgtk-3-0 libwebp-dev
  ```
+ Les appareils Raspberry Pi qui exécutent le système d'exploitation Raspberry Pi Bullseye doivent répondre aux exigences suivantes :
  + NumPy 1.22.4 ou version ultérieure installée sur l'appareil. Raspberry Pi OS Bullseye inclut une version antérieure de NumPy. Vous pouvez donc exécuter la commande suivante pour effectuer la mise à niveau NumPy sur l'appareil.

    ```
    pip3 install --upgrade numpy
    ```
  + L'ancienne pile de caméras activée sur l'appareil. Raspberry Pi OS Bullseye inclut une nouvelle pile de caméras qui est activée par défaut et qui n'est pas compatible. Vous devez donc activer la pile de caméras existante.<a name="raspberry-pi-bullseye-enable-legacy-camera-stack"></a>

**Pour activer l'ancienne pile de caméras**

    1. Exécutez la commande suivante pour ouvrir l'outil de configuration du Raspberry Pi.

       ```
       sudo raspi-config
       ```

    1. Sélectionnez **Options d'interface**.

    1. Sélectionnez **Legacy camera** pour activer l'ancienne pile de caméras.

    1. Redémarrez l'appareil Raspberry Pi.

### Points de terminaison et ports
<a name="tensorflow-lite-component-endpoints"></a>

Par défaut, ce composant utilise un script d'installation pour installer les packages à l'aide des `pip` commandes `apt` `yum``brew`,, et, en fonction de la plate-forme utilisée par le périphérique principal. Ce composant doit être capable d'exécuter des requêtes sortantes vers différents index de packages et référentiels pour exécuter le script d'installation. Pour autoriser le trafic sortant de ce composant à passer par un proxy ou un pare-feu, vous devez identifier les points de terminaison des index de packages et des référentiels auxquels votre périphérique principal se connecte pour l'installation.

Tenez compte des points suivants lorsque vous identifiez les points de terminaison requis pour le script d'installation de ce composant :
+ Les points de terminaison dépendent de la plate-forme de l'appareil principal. Par exemple, un périphérique principal qui exécute Ubuntu utilise `apt` plutôt que `yum` ou`brew`. En outre, les appareils qui utilisent le même index de packages peuvent avoir des listes de sources différentes, de sorte qu'ils peuvent récupérer des packages à partir de différents référentiels.
+ Les points de terminaison peuvent différer entre plusieurs appareils utilisant le même index de packages, car chaque appareil possède ses propres listes de sources qui définissent où récupérer les packages.
+ Les points de terminaison peuvent changer au fil du temps. Chaque index URLs de package fournit les référentiels dans lesquels vous téléchargez des packages, et le propriétaire d'un package peut modifier ce que fournit URLs l'index de package.

Pour plus d'informations sur les dépendances installées par ce composant et sur la façon de désactiver le script d'installation, consultez le paramètre [UseInstaller](#tensorflow-lite-component-config-useinstaller-term)de configuration.

Pour plus d'informations sur les points de terminaison et les ports requis pour le fonctionnement de base, consultez[Autoriser le trafic des appareils via un proxy ou un pare-feu](allow-device-traffic.md).

## Dépendances
<a name="tensorflow-lite-component-dependencies"></a>

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](#tensorflow-lite-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.5.14 and 2.5.15 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,13.0 | Flexible | 

------
#### [ 2.5.13 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,12.0 | Flexible | 

------
#### [ 2.5.12 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,11.0 | Flexible | 

------
#### [ 2.5.11 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,1,0 | Flexible | 

------
#### [ 2.5.10 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,9.0 | Flexible | 

------
#### [ 2.5.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,8.0 | Flexible | 

------
#### [ 2.5.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,7.0 | Flexible | 

------
#### [ 2.5.5 - 2.5.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,6.0 | Flexible | 

------
#### [ 2.5.3 and 2.5.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,5.0 | Flexible | 

------
#### [ 2.5.2 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,4.0 | Flexible | 

------
#### [ 2.5.1 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,3.0 | Flexible | 

------
#### [ 2.5.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,2.0 | Flexible | 

------

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="tensorflow-lite-component-configuration"></a>

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

`MLRootPath`  
<a name="ml-config-mlrootpath-desc"></a>(Facultatif) Le chemin du dossier sur les périphériques principaux Linux où les composants d'inférence lisent les images et écrivent les résultats d'inférence. Vous pouvez modifier cette valeur à n'importe quel emplacement de votre appareil auquel l'utilisateur exécutant ce composant a read/write accès.  
<a name="ml-config-mlrootpath-default-tfl"></a>Par défaut : `/greengrass/v2/work/variant.TensorFlowLite/greengrass_ml`

`WindowsMLRootPath`  
Cette fonctionnalité est disponible dans la version 1.6.6 et les versions ultérieures de ce composant.  
<a name="ml-config-windowsmlrootpath-desc"></a>(Facultatif) Le chemin du dossier sur le périphérique principal de Windows où les composants d'inférence lisent les images et écrivent les résultats d'inférence. Vous pouvez modifier cette valeur à n'importe quel emplacement de votre appareil auquel l'utilisateur exécutant ce composant a read/write accès.  
<a name="ml-config-windowsmlrootpath-default-dlr"></a>Par défaut : `C:\greengrass\v2\\work\\variant.DLR\\greengrass_ml`

  `UseInstaller`   
<a name="ml-config-useinstaller-desc-tfl"></a>(Facultatif) Valeur de chaîne qui définit s'il faut utiliser le script d'installation dans ce composant pour installer TensorFlow Lite et ses dépendances. Les valeurs prises en charge sont `true` et `false`.   <a name="ml-config-useinstaller-libraries-tfl"></a>

Définissez cette valeur sur `false` si vous souhaitez utiliser un script personnalisé pour l'installation de TensorFlow Lite ou si vous souhaitez inclure des dépendances d'exécution dans une image Linux prédéfinie. Pour utiliser ce composant avec les composants d'inférence TensorFlow Lite AWS fournis, installez les bibliothèques suivantes, y compris les dépendances, et mettez-les à la disposition de l'utilisateur du système, par exemple celui `ggc_user` qui exécute les composants ML.
+ [Python](https://www.python.org/downloads/) 3.8 ou version ultérieure, y compris `pip` pour votre version de Python
+ [TensorFlow Lite v2.5.0](https://www.tensorflow.org/lite/guide/python)
+ [NumPy](https://numpy.org/install/)
+ [OpenCV-Python](https://pypi.org/project/opencv-python/)
+ [Kit SDK des appareils AWS IoT v2 pour Python](https://github.com/aws/aws-iot-device-sdk-python-v2)
+ [AWS Common Runtime (CRT) Python](https://github.com/awslabs/aws-crt-python)
+ [Picamera](https://picamera.readthedocs.io/en/release-1.13/) (pour les appareils Raspberry Pi)
+ [`awscam`module](https://docs.aws.amazon.com/deeplens/latest/dg/deeplens-library-awscam-module.html) (pour AWS DeepLens appareils)
+ LibGL (pour les appareils Linux)
<a name="ml-config-useinstaller-default"></a>Par défaut : `true`

## Utilisation
<a name="tensorflow-lite-component-usage"></a>

Utilisez ce composant avec le paramètre `UseInstaller` de configuration défini sur `true` pour installer TensorFlow Lite et ses dépendances sur votre appareil. Le composant configure un environnement virtuel sur votre appareil qui inclut l'OpenCV NumPy et les bibliothèques requises pour Lite. TensorFlow 

**Note**  <a name="ml-installer-component-usage-note"></a>
Le script d'installation de ce composant installe également les dernières versions des bibliothèques système supplémentaires requises pour configurer l'environnement virtuel sur votre appareil et pour utiliser l'infrastructure d'apprentissage automatique installée. Cela peut mettre à niveau les bibliothèques système existantes sur votre appareil. Consultez le tableau suivant pour obtenir la liste des bibliothèques que ce composant installe pour chaque système d'exploitation pris en charge. Si vous souhaitez personnaliser ce processus d'installation, définissez le paramètre `UseInstaller` de configuration sur `false` et développez votre propre script d'installation.


| Plateforme | Bibliothèques installées sur le système de l'appareil | Bibliothèques installées dans l'environnement virtuel | 
| --- | --- | --- | 
| Armv7l | build-essential, cmake, ca-certificates, git | setuptools, wheel | 
| Amazon Linux 2 | mesa-libGL | Aucune | 
| Ubuntu | wget | Aucune | 

Lorsque vous déployez votre composant d'inférence, ce composant d'exécution vérifie d'abord si TensorFlow Lite et ses dépendances sont déjà installés sur votre appareil. Si ce n'est pas le cas, le composant d'exécution les installe pour vous. 

## Fichier journal local
<a name="tensorflow-lite-component-log-file"></a>

Ce composant utilise le fichier journal suivant.

------
#### [ Linux ]

```
/greengrass/v2/logs/variant.TensorFlowLite.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\variant.TensorFlowLite.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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par le chemin d'accès au dossier AWS IoT Greengrass racine.

------
#### [ Linux ]

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

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\variant.TensorFlowLite.log -Tail 10 -Wait
  ```

------

## Journal des modifications
<a name="tensorflow-lite-component-changelog"></a>

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


|  Version  |  Modifications  | 
| --- | --- | 
|  2.5,15  |  Version mise à jour pour la version 2.12.5 de Greengrass Nucleus.  | 
|  2.5,14  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  2.5,13  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  2.5,12  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. | 
|  2.5.11  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  2.5.10  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  2.5.9  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  2.5.8  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  2.5.7  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/tensorflow-lite-component.html)  | 
|  2.5.6  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/tensorflow-lite-component.html)  | 
|  2.5.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/tensorflow-lite-component.html)  | 
|  2.5.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/tensorflow-lite-component.html)  | 
|  2.5.3  |  Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.  | 
|  2.5.2  |  Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.  | 
|  2.5.1  |  Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.  | 
|  2.5.0  |  Première version.  | 

# Adaptateur de protocole Modbus-RTU
<a name="modbus-rtu-protocol-adapter-component"></a>

Le composant adaptateur de protocole Modbus-RTU (`aws.greengrass.Modbus`) interroge les informations des appareils Modbus RTU locaux.

Pour demander des informations à un appareil Modbus RTU local avec ce composant, publiez un message dans la rubrique où ce composant est abonné. Dans le message, spécifiez la demande Modbus RTU à envoyer à un appareil. Ce composant publie ensuite une réponse contenant le résultat de la demande Modbus RTU.

**Note**  
Ce composant fournit des fonctionnalités similaires à celles du connecteur d'adaptateur de protocole Modbus RTU de la version 1. AWS IoT Greengrass Pour plus d'informations, consultez la section [Connecteur d'adaptateur de protocole Modbus RTU](https://docs.aws.amazon.com/greengrass/latest/developerguide/modbus-protocol-adapter-connector.html) dans le guide du *développeur AWS IoT Greengrass V1*.

**Topics**
+ [Versions](#modbus-rtu-protocol-adapter-component-versions)
+ [Type](#modbus-rtu-protocol-adapter-component-type)
+ [Système d’exploitation](#modbus-rtu-protocol-adapter-component-os-support)
+ [Prérequis](#modbus-rtu-protocol-adapter-component-requirements)
+ [Dépendances](#modbus-rtu-protocol-adapter-component-dependencies)
+ [Configuration](#modbus-rtu-protocol-adapter-component-configuration)
+ [Données d'entrée](#modbus-rtu-protocol-adapter-component-input-data)
+ [Données de sortie](#modbus-rtu-protocol-adapter-component-output-data)
+ [Demandes et réponses de Modbus RTU](#modbus-rtu-protocol-adapter-component-requests-responses)
+ [Fichier journal local](#modbus-rtu-protocol-adapter-component-log-file)
+ [Licences](#modbus-rtu-protocol-adapter-component-licenses)
+ [Journal des modifications](#modbus-rtu-protocol-adapter-component-changelog)

## Versions
<a name="modbus-rtu-protocol-adapter-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2,1x
+ 2,0.x

## Type
<a name="modbus-rtu-protocol-adapter-component-type"></a>

<a name="public-component-type-lambda"></a>Ce <a name="public-component-type-lambda-phrase"></a>composant est un composant Lambda () `aws.greengrass.lambda`. [Le [noyau Greengrass](greengrass-nucleus-component.md) exécute la fonction Lambda de ce composant à l'aide du composant Lambda Launcher.](lambda-launcher-component.md)

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="modbus-rtu-protocol-adapter-component-os-support"></a>

Ce composant ne peut être installé que sur les appareils principaux de Linux.

## Prérequis
<a name="modbus-rtu-protocol-adapter-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ <a name="core-device-lambda-function-requirements"></a>Votre appareil principal doit répondre aux exigences pour exécuter les fonctions Lambda. Si vous souhaitez que le périphérique principal exécute des fonctions Lambda conteneurisées, le périphérique doit répondre aux exigences requises. Pour de plus amples informations, veuillez consulter [Exigences relatives à la fonction Lambda](setting-up.md#greengrass-v2-lambda-requirements).
+ <a name="public-component-python3-requirement"></a>[Python](https://www.python.org/) version 3.7 installé sur le périphérique principal et ajouté à la variable d'environnement PATH.
+ Connexion physique entre le périphérique AWS IoT Greengrass principal et les appareils Modbus. Le périphérique principal doit être connecté physiquement au réseau Modbus RTU via un port série, tel qu'un port USB.
+ <a name="connector-component-legacy-subscription-router-dependency"></a>Pour recevoir les données de sortie de ce composant, vous devez fusionner la mise à jour de configuration suivante pour l'[ancien composant routeur d'abonnement](legacy-subscription-router-component.md) (`aws.greengrass.LegacySubscriptionRouter`) lorsque vous déployez ce composant. Cette configuration indique le sujet dans lequel ce composant publie les réponses.

------
#### [ Legacy subscription router v2.1.x ]

  ```
  {
    "subscriptions": {
      "aws-greengrass-modbus": {
        "id": "aws-greengrass-modbus",
        "source": "component:aws.greengrass.Modbus",
        "subject": "modbus/adapter/response",
        "target": "cloud"
      }
    }
  }
  ```

------
#### [ Legacy subscription router v2.0.x ]

  ```
  {
    "subscriptions": {
      "aws-greengrass-modbus": {
        "id": "aws-greengrass-modbus",
        "source": "arn:aws:lambda:region:aws:function:aws-greengrass-modbus:version",
        "subject": "modbus/adapter/response",
        "target": "cloud"
      }
    }
  }
  ```<a name="connector-component-legacy-subscription-router-dependency-replace"></a>
  + *region*Remplacez-le par Région AWS celui que vous utilisez.
  + *version*Remplacez-le par la version de la fonction Lambda exécutée par ce composant. Pour trouver la version de la fonction Lambda, vous devez consulter la recette de la version de ce composant que vous souhaitez déployer. Ouvrez la page de détails de ce composant dans la [AWS IoT Greengrass console](https://console.aws.amazon.com//greengrass) et recherchez la paire clé-valeur de la **fonction Lambda**. Cette paire clé-valeur contient le nom et la version de la fonction Lambda.

**Important**  <a name="connector-component-legacy-subscription-router-dependency-note"></a>
Vous devez mettre à jour la version de la fonction Lambda sur l'ancien routeur d'abonnement chaque fois que vous déployez ce composant. Cela garantit que vous utilisez la bonne version de la fonction Lambda pour la version du composant que vous déployez.

------

  <a name="connector-component-create-deployments"></a>Pour de plus amples informations, veuillez consulter [Créer des déploiements](create-deployments.md).
+ L'adaptateur de protocole Modbus-RTU est compatible pour fonctionner dans un VPC.

## Dépendances
<a name="modbus-rtu-protocol-adapter-component-dependencies"></a>

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](#modbus-rtu-protocol-adapter-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.1.11 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,16,0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.1.10 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,15.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.1.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,14.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.1.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,13,0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.1.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,12.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.1.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,11.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.1.4 and 2.1.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,1,0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.1.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,9.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) | >=2,0.0 <2,8.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) | >=2,0.0 <2,7.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.8 and 2.1.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,6.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,5.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,4.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,3.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,2.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,3 <2,10  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | >=10,0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | >=10,0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | >=10,0  | Stricte | 

------

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="modbus-rtu-protocol-adapter-component-configuration"></a>

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

**Note**  <a name="connector-component-lambda-parameters"></a>
La configuration par défaut de ce composant inclut les paramètres de la fonction Lambda. Nous vous recommandons de modifier uniquement les paramètres suivants pour configurer ce composant sur vos appareils.

------
#### [ v2.1.x ]

`lambdaParams`  
Objet contenant les paramètres de la fonction Lambda de ce composant. Cet objet contient les informations suivantes :    
`EnvironmentVariables`  
Objet contenant les paramètres de la fonction Lambda. Cet objet contient les informations suivantes :    
`ModbusLocalPort`  <a name="modbus-rtu-protocol-adapter-configuration-modbuslocalport"></a>
Le chemin absolu vers le port série physique Modbus sur le périphérique principal, tel que`/dev/ttyS2`.  
Pour exécuter ce composant dans un conteneur, vous devez définir ce chemin en tant que périphérique système (dans`containerParams.devices`) auquel le composant peut accéder. Ce composant s'exécute dans un conteneur par défaut.  
Ce composant doit avoir read/write accès à l'appareil.  
`ModbusBaudRate`  
(Facultatif) Une valeur de chaîne qui indique le débit en bauds pour les communications série avec les périphériques Modbus TCP locaux.  
Par défaut : `9600`  
`ModbusByteSize`  
(Facultatif) Une valeur de chaîne qui indique la taille d'un octet lors d'une communication série avec des périphériques Modbus TCP locaux. Choisissez`5`, `6``7`, ou `8` bits.  
Par défaut : `8`  
`ModbusParity`  
(Facultatif) Mode de parité à utiliser pour vérifier l'intégrité des données dans les communications série avec les appareils Modbus TCP locaux.  
+ `E`— Vérifiez l'intégrité des données avec une parité uniforme.
+ `O`— Vérifiez l'intégrité des données avec une parité impaire.
+ `N`— Ne vérifiez pas l'intégrité des données.
Par défaut : `N`  
`ModbusStopBits`  
(Facultatif) Valeur de chaîne qui indique le nombre de bits indiquant la fin d'un octet lors d'une communication série avec des périphériques Modbus TCP locaux.  
Par défaut : `1`

`containerMode`  <a name="modbus-rtu-protocol-adapter-configuration-containermode"></a>
(Facultatif) Mode de conteneurisation de ce composant. Sélectionnez parmi les options suivantes :  
+ `GreengrassContainer`— Le composant s'exécute dans un environnement d'exécution isolé à l'intérieur du AWS IoT Greengrass conteneur.

  Si vous spécifiez cette option, vous devez spécifier un périphérique système (in`containerParams.devices`) pour permettre au conteneur d'accéder au périphérique Modbus.
+ `NoContainer`— Le composant ne s'exécute pas dans un environnement d'exécution isolé.
Par défaut : `GreengrassContainer`

`containerParams`  <a name="modbus-rtu-protocol-adapter-configuration-containerparams"></a>
<a name="connector-component-container-params-description"></a>(Facultatif) Objet contenant les paramètres du conteneur pour ce composant. Le composant utilise ces paramètres si vous le spécifiez `GreengrassContainer` pour`containerMode`.  
Cet objet contient les informations suivantes :    
`memorySize`  
<a name="connector-component-container-params-memory-size-description"></a>(Facultatif) La quantité de mémoire (en kilo-octets) à allouer au composant.  
La valeur par défaut est de 512 Mo (525 312 Ko).  
`devices`  
(Facultatif) Objet qui spécifie les périphériques système auxquels le composant peut accéder dans un conteneur.  
Pour exécuter ce composant dans un conteneur, vous devez spécifier le périphérique système que vous configurez dans la variable d'`ModbusLocalPort`environnement.
Cet objet contient les informations suivantes :    
`0`— Il s'agit d'un index de tableau sous forme de chaîne.  
Un objet qui contient les informations suivantes :    
`path`  
Le chemin d'accès au périphérique système sur le périphérique principal. Elle doit avoir la même valeur que celle pour laquelle vous avez configuré`ModbusLocalPort`.  
`permission`  
(Facultatif) L'autorisation d'accéder au périphérique système depuis le conteneur. Cette valeur doit être`rw`, ce qui indique que le composant a read/write accès au périphérique système.  
Par défaut : `rw`  
`addGroupOwner`  
(Facultatif) S'il faut ou non ajouter le groupe système qui exécute le composant en tant que propriétaire du périphérique système.  
Par défaut : `true`

`pubsubTopics`  <a name="connector-component-pubsub-topics-parameter"></a>
(Facultatif) Objet contenant les rubriques auxquelles le composant s'abonne pour recevoir des messages. Vous pouvez spécifier chaque sujet et indiquer si le composant est abonné à des sujets MQTT provenant de sujets locaux AWS IoT Core ou locaux publish/subscribe .  
Cet objet contient les informations suivantes :    
`0`— Il s'agit d'un index de tableau sous forme de chaîne.  
Un objet qui contient les informations suivantes :    
`type`  
(Facultatif) Type de publish/subscribe messagerie utilisé par ce composant pour s'abonner aux messages. Sélectionnez parmi les options suivantes :  
+ `PUB_SUB` – Abonnez-vous aux messages locaux de publication/abonnement. Si vous choisissez cette option, le sujet ne peut pas contenir de caractères génériques MQTT. Pour plus d'informations sur la façon d'envoyer des messages à partir d'un composant personnalisé lorsque vous spécifiez cette option, consultez[Publier/souscrire des messages locaux](ipc-publish-subscribe.md).
+ `IOT_CORE`— Abonnez-vous aux messages AWS IoT Core MQTT. Si vous choisissez cette option, le sujet peut contenir des caractères génériques MQTT. Pour plus d'informations sur la façon d'envoyer des messages à partir de composants personnalisés lorsque vous spécifiez cette option, consultez[Publier/souscrire AWS IoT Core des messages MQTT](ipc-iot-core-mqtt.md).
Par défaut : `PUB_SUB`  
`topic`  
(Facultatif) Rubrique à laquelle le composant s'abonne pour recevoir des messages. Si vous spécifiez `IotCore` pour`type`, vous pouvez utiliser des caractères génériques MQTT (`+`et`#`) dans cette rubrique.

**Example Exemple : mise à jour de fusion de configuration (mode conteneur)**  <a name="modbus-rtu-protocol-adapter-configuration-example-container-mode"></a>

```
{
  "lambdaExecutionParameters": {
    "EnvironmentVariables": {
      "ModbusLocalPort": "/dev/ttyS2"
    }
  },
  "containerMode": "GreengrassContainer",
  "containerParams": {
    "devices": {
      "0": {
        "path": "/dev/ttyS2",
        "permission": "rw",
        "addGroupOwner": true
      }
    }
  }
}
```

**Example Exemple : mise à jour de fusion de configuration (pas de mode conteneur)**  <a name="modbus-rtu-protocol-adapter-configuration-example-no-container-mode"></a>

```
{
  "lambdaExecutionParameters": {
    "EnvironmentVariables": {
      "ModbusLocalPort": "/dev/ttyS2"
    }
  },
  "containerMode": "NoContainer"
}
```

------
#### [ v2.0.x ]

`lambdaParams`  
Objet contenant les paramètres de la fonction Lambda de ce composant. Cet objet contient les informations suivantes :    
`EnvironmentVariables`  
Objet contenant les paramètres de la fonction Lambda. Cet objet contient les informations suivantes :    
`ModbusLocalPort`  <a name="modbus-rtu-protocol-adapter-configuration-modbuslocalport"></a>
Le chemin absolu vers le port série physique Modbus sur le périphérique principal, tel que`/dev/ttyS2`.  
Pour exécuter ce composant dans un conteneur, vous devez définir ce chemin en tant que périphérique système (dans`containerParams.devices`) auquel le composant peut accéder. Ce composant s'exécute dans un conteneur par défaut.  
Ce composant doit avoir read/write accès à l'appareil.

`containerMode`  <a name="modbus-rtu-protocol-adapter-configuration-containermode"></a>
(Facultatif) Mode de conteneurisation de ce composant. Sélectionnez parmi les options suivantes :  
+ `GreengrassContainer`— Le composant s'exécute dans un environnement d'exécution isolé à l'intérieur du AWS IoT Greengrass conteneur.

  Si vous spécifiez cette option, vous devez spécifier un périphérique système (in`containerParams.devices`) pour permettre au conteneur d'accéder au périphérique Modbus.
+ `NoContainer`— Le composant ne s'exécute pas dans un environnement d'exécution isolé.
Par défaut : `GreengrassContainer`

`containerParams`  <a name="modbus-rtu-protocol-adapter-configuration-containerparams"></a>
<a name="connector-component-container-params-description"></a>(Facultatif) Objet contenant les paramètres du conteneur pour ce composant. Le composant utilise ces paramètres si vous le spécifiez `GreengrassContainer` pour`containerMode`.  
Cet objet contient les informations suivantes :    
`memorySize`  
<a name="connector-component-container-params-memory-size-description"></a>(Facultatif) La quantité de mémoire (en kilo-octets) à allouer au composant.  
La valeur par défaut est de 512 Mo (525 312 Ko).  
`devices`  
(Facultatif) Objet qui spécifie les périphériques système auxquels le composant peut accéder dans un conteneur.  
Pour exécuter ce composant dans un conteneur, vous devez spécifier le périphérique système que vous configurez dans la variable d'`ModbusLocalPort`environnement.
Cet objet contient les informations suivantes :    
`0`— Il s'agit d'un index de tableau sous forme de chaîne.  
Un objet qui contient les informations suivantes :    
`path`  
Le chemin d'accès au périphérique système sur le périphérique principal. Elle doit avoir la même valeur que celle pour laquelle vous avez configuré`ModbusLocalPort`.  
`permission`  
(Facultatif) L'autorisation d'accéder au périphérique système depuis le conteneur. Cette valeur doit être`rw`, ce qui indique que le composant a read/write accès au périphérique système.  
Par défaut : `rw`  
`addGroupOwner`  
(Facultatif) S'il faut ou non ajouter le groupe système qui exécute le composant en tant que propriétaire du périphérique système.  
Par défaut : `true`

`pubsubTopics`  <a name="connector-component-pubsub-topics-parameter"></a>
(Facultatif) Objet contenant les rubriques auxquelles le composant s'abonne pour recevoir des messages. Vous pouvez spécifier chaque sujet et indiquer si le composant est abonné à des sujets MQTT provenant de sujets locaux AWS IoT Core ou locaux publish/subscribe .  
Cet objet contient les informations suivantes :    
`0`— Il s'agit d'un index de tableau sous forme de chaîne.  
Un objet qui contient les informations suivantes :    
`type`  
(Facultatif) Type de publish/subscribe messagerie utilisé par ce composant pour s'abonner aux messages. Sélectionnez parmi les options suivantes :  
+ `PUB_SUB` – Abonnez-vous aux messages locaux de publication/abonnement. Si vous choisissez cette option, le sujet ne peut pas contenir de caractères génériques MQTT. Pour plus d'informations sur la façon d'envoyer des messages à partir d'un composant personnalisé lorsque vous spécifiez cette option, consultez[Publier/souscrire des messages locaux](ipc-publish-subscribe.md).
+ `IOT_CORE`— Abonnez-vous aux messages AWS IoT Core MQTT. Si vous choisissez cette option, le sujet peut contenir des caractères génériques MQTT. Pour plus d'informations sur la façon d'envoyer des messages à partir de composants personnalisés lorsque vous spécifiez cette option, consultez[Publier/souscrire AWS IoT Core des messages MQTT](ipc-iot-core-mqtt.md).
Par défaut : `PUB_SUB`  
`topic`  
(Facultatif) Rubrique à laquelle le composant s'abonne pour recevoir des messages. Si vous spécifiez `IotCore` pour`type`, vous pouvez utiliser des caractères génériques MQTT (`+`et`#`) dans cette rubrique.

**Example Exemple : mise à jour de fusion de configuration (mode conteneur)**  <a name="modbus-rtu-protocol-adapter-configuration-example-container-mode"></a>

```
{
  "lambdaExecutionParameters": {
    "EnvironmentVariables": {
      "ModbusLocalPort": "/dev/ttyS2"
    }
  },
  "containerMode": "GreengrassContainer",
  "containerParams": {
    "devices": {
      "0": {
        "path": "/dev/ttyS2",
        "permission": "rw",
        "addGroupOwner": true
      }
    }
  }
}
```

**Example Exemple : mise à jour de fusion de configuration (pas de mode conteneur)**  <a name="modbus-rtu-protocol-adapter-configuration-example-no-container-mode"></a>

```
{
  "lambdaExecutionParameters": {
    "EnvironmentVariables": {
      "ModbusLocalPort": "/dev/ttyS2"
    }
  },
  "containerMode": "NoContainer"
}
```

------

## Données d'entrée
<a name="modbus-rtu-protocol-adapter-component-input-data"></a>

Ce composant accepte les paramètres de demande Modbus RTU sur le sujet suivant et envoie la demande Modbus RTU à l'appareil. <a name="connector-component-local-publish"></a>Par défaut, ce composant s'abonne aux publish/subscribe messages locaux. Pour plus d'informations sur la façon de publier des messages vers ce composant à partir de vos composants personnalisés, consultez[Publier/souscrire des messages locaux](ipc-publish-subscribe.md). 

**Rubrique par défaut (publication/abonnement local) :** `modbus/adapter/request`

<a name="connector-component-input-properties"></a>Le message accepte les propriétés suivantes. Les messages d'entrée doivent être au format JSON.

`request`  
Les paramètres de la demande Modbus RTU à envoyer.  
La forme du message de demande dépend du type de demande Modbus RTU qu'il représente. Les propriétés suivantes sont requises pour toutes les demandes.  
Type : `object` qui contient les informations suivantes :    
`operation`  
Nom de l'opération à exécuter. Par exemple, spécifiez `ReadCoilsRequest` de lire les bobines sur un périphérique Modbus RTU. Pour plus d'informations sur les opérations prises en charge, consultez[Demandes et réponses de Modbus RTU](#modbus-rtu-protocol-adapter-component-requests-responses).  
Type : `string`  
`device`  
L'appareil cible de la requête.  
Cette valeur doit être un entier compris entre `0` et`247`.  
Type : `integer`
Les autres paramètres à inclure dans la demande dépendent de l'opération. Ce composant gère le contrôle de [redondance cyclique (CRC) afin de vérifier](https://en.wikipedia.org/wiki/Cyclic_redundancy_check) les demandes de données pour vous.  
Si votre demande inclut une `address` propriété, vous devez spécifier sa valeur sous forme d'entier. Par exemple, `"address": 1`.

`id`  <a name="connector-component-input-property-id"></a>
ID arbitraire de la demande. Utilisez cette propriété pour associer une demande d'entrée à une réponse de sortie. Lorsque vous spécifiez cette propriété, le composant définit la `id` propriété de l'objet de réponse sur cette valeur.  
Type : `string`

**Example Exemple d'entrée : demande de lecture de bobines**  

```
{
  "request": {
    "operation": "ReadCoilsRequest",
    "device": 1,
    "address": 1,
    "count": 1
  },
  "id": "MyRequest"
}
```

## Données de sortie
<a name="modbus-rtu-protocol-adapter-component-output-data"></a>

 <a name="connector-component-output-data"></a>Ce composant publie par défaut les réponses sous forme de données de sortie sur le sujet MQTT suivant. Vous devez spécifier cette rubrique `subject` dans la configuration de l'[ancien composant routeur d'abonnement](legacy-subscription-router-component.md). Pour plus d'informations sur la façon de s'abonner à des messages sur ce sujet dans vos composants personnalisés, consultez[Publier/souscrire AWS IoT Core des messages MQTT](ipc-iot-core-mqtt.md). 

**Rubrique par défaut (AWS IoT Core MQTT) :** `modbus/adapter/response`

La forme du message de réponse dépend de l'opération de demande et de l'état de la réponse. Pour obtenir des exemples, consultez [Exemples de demandes et de réponses](#modbus-rtu-protocol-adapter-component-examples).

Chaque réponse inclut les propriétés suivantes :

`response`  
Réponse de l'appareil Modbus RTU.  
Type : `object` qui contient les informations suivantes :    
`status`  
Le statut d'une demande. Le statut peut avoir l'une des valeurs suivantes :  
+ `Success`— La demande était valide, le composant l'a envoyée au réseau Modbus RTU et le réseau Modbus RTU a renvoyé une réponse.
+ `Exception`— La demande était valide, le composant l'a envoyée au réseau Modbus RTU et le réseau Modbus RTU a renvoyé une exception. Pour de plus amples informations, veuillez consulter [Statut de la réponse : Exception](#modbus-rtu-protocol-adapter-component-response-exception).
+ `No Response`— La demande n'était pas valide et le composant a détecté l'erreur avant d'envoyer la demande au réseau Modbus RTU. Pour de plus amples informations, veuillez consulter [Statut de la réponse : Pas de réponse](#modbus-rtu-protocol-adapter-component-response-noresponse).  
`operation`  
Opération demandée par le composant.  
`device`  
L'appareil sur lequel le composant a envoyé la demande.  
`payload`  
Réponse de l'appareil Modbus RTU. Si tel `status` est le cas`No Response`, cet objet contient uniquement une `error` propriété avec la description de l'erreur (par exemple,`[Input/Output] No Response received from the remote unit`).

`id`  
L'ID de la demande, que vous pouvez utiliser pour identifier quelle réponse correspond à quelle demande.

**Note**  
Une réponse pour une opération d'écriture est simplement un écho de la demande. Bien que les réponses écrites n'incluent pas d'informations pertinentes, il est recommandé de vérifier le statut de la réponse pour voir si la demande aboutit ou échoue.

**Example Exemple de sortie : réussite**  

```
{
  "response" : {
    "status" : "success",
    "device": 1,
    "operation": "ReadCoilsRequest",
    "payload": {
      "function_code": 1,
      "bits": [1]
    }
  },
  "id" : "MyRequest"
}
```

**Example Exemple de sortie : échec**  

```
{
  "response" : {
    "status" : "fail",
    "error_message": "Internal Error",
    "error": "Exception",
    "device": 1,
    "operation": "ReadCoilsRequest",
    "payload": {
      "function_code": 129,
      "exception_code": 2
    }
  },
  "id" : "MyRequest"
}
```

Pour obtenir plus d’exemples, consultez [Exemples de demandes et de réponses](#modbus-rtu-protocol-adapter-component-examples).

## Demandes et réponses de Modbus RTU
<a name="modbus-rtu-protocol-adapter-component-requests-responses"></a>

Ce connecteur accepte les paramètres de demande de Modbus RTU en tant que [données d'entrée](#modbus-rtu-protocol-adapter-component-input-data) et publie les réponses en tant que [données de sortie](#modbus-rtu-protocol-adapter-component-output-data).

Les opérations communes suivantes sont prises en charge.


| Nom de l'opération dans la demande | Code de fonction dans la réponse | 
| --- | --- | 
| ReadCoilsRequest | 01 | 
| ReadDiscreteInputsRequest | 02 | 
| ReadHoldingRegistersRequest | 03 | 
| ReadInputRegistersRequest | 04 | 
| WriteSingleCoilRequest | 05 | 
| WriteSingleRegisterRequest | 06 | 
| WriteMultipleCoilsRequest | 15 | 
| WriteMultipleRegistersRequest | 16 | 
| MaskWriteRegisterRequest | 22 | 
| ReadWriteMultipleRegistersRequest | 23 | 

### Exemples de demandes et de réponses
<a name="modbus-rtu-protocol-adapter-component-examples"></a>

Voici des exemples de demandes et de réponses pour les opérations prises en charge.

Bobines de lecture  
**Exemple de requête :**  

```
{
  "request": {
    "operation": "ReadCoilsRequest",
    "device": 1,
    "address": 1,
    "count": 1
  },
  "id": "TestRequest"
}
```
**Exemple de réponse :**  

```
{
  "response": {
    "status": "success",
    "device": 1,
    "operation": "ReadCoilsRequest",
    "payload": {
      "function_code": 1,
      "bits": [1]
    }
  },
  "id" : "TestRequest"
}
```

Lire les entrées discrètes  
**Exemple de requête :**  

```
{
  "request": {
    "operation": "ReadDiscreteInputsRequest",
    "device": 1,
    "address": 1,
    "count": 1
  },
  "id": "TestRequest"
}
```
**Exemple de réponse :**  

```
{
  "response": {
    "status": "success",
    "device": 1,
    "operation": "ReadDiscreteInputsRequest",
    "payload": {
      "function_code": 2,
      "bits": [1]
    }
  },
  "id" : "TestRequest"
}
```

Lire les registres de détention  
**Exemple de requête :**  

```
{
  "request": {
    "operation": "ReadHoldingRegistersRequest",
    "device": 1,
    "address": 1,
    "count": 1
  },
  "id": "TestRequest"
}
```
**Exemple de réponse :**  

```
{
  "response": {
    "status": "success",
    "device": 1,
    "operation": "ReadHoldingRegistersRequest",
    "payload": {
      "function_code": 3,
      "registers": [20,30]
    }
  },
  "id" : "TestRequest"
}
```

Lire les registres d'entrée  
**Exemple de requête :**  

```
{
  "request": {
    "operation": "ReadInputRegistersRequest",
    "device": 1,
    "address": 1,
    "count": 1
  },
  "id": "TestRequest"
}
```

Écrire une seule bobine  
**Exemple de requête :**  

```
{
  "request": {
    "operation": "WriteSingleCoilRequest",
    "device": 1,
    "address": 1,
    "value": 1
  },
  "id": "TestRequest"
}
```
**Exemple de réponse :**  

```
{
  "response": {
    "status": "success",
    "device": 1,
    "operation": "WriteSingleCoilRequest",
    "payload": {
      "function_code": 5,
      "address": 1,
      "value": true
    }
  },
  "id" : "TestRequest"
}
```

Écrire un registre unique  
**Exemple de requête :**  

```
{
  "request": {
    "operation": "WriteSingleRegisterRequest",
    "device": 1,
    "address": 1,
    "value": 1
  },
  "id": "TestRequest"
}
```

Écrire plusieurs bobines  
**Exemple de requête :**  

```
{
  "request": {
    "operation": "WriteMultipleCoilsRequest",
    "device": 1,
    "address": 1,
    "values": [1,0,0,1]
  },
  "id": "TestRequest"
}
```
**Exemple de réponse :**  

```
{
  "response": {
    "status": "success",
    "device": 1,
    "operation": "WriteMultipleCoilsRequest",
    "payload": {
      "function_code": 15,
      "address": 1,
      "count": 4
    }
  },
  "id" : "TestRequest"
}
```

Écrire plusieurs registres  
**Exemple de requête :**  

```
{
  "request": {
    "operation": "WriteMultipleRegistersRequest",
    "device": 1,
    "address": 1,
    "values": [20,30,10]
  },
  "id": "TestRequest"
}
```
**Exemple de réponse :**  

```
{
  "response": {
    "status": "success",
    "device": 1,
    "operation": "WriteMultipleRegistersRequest",
    "payload": {
      "function_code": 23,
      "address": 1,
      "count": 3
    }
  },
  "id" : "TestRequest"
}
```

Masque, écriture, registre  
**Exemple de requête :**  

```
{
  "request": {
    "operation": "MaskWriteRegisterRequest",
    "device": 1,
    "address": 1,
    "and_mask": 175,
    "or_mask": 1
  },
  "id": "TestRequest"
}
```
**Exemple de réponse :**  

```
{
  "response": {
    "status": "success",
    "device": 1,
    "operation": "MaskWriteRegisterRequest",
    "payload": {
      "function_code": 22,
      "and_mask": 0,
      "or_mask": 8
    }
  },
  "id" : "TestRequest"
}
```

Lecture et écriture de plusieurs registres  
**Exemple de requête :**  

```
{
  "request": {
    "operation": "ReadWriteMultipleRegistersRequest",
    "device": 1,
    "read_address": 1,
    "read_count": 2,
    "write_address": 3,
    "write_registers": [20,30,40]
  },
  "id": "TestRequest"
}
```
**Exemple de réponse :**  

```
{
  "response": {
    "status": "success",
    "device": 1,
    "operation": "ReadWriteMultipleRegistersRequest",
    "payload": {
      "function_code": 23,
      "registers": [10,20,10,20]
    }
  },
  "id" : "TestRequest"
}
```
La réponse inclut les registres que le composant lit.

### Statut de la réponse : Exception
<a name="modbus-rtu-protocol-adapter-component-response-exception"></a>

Des exceptions peuvent se produire lorsque le format de la demande est valide, mais la demande échoue. Dans ce cas, la réponse contient les informations suivantes :
+ Le `status` est réglé sur `Exception`.
+ Le `function_code` est égal au code de fonction de la requête \$1 128.
+ Le `exception_code` contient le code d'exception. Pour plus d'informations, consultez les codes d'exception de Modbus.

**Exemple :**

```
{
  "response": {
    "status": "fail",
    "error_message": "Internal Error",
    "error": "Exception",
    "device": 1,
    "operation": "ReadCoilsRequest",
    "payload": {
      "function_code": 129,
      "exception_code": 2
    }
  },
  "id": "TestRequest"
}
```

### Statut de la réponse : Pas de réponse
<a name="modbus-rtu-protocol-adapter-component-response-noresponse"></a>

Ce connecteur effectue des vérifications de validation sur la demande Modbus. Par exemple, il vérifie les formats non valides et les champs manquants. Si la validation échoue, le connecteur n'envoie pas la demande. A la place, il renvoie une réponse qui contient les informations suivantes :
+ Le `status` est réglé sur `No Response`.
+ L'`error` contient la raison de l'erreur.
+ Le `error_message` contient le message de l'erreur.

**Exemples :**

```
{
  "response": {
    "status": "fail",
    "error_message": "Invalid address field. Expected <type 'int'>, got <type 'str'>",
    "error": "No Response",
    "device": 1,
    "operation": "ReadCoilsRequest",
    "payload": {
      "error": "Invalid address field. Expected Expected <type 'int'>, got <type 'str'>"
    }
  },
  "id": "TestRequest"
}
```

Si la demande vise un appareil qui n'existe pas ou si le réseau Modbus RTU ne fonctionne pas, vous pouvez obtenir une `ModbusIOException` qui utilise le format No Response.

```
{
  "response": {
    "status": "fail",
    "error_message": "[Input/Output] No Response received from the remote unit",
    "error": "No Response",
    "device": 1,
    "operation": "ReadCoilsRequest",
    "payload": {
      "error": "[Input/Output] No Response received from the remote unit"
    }
  },
  "id": "TestRequest"
}
```

## Fichier journal local
<a name="modbus-rtu-protocol-adapter-component-log-file"></a>

Ce composant utilise le fichier journal suivant.

```
/greengrass/v2/logs/aws.greengrass.Modbus.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. Remplacez `/greengrass/v2` par le chemin d'accès au dossier AWS IoT Greengrass racine.

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

## Licences
<a name="modbus-rtu-protocol-adapter-component-licenses"></a>

Ce composant inclut les logiciels/licences tiers suivants :
+ [Licence pymodbus/BSD](https://github.com/riptideio/pymodbus/blob/master/README.rst)
+ [Licence pyserial](https://github.com/pyserial/pyserial) /BSD

<a name="component-core-software-license"></a>Ce composant est publié dans le cadre du contrat de [licence logicielle Greengrass Core](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf).

## Journal des modifications
<a name="modbus-rtu-protocol-adapter-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.1.11  | Version mise à jour pour la version 2.15.0 de Greengrass Nucleus. | 
|  2.1.10  | Version mise à jour pour la version 2.14.0 de Greengrass Nucleus. | 
|  2.1.9  | Version mise à jour pour la version 2.13.0 de Greengrass Nucleus. | 
|  2.1.8  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  2.1.7  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  2.1.6  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. | 
|  2.1.5  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/modbus-rtu-protocol-adapter-component.html) | 
|  2.1.4  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  2.1.3  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  2.1.2  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  2.1.1  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/modbus-rtu-protocol-adapter-component.html)  | 
|  2.0.8  |  Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.  | 
|  2.0.7  |  Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.  | 
|  2.0.6  |  Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.  | 
|  2.0.5  |  Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.  | 
|  2.0.4  |  Version mise à jour pour la version 2.1.0 de Greengrass Nucleus.  | 
|  2.0.3  |  Première version.  | 

# Pont MQTT
<a name="mqtt-bridge-component"></a>

Le composant du pont MQTT (`aws.greengrass.clientdevices.mqtt.Bridge`) relaie les messages MQTT entre les appareils clients, les publications et abonnements locaux de Greengrass, et. AWS IoT Core Vous pouvez utiliser ce composant pour agir sur les messages MQTT des appareils clients dans des composants personnalisés et pour synchroniser les appareils clients avec le AWS Cloud.

**Note**  <a name="client-device-component-context"></a>
Les appareils clients sont des appareils IoT locaux qui se connectent à un appareil principal de Greengrass pour envoyer des messages MQTT et des données à traiter. Pour de plus amples informations, veuillez consulter [Interagissez avec les appareils IoT locaux](interact-with-local-iot-devices.md).

Vous pouvez utiliser ce composant pour relayer des messages entre les courtiers de messages suivants :
+ MQTT local — Le courtier MQTT local gère les messages entre les appareils clients et un périphérique principal.
+ Local publish/subscribe — Le courtier de messages Greengrass local gère les messages entre les composants d'un appareil principal. Pour plus d'informations sur la façon d'interagir avec ces messages dans les composants Greengrass, consultez. [Publier/souscrire des messages locaux](ipc-publish-subscribe.md)
+ AWS IoT Core — Le broker AWS IoT Core MQTT gère les messages entre les appareils IoT et les AWS Cloud destinations. Pour plus d'informations sur la façon d'interagir avec ces messages dans les composants Greengrass, consultez. [Publier/souscrire AWS IoT Core des messages MQTT](ipc-iot-core-mqtt.md)
**Note**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
Le pont MQTT utilise QoS 1 pour publier et s' AWS IoT Core abonner, même lorsqu'un appareil client utilise QoS 0 pour publier et s'abonner au courtier MQTT local. Par conséquent, vous pouvez observer une latence supplémentaire lorsque vous relayez des messages MQTT depuis des appareils clients sur le broker MQTT local vers. AWS IoT Core Pour plus d'informations sur la configuration MQTT sur les appareils principaux, consultez[Configurer les délais d'expiration et les paramètres de cache du MQTT](configure-greengrass-core-v2.md#configure-mqtt).

**Topics**
+ [Versions](#mqtt-bridge-component-versions)
+ [Type](#mqtt-bridge-component-type)
+ [Système d’exploitation](#mqtt-bridge-component-os-support)
+ [Prérequis](#mqtt-bridge-component-requirements)
+ [Dépendances](#mqtt-bridge-component-dependencies)
+ [Configuration](#mqtt-bridge-component-configuration)
+ [Fichier journal local](#mqtt-bridge-component-log-file)
+ [Journal des modifications](#mqtt-bridge-component-changelog)

## Versions
<a name="mqtt-bridge-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2.3.x
+ 2.2.x
+ 2,1x
+ 2,0.x

## Type
<a name="mqtt-bridge-component-type"></a>

<a name="public-component-type-plugin-para1"></a>Ce composant est un composant de plugin (`aws.greengrass.plugin`). Le [noyau Greengrass](greengrass-nucleus-component.md) 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.

<a name="public-component-type-plugin-para2"></a>Ce composant utilise le même fichier journal que le noyau Greengrass. Pour de plus amples informations, veuillez consulter [AWS IoT Greengrass Journaux de surveillance](monitor-logs.md).

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="mqtt-bridge-component-os-support"></a>

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

## Prérequis
<a name="mqtt-bridge-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ Si vous configurez le composant broker MQTT du périphérique principal pour utiliser un port autre que le port par défaut 8883, vous devez utiliser le pont MQTT v2.1.0 ou version ultérieure. Configurez-le pour qu'il se connecte au port sur lequel le broker opère.
+ Le composant de pont MQTT peut être exécuté dans un VPC.

## Dépendances
<a name="mqtt-bridge-component-dependencies"></a>

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](#mqtt-bridge-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.3.2 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Authentification de l'appareil client](client-device-auth-component.md) | >=2,2,0 <2,6,0 | Stricte | 

------
#### [ 2.3.0 and 2.3.1 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Authentification de l'appareil client](client-device-auth-component.md) | >=2,2,0 <2,5,0 | Stricte | 

------
#### [ 2.2.5 and 2.2.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Authentification de l'appareil client](client-device-auth-component.md) | >=2,2,0 <2,5,0 | Stricte | 

------
#### [ 2.2.3 and 2.2.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Authentification de l'appareil client](client-device-auth-component.md) | >=2,2,0 <2,4,0 | Stricte | 

------
#### [ 2.2.0 – 2.2.2 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Authentification de l'appareil client](client-device-auth-component.md) | >=2,2,0 <2,3,0 | Stricte | 

------
#### [ 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 | 
| --- | --- | --- | 
| [Authentification de l'appareil client](client-device-auth-component.md) | >=2,0.0 <2,2.0 | Stricte | 

------
#### [ 2.0.0 to 2.1.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Authentification de l'appareil client](client-device-auth-component.md) | >=2,0.0 <2,10 | Stricte | 

------

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="mqtt-bridge-component-configuration"></a>

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

------
#### [ 2.3.0 – 2.3.2 ]

`mqttTopicMapping`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-description"></a>Les mappages de sujets que vous souhaitez relier. Ce composant s'abonne aux messages du sujet source et publie les messages qu'il reçoit dans le sujet de destination. Chaque mappage de rubrique définit le sujet, le type de source et le type de destination.  
Cet objet contient les informations suivantes :    
`topicMappingNameKey`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-name-key-description"></a>Nom de ce mappage de rubriques. *topicMappingNameKey*Remplacez-le par un nom qui vous aide à identifier ce mappage de rubriques.  
Cet objet contient les informations suivantes :    
`topic`  
Le sujet ou le filtre de sujet permettant de faire le lien entre les courtiers source et cible.  
Vous pouvez utiliser les caractères génériques de sujet `+` et `#` MQTT pour relayer des messages sur tous les sujets correspondant à un filtre de sujet. Pour plus d'informations, consultez les [rubriques relatives au MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) dans le *Guide du AWS IoT Core développeur*.  
[Pour utiliser des caractères génériques de sujet MQTT avec le courtier `Pubsub` source, vous devez utiliser la version 2.6.0 ou ultérieure du composant Greengrass nucleus.](greengrass-nucleus-component.md)  
`targetTopicPrefix`  
Le préfixe à ajouter au sujet cible lorsque ce composant relaie le message.  
`source`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-source"></a>
Le courtier de messages source. Sélectionnez parmi les options suivantes :  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`— Le broker MQTT local où les appareils clients communiquent.
+ `Pubsub`— Le courtier de publish/subscribe messages Greengrass local.
+ `IotCore`— Le courtier de messages AWS IoT Core MQTT.
**Note**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
Le pont MQTT utilise QoS 1 pour publier et s' AWS IoT Core abonner, même lorsqu'un appareil client utilise QoS 0 pour publier et s'abonner au courtier MQTT local. Par conséquent, vous pouvez observer une latence supplémentaire lorsque vous relayez des messages MQTT depuis des appareils clients sur le broker MQTT local vers. AWS IoT Core Pour plus d'informations sur la configuration MQTT sur les appareils principaux, consultez[Configurer les délais d'expiration et les paramètres de cache du MQTT](configure-greengrass-core-v2.md#configure-mqtt).
`source`et `target` doit être différent.  
`target`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-target"></a>
Le courtier de messages cible. Sélectionnez parmi les options suivantes :  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`— Le broker MQTT local où les appareils clients communiquent.
+ `Pubsub`— Le courtier de publish/subscribe messages Greengrass local.
+ `IotCore`— Le courtier de messages AWS IoT Core MQTT.
**Note**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
Le pont MQTT utilise QoS 1 pour publier et s' AWS IoT Core abonner, même lorsqu'un appareil client utilise QoS 0 pour publier et s'abonner au courtier MQTT local. Par conséquent, vous pouvez observer une latence supplémentaire lorsque vous relayez des messages MQTT depuis des appareils clients sur le broker MQTT local vers. AWS IoT Core Pour plus d'informations sur la configuration MQTT sur les appareils principaux, consultez[Configurer les délais d'expiration et les paramètres de cache du MQTT](configure-greengrass-core-v2.md#configure-mqtt).
`source`et `target` doit être différent.

mqtt5 RouteOptions  
(Facultatif) Fournit des options pour configurer les mappages de rubriques afin de relier les messages entre le sujet source et le sujet de destination.  
Cet objet contient les informations suivantes :    
*mqtt5RouteOptionsNameKey*  
Nom des options d'itinéraire pour le mappage d'un sujet. Remplacez *mqtt5RouteOptionsNameKey* par la correspondance *topicMappingNameKey* définie dans le `mqttTopicMapping` champ.  
Cet objet contient les informations suivantes :    
Pas de local  
(Facultatif) Lorsqu'il est activé, le pont ne transmet pas de messages sur un sujet qu'il a lui-même publié. Utilisez-le pour éviter les boucles, comme suit :  

```
{
    "mqtt5RouteOptions": {
        "toIoTCore": {
            "noLocal": true
        }
    },
    "mqttTopicMapping": {
        "toIoTCore": {
            "topic": "device",
            "source": "LocalMqtt",
            "target": "IotCore"
        },
        "toLocal": {
            "topic": "device",
            "source": "IotCore",
            "target": "LocalMqtt"
        }
    }
}
```
`noLocal`n'est pris en charge que pour les itinéraires où le `source` est`LocalMqtt`.  
Valeur par défaut : false  
retainAsPublished  
(Facultatif) Lorsque cette option est activée, les messages transférés par le pont ont le même `retain` indicateur que les messages publiés au courtier pour cette route.  
`retainAsPublished`n'est pris en charge que pour les itinéraires où le `source` est`LocalMqtt`.  
Valeur par défaut : false

mqtt  
(Facultatif) Paramètres du protocole MQTT pour communiquer avec le courtier local.    
version  
(Facultatif) Version du protocole MQTT utilisée par le pont pour communiquer avec le courtier local. Doit être identique à la version MQTT sélectionnée dans la configuration du noyau.   
Choisissez parmi les options suivantes :   
+ `mqtt3`
+ `mqtt5`
Vous devez déployer un broker MQTT lorsque le `target` champ `source` ou de l'`mqttTopicMapping`objet est défini sur. `LocalMqtt` Si vous choisissez `mqtt5` cette option, vous devez utiliser le[Courtier MQTT 5 (EMQX)](mqtt-broker-emqx-component.md).  
Par défaut : `mqtt3`  
ackTimeoutSeconds  
(Facultatif) Intervalle de temps nécessaire pour attendre les paquets PUBACK, SUBACK ou UNSUBACK avant l'échec de l'opération.  
Par défaut : 60  
connAckTimeoutMme  
(Facultatif) Intervalle de temps pendant lequel un paquet CONNACK doit être attendu avant d'arrêter la connexion.  
Par défaut : 20000 (20 secondes)  
pingTimeoutMs  
(Facultatif) Durée en millisecondes pendant laquelle le pont attend de recevoir un message PINGACK du courtier local. Si le délai d'attente dépasse le délai imparti, le pont se ferme puis rouvre la connexion MQTT. Cette valeur doit être inférieure à`keepAliveTimeoutSeconds`.  
Par défaut : 30000 (30 secondes)  
keepAliveTimeoutSecondes  
(Facultatif) Durée en secondes entre chaque message PING envoyé par le pont pour maintenir la connexion MQTT active. Cette valeur doit être supérieure à`pingTimeoutMs`.  
Par défaut : 60  
maxReconnectDelayMme  
(Facultatif) Durée maximale en secondes pendant laquelle MQTT se reconnecte.  
Par défaut : 30000 (30 secondes)  
minReconnectDelayMme  
(Facultatif) Durée minimale en secondes pendant laquelle MQTT se reconnecte.  
Recevez au maximum  
(Facultatif) Le nombre maximum de paquets QoS1 non reconnus que le pont peut envoyer.  
Par défaut : 100  
maximumPacketSize  
Le nombre maximum d'octets que le client acceptera pour un paquet MQTT.  
Par défaut : null (aucune limite)  
sessionExpiryInterval  
(Facultatif) Durée en secondes pendant laquelle vous pouvez demander la durée d'une session entre le pont et le courtier local.  
Par défaut : 4294967295 (la session n'expire jamais)

`brokerUri`  <a name="mqtt-bridge-component-configuration-broker-uri"></a>
(Facultatif) L'URI du broker MQTT local. Vous devez spécifier ce paramètre si vous configurez le broker MQTT pour utiliser un port différent du port par défaut 8883. Utilisez le format suivant, et remplacez-le *port* par le port sur lequel le broker MQTT fonctionne : `ssl://localhost:port`  
Par défaut : `ssl://localhost:8883`

startupTimeoutSeconds  
(Facultatif) Durée maximale en secondes pendant laquelle le composant démarre. L'état du composant change `BROKEN` s'il dépasse ce délai.  
Par défaut : `120`

**Example Exemple : mise à jour de la fusion de configurations**  <a name="mqtt-bridge-component-configuration-example-with-prefix"></a>
L'exemple de mise à jour de configuration suivant spécifie les éléments suivants :  
+ Transférez les messages des appareils clients vers AWS IoT Core des sujets correspondant au filtre de `clients/+/hello/world` sujets.
+ Transférez les messages des appareils clients vers publish/subscribe le local sur des sujets correspondant au filtre de `clients/+/detections` sujet, et ajoutez le `events/input/` préfixe au sujet cible. Le sujet cible obtenu correspond au filtre de `events/input/clients/+/detections` sujet.
+ Transférez les messages des appareils clients vers AWS IoT Core des sujets correspondant au filtre de `clients/+/status` sujet et ajoutez le `$aws/rules/StatusUpdateRule/` préfixe au sujet cible. Cet exemple transmet ces messages directement à une [AWS IoT règle](https://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html) nommée pour réduire les coûts `StatusUpdateRule` à l'aide de [Basic Ingest](https://docs.aws.amazon.com/iot/latest/developerguide/iot-basic-ingest.html).

```
{
  "mqttTopicMapping": {
    "ClientDeviceHelloWorld": {
      "topic": "clients/+/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    },
    "ClientDeviceEvents": {
      "topic": "clients/+/detections",
      "targetTopicPrefix": "events/input/",
      "source": "LocalMqtt",
      "target": "Pubsub"
    },
    "ClientDeviceCloudStatusUpdate": {
      "topic": "clients/+/status",
      "targetTopicPrefix": "$aws/rules/StatusUpdateRule/",
      "source": "LocalMqtt",
      "target": "IotCore"
    }
  }
}
```

**Example Exemple : Configuration de MQTT 5**  
L'exemple de configuration suivant met à jour les éléments suivants :  
+ Permet au pont d'utiliser le protocole MQTT 5 avec le courtier local.
+ Configure la conservation du MQTT en tant que paramètre publié pour le mappage des `ClientDeviceHelloWorld` rubriques.

```
{
  "mqttTopicMapping": {
    "ClientDeviceHelloWorld": {
      "topic": "clients/+/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    }
  },
  "mqtt5RouteOptions": {
    "ClientDeviceHelloWorld": {
      "retainAsPublished": true
    }
  },
  "mqtt": {
    "version": "mqtt5"
  }
}
```

------
#### [ 2.2.6 ]

`mqttTopicMapping`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-description"></a>Les mappages de sujets que vous souhaitez relier. Ce composant s'abonne aux messages du sujet source et publie les messages qu'il reçoit dans le sujet de destination. Chaque mappage de rubrique définit le sujet, le type de source et le type de destination.  
Cet objet contient les informations suivantes :    
`topicMappingNameKey`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-name-key-description"></a>Nom de ce mappage de rubriques. *topicMappingNameKey*Remplacez-le par un nom qui vous aide à identifier ce mappage de rubriques.  
Cet objet contient les informations suivantes :    
`topic`  
Le sujet ou le filtre de sujet permettant de faire le lien entre les courtiers source et cible.  
Vous pouvez utiliser les caractères génériques de sujet `+` et `#` MQTT pour relayer des messages sur tous les sujets correspondant à un filtre de sujet. Pour plus d'informations, consultez les [rubriques relatives au MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) dans le *Guide du AWS IoT Core développeur*.  
[Pour utiliser des caractères génériques de sujet MQTT avec le courtier `Pubsub` source, vous devez utiliser la version 2.6.0 ou ultérieure du composant Greengrass nucleus.](greengrass-nucleus-component.md)  
`targetTopicPrefix`  
Le préfixe à ajouter au sujet cible lorsque ce composant relaie le message.  
`source`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-source"></a>
Le courtier de messages source. Sélectionnez parmi les options suivantes :  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`— Le broker MQTT local où les appareils clients communiquent.
+ `Pubsub`— Le courtier de publish/subscribe messages Greengrass local.
+ `IotCore`— Le courtier de messages AWS IoT Core MQTT.
**Note**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
Le pont MQTT utilise QoS 1 pour publier et s' AWS IoT Core abonner, même lorsqu'un appareil client utilise QoS 0 pour publier et s'abonner au courtier MQTT local. Par conséquent, vous pouvez observer une latence supplémentaire lorsque vous relayez des messages MQTT depuis des appareils clients sur le broker MQTT local vers. AWS IoT Core Pour plus d'informations sur la configuration MQTT sur les appareils principaux, consultez[Configurer les délais d'expiration et les paramètres de cache du MQTT](configure-greengrass-core-v2.md#configure-mqtt).
`source`et `target` doit être différent.  
`target`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-target"></a>
Le courtier de messages cible. Sélectionnez parmi les options suivantes :  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`— Le broker MQTT local où les appareils clients communiquent.
+ `Pubsub`— Le courtier de publish/subscribe messages Greengrass local.
+ `IotCore`— Le courtier de messages AWS IoT Core MQTT.
**Note**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
Le pont MQTT utilise QoS 1 pour publier et s' AWS IoT Core abonner, même lorsqu'un appareil client utilise QoS 0 pour publier et s'abonner au courtier MQTT local. Par conséquent, vous pouvez observer une latence supplémentaire lorsque vous relayez des messages MQTT depuis des appareils clients sur le broker MQTT local vers. AWS IoT Core Pour plus d'informations sur la configuration MQTT sur les appareils principaux, consultez[Configurer les délais d'expiration et les paramètres de cache du MQTT](configure-greengrass-core-v2.md#configure-mqtt).
`source`et `target` doit être différent.

`brokerUri`  <a name="mqtt-bridge-component-configuration-broker-uri"></a>
(Facultatif) L'URI du broker MQTT local. Vous devez spécifier ce paramètre si vous configurez le broker MQTT pour utiliser un port différent du port par défaut 8883. Utilisez le format suivant, et remplacez-le *port* par le port sur lequel le broker MQTT fonctionne : `ssl://localhost:port`  
Par défaut : `ssl://localhost:8883`

startupTimeoutSeconds  
(Facultatif) Durée maximale en secondes pendant laquelle le composant démarre. L'état du composant change `BROKEN` s'il dépasse ce délai.  
Par défaut : `120`

**Example Exemple : mise à jour de la fusion de configurations**  <a name="mqtt-bridge-component-configuration-example-with-prefix"></a>
L'exemple de mise à jour de configuration suivant spécifie les éléments suivants :  
+ Transférez les messages des appareils clients vers AWS IoT Core des sujets correspondant au filtre de `clients/+/hello/world` sujets.
+ Transférez les messages des appareils clients vers publish/subscribe le local sur des sujets correspondant au filtre de `clients/+/detections` sujet, et ajoutez le `events/input/` préfixe au sujet cible. Le sujet cible obtenu correspond au filtre de `events/input/clients/+/detections` sujet.
+ Transférez les messages des appareils clients vers AWS IoT Core des sujets correspondant au filtre de `clients/+/status` sujet et ajoutez le `$aws/rules/StatusUpdateRule/` préfixe au sujet cible. Cet exemple transmet ces messages directement à une [AWS IoT règle](https://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html) nommée pour réduire les coûts `StatusUpdateRule` à l'aide de [Basic Ingest](https://docs.aws.amazon.com/iot/latest/developerguide/iot-basic-ingest.html).

```
{
  "mqttTopicMapping": {
    "ClientDeviceHelloWorld": {
      "topic": "clients/+/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    },
    "ClientDeviceEvents": {
      "topic": "clients/+/detections",
      "targetTopicPrefix": "events/input/",
      "source": "LocalMqtt",
      "target": "Pubsub"
    },
    "ClientDeviceCloudStatusUpdate": {
      "topic": "clients/+/status",
      "targetTopicPrefix": "$aws/rules/StatusUpdateRule/",
      "source": "LocalMqtt",
      "target": "IotCore"
    }
  }
}
```

------
#### [ 2.2.0 - 2.2.5 ]

`mqttTopicMapping`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-description"></a>Les mappages de sujets que vous souhaitez relier. Ce composant s'abonne aux messages du sujet source et publie les messages qu'il reçoit dans le sujet de destination. Chaque mappage de rubrique définit le sujet, le type de source et le type de destination.  
Cet objet contient les informations suivantes :    
`topicMappingNameKey`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-name-key-description"></a>Nom de ce mappage de rubriques. *topicMappingNameKey*Remplacez-le par un nom qui vous aide à identifier ce mappage de rubriques.  
Cet objet contient les informations suivantes :    
`topic`  
Le sujet ou le filtre de sujet permettant de faire le lien entre les courtiers source et cible.  
Vous pouvez utiliser les caractères génériques de sujet `+` et `#` MQTT pour relayer des messages sur tous les sujets correspondant à un filtre de sujet. Pour plus d'informations, consultez les [rubriques relatives au MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) dans le *Guide du AWS IoT Core développeur*.  
[Pour utiliser des caractères génériques de sujet MQTT avec le courtier `Pubsub` source, vous devez utiliser la version 2.6.0 ou ultérieure du composant Greengrass nucleus.](greengrass-nucleus-component.md)  
`targetTopicPrefix`  
Le préfixe à ajouter au sujet cible lorsque ce composant relaie le message.  
`source`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-source"></a>
Le courtier de messages source. Sélectionnez parmi les options suivantes :  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`— Le broker MQTT local où les appareils clients communiquent.
+ `Pubsub`— Le courtier de publish/subscribe messages Greengrass local.
+ `IotCore`— Le courtier de messages AWS IoT Core MQTT.
**Note**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
Le pont MQTT utilise QoS 1 pour publier et s' AWS IoT Core abonner, même lorsqu'un appareil client utilise QoS 0 pour publier et s'abonner au courtier MQTT local. Par conséquent, vous pouvez observer une latence supplémentaire lorsque vous relayez des messages MQTT depuis des appareils clients sur le broker MQTT local vers. AWS IoT Core Pour plus d'informations sur la configuration MQTT sur les appareils principaux, consultez[Configurer les délais d'expiration et les paramètres de cache du MQTT](configure-greengrass-core-v2.md#configure-mqtt).
`source`et `target` doit être différent.  
`target`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-target"></a>
Le courtier de messages cible. Sélectionnez parmi les options suivantes :  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`— Le broker MQTT local où les appareils clients communiquent.
+ `Pubsub`— Le courtier de publish/subscribe messages Greengrass local.
+ `IotCore`— Le courtier de messages AWS IoT Core MQTT.
**Note**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
Le pont MQTT utilise QoS 1 pour publier et s' AWS IoT Core abonner, même lorsqu'un appareil client utilise QoS 0 pour publier et s'abonner au courtier MQTT local. Par conséquent, vous pouvez observer une latence supplémentaire lorsque vous relayez des messages MQTT depuis des appareils clients sur le broker MQTT local vers. AWS IoT Core Pour plus d'informations sur la configuration MQTT sur les appareils principaux, consultez[Configurer les délais d'expiration et les paramètres de cache du MQTT](configure-greengrass-core-v2.md#configure-mqtt).
`source`et `target` doit être différent.

`brokerUri`  <a name="mqtt-bridge-component-configuration-broker-uri"></a>
(Facultatif) L'URI du broker MQTT local. Vous devez spécifier ce paramètre si vous configurez le broker MQTT pour utiliser un port différent du port par défaut 8883. Utilisez le format suivant, et remplacez-le *port* par le port sur lequel le broker MQTT fonctionne : `ssl://localhost:port`  
Par défaut : `ssl://localhost:8883`

**Example Exemple : mise à jour de la fusion de configurations**  <a name="mqtt-bridge-component-configuration-example-with-prefix"></a>
L'exemple de mise à jour de configuration suivant spécifie les éléments suivants :  
+ Transférez les messages des appareils clients vers AWS IoT Core des sujets correspondant au filtre de `clients/+/hello/world` sujets.
+ Transférez les messages des appareils clients vers publish/subscribe le local sur des sujets correspondant au filtre de `clients/+/detections` sujet, et ajoutez le `events/input/` préfixe au sujet cible. Le sujet cible obtenu correspond au filtre de `events/input/clients/+/detections` sujet.
+ Transférez les messages des appareils clients vers AWS IoT Core des sujets correspondant au filtre de `clients/+/status` sujet et ajoutez le `$aws/rules/StatusUpdateRule/` préfixe au sujet cible. Cet exemple transmet ces messages directement à une [AWS IoT règle](https://docs.aws.amazon.com/iot/latest/developerguide/iot-rules.html) nommée pour réduire les coûts `StatusUpdateRule` à l'aide de [Basic Ingest](https://docs.aws.amazon.com/iot/latest/developerguide/iot-basic-ingest.html).

```
{
  "mqttTopicMapping": {
    "ClientDeviceHelloWorld": {
      "topic": "clients/+/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    },
    "ClientDeviceEvents": {
      "topic": "clients/+/detections",
      "targetTopicPrefix": "events/input/",
      "source": "LocalMqtt",
      "target": "Pubsub"
    },
    "ClientDeviceCloudStatusUpdate": {
      "topic": "clients/+/status",
      "targetTopicPrefix": "$aws/rules/StatusUpdateRule/",
      "source": "LocalMqtt",
      "target": "IotCore"
    }
  }
}
```

------
#### [ 2.1.x ]

`mqttTopicMapping`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping"></a>
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-description"></a>Les mappages de sujets que vous souhaitez relier. Ce composant s'abonne aux messages du sujet source et publie les messages qu'il reçoit dans le sujet de destination. Chaque mappage de rubrique définit le sujet, le type de source et le type de destination.  
Cet objet contient les informations suivantes :    
`topicMappingNameKey`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-name-key-description"></a>Nom de ce mappage de rubriques. *topicMappingNameKey*Remplacez-le par un nom qui vous aide à identifier ce mappage de rubriques.  
Cet objet contient les informations suivantes :    
`topic`  
Le sujet ou le filtre de sujet permettant de faire le lien entre les courtiers source et cible.  
Si vous spécifiez le courtier `LocalMqtt` ou le courtier `IotCore` source, vous pouvez utiliser les caractères génériques de sujet `+` et `#` MQTT pour relayer des messages sur tous les sujets correspondant à un filtre de sujet. Pour plus d'informations, consultez les [rubriques relatives au MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) dans le *Guide du AWS IoT Core développeur*.  
`source`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-source"></a>
Le courtier de messages source. Sélectionnez parmi les options suivantes :  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`— Le broker MQTT local où les appareils clients communiquent.
+ `Pubsub`— Le courtier de publish/subscribe messages Greengrass local.
+ `IotCore`— Le courtier de messages AWS IoT Core MQTT.
**Note**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
Le pont MQTT utilise QoS 1 pour publier et s' AWS IoT Core abonner, même lorsqu'un appareil client utilise QoS 0 pour publier et s'abonner au courtier MQTT local. Par conséquent, vous pouvez observer une latence supplémentaire lorsque vous relayez des messages MQTT depuis des appareils clients sur le broker MQTT local vers. AWS IoT Core Pour plus d'informations sur la configuration MQTT sur les appareils principaux, consultez[Configurer les délais d'expiration et les paramètres de cache du MQTT](configure-greengrass-core-v2.md#configure-mqtt).
`source`et `target` doit être différent.  
`target`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-target"></a>
Le courtier de messages cible. Sélectionnez parmi les options suivantes :  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`— Le broker MQTT local où les appareils clients communiquent.
+ `Pubsub`— Le courtier de publish/subscribe messages Greengrass local.
+ `IotCore`— Le courtier de messages AWS IoT Core MQTT.
**Note**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
Le pont MQTT utilise QoS 1 pour publier et s' AWS IoT Core abonner, même lorsqu'un appareil client utilise QoS 0 pour publier et s'abonner au courtier MQTT local. Par conséquent, vous pouvez observer une latence supplémentaire lorsque vous relayez des messages MQTT depuis des appareils clients sur le broker MQTT local vers. AWS IoT Core Pour plus d'informations sur la configuration MQTT sur les appareils principaux, consultez[Configurer les délais d'expiration et les paramètres de cache du MQTT](configure-greengrass-core-v2.md#configure-mqtt).
`source`et `target` doit être différent.

`brokerUri`  <a name="mqtt-bridge-component-configuration-broker-uri"></a>
(Facultatif) L'URI du broker MQTT local. Vous devez spécifier ce paramètre si vous configurez le broker MQTT pour utiliser un port différent du port par défaut 8883. Utilisez le format suivant, et remplacez-le *port* par le port sur lequel le broker MQTT fonctionne : `ssl://localhost:port`  
Par défaut : `ssl://localhost:8883`

**Example Exemple : mise à jour de la fusion de configurations**  <a name="mqtt-bridge-component-configuration-example-no-prefix"></a>
L'exemple de mise à jour de configuration suivant indique de relayer les messages des appareils clients vers AWS IoT Core les `clients/MyClientDevice2/hello/world` rubriques `clients/MyClientDevice1/hello/world` et.  

```
{
  "mqttTopicMapping": {
    "ClientDevice1HelloWorld": {
      "topic": "clients/MyClientDevice1/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    },
    "ClientDevice2HelloWorld": {
      "topic": "clients/MyClientDevice2/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    }
  }
}
```

------
#### [ 2.0.x ]

`mqttTopicMapping`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping"></a>
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-description"></a>Les mappages de sujets que vous souhaitez relier. Ce composant s'abonne aux messages du sujet source et publie les messages qu'il reçoit dans le sujet de destination. Chaque mappage de rubrique définit le sujet, le type de source et le type de destination.  
Cet objet contient les informations suivantes :    
`topicMappingNameKey`  
<a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-name-key-description"></a>Nom de ce mappage de rubriques. *topicMappingNameKey*Remplacez-le par un nom qui vous aide à identifier ce mappage de rubriques.  
Cet objet contient les informations suivantes :    
`topic`  
Le sujet ou le filtre de sujet permettant de faire le lien entre les courtiers source et cible.  
Si vous spécifiez le courtier `LocalMqtt` ou le courtier `IotCore` source, vous pouvez utiliser les caractères génériques de sujet `+` et `#` MQTT pour relayer des messages sur tous les sujets correspondant à un filtre de sujet. Pour plus d'informations, consultez les [rubriques relatives au MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) dans le *Guide du AWS IoT Core développeur*.  
`source`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-source"></a>
Le courtier de messages source. Sélectionnez parmi les options suivantes :  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`— Le broker MQTT local où les appareils clients communiquent.
+ `Pubsub`— Le courtier de publish/subscribe messages Greengrass local.
+ `IotCore`— Le courtier de messages AWS IoT Core MQTT.
**Note**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
Le pont MQTT utilise QoS 1 pour publier et s' AWS IoT Core abonner, même lorsqu'un appareil client utilise QoS 0 pour publier et s'abonner au courtier MQTT local. Par conséquent, vous pouvez observer une latence supplémentaire lorsque vous relayez des messages MQTT depuis des appareils clients sur le broker MQTT local vers. AWS IoT Core Pour plus d'informations sur la configuration MQTT sur les appareils principaux, consultez[Configurer les délais d'expiration et les paramètres de cache du MQTT](configure-greengrass-core-v2.md#configure-mqtt).
`source`et `target` doit être différent.  
`target`  <a name="mqtt-bridge-component-configuration-mqtt-topic-mapping-target"></a>
Le courtier de messages cible. Sélectionnez parmi les options suivantes :  <a name="mqtt-bridge-component-configuration-topic-types"></a>
+ `LocalMqtt`— Le broker MQTT local où les appareils clients communiquent.
+ `Pubsub`— Le courtier de publish/subscribe messages Greengrass local.
+ `IotCore`— Le courtier de messages AWS IoT Core MQTT.
**Note**  <a name="mqtt-bridge-component-iotcore-qos-1-note"></a>
Le pont MQTT utilise QoS 1 pour publier et s' AWS IoT Core abonner, même lorsqu'un appareil client utilise QoS 0 pour publier et s'abonner au courtier MQTT local. Par conséquent, vous pouvez observer une latence supplémentaire lorsque vous relayez des messages MQTT depuis des appareils clients sur le broker MQTT local vers. AWS IoT Core Pour plus d'informations sur la configuration MQTT sur les appareils principaux, consultez[Configurer les délais d'expiration et les paramètres de cache du MQTT](configure-greengrass-core-v2.md#configure-mqtt).
`source`et `target` doit être différent.

**Example Exemple : mise à jour de la fusion de configurations**  <a name="mqtt-bridge-component-configuration-example-no-prefix"></a>
L'exemple de mise à jour de configuration suivant indique de relayer les messages des appareils clients vers AWS IoT Core les `clients/MyClientDevice2/hello/world` rubriques `clients/MyClientDevice1/hello/world` et.  

```
{
  "mqttTopicMapping": {
    "ClientDevice1HelloWorld": {
      "topic": "clients/MyClientDevice1/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    },
    "ClientDevice2HelloWorld": {
      "topic": "clients/MyClientDevice2/hello/world",
      "source": "LocalMqtt",
      "target": "IotCore"
    }
  }
}
```

------

## Fichier journal local
<a name="mqtt-bridge-component-log-file"></a>

Ce composant utilise le même fichier journal que le composant [Greengrass nucleus](greengrass-nucleus-component.md).

------
#### [ 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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par 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
<a name="mqtt-bridge-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.3.2  |  Version mise à jour pour la version 2.5.0 d'[authentification des appareils clients](client-device-auth-component.md).  | 
| 2.3.1 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
| 2.3.0 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
|  2.2.6  |  <a name="changelog-mqtt-bridge-2.2.6"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
|  2.2.5  |  Version mise à jour pour la version 2.4.0 d'[authentification du périphérique client](client-device-auth-component.md).  | 
|  2.2.4  |  Version mise à jour pour la version 2.3.0 d'[authentification des appareils clients](client-device-auth-component.md) Greengrass.  | 
|  2.2.3  |  Cette version contient des corrections de bogues et des améliorations.  | 
|  2.2.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
|  2.2.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
|  2.2.0  |  <a name="changelog-mqtt-bridge-2.2.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
|  2.1.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/mqtt-bridge-component.html)  | 
|  2.0.1  |  Cette version inclut des corrections de bogues et des améliorations.  | 
|  2.0.0  |  Première version.  | 

# Courtier MQTT 3.1.1 (Moquette)
<a name="mqtt-broker-moquette-component"></a>

Le composant broker Moquette MQTT (`aws.greengrass.clientdevices.mqtt.Moquette`) gère les messages MQTT entre les appareils clients et un périphérique principal de Greengrass. Ce composant fournit une version modifiée du broker [Moquette MQTT](https://github.com/moquette-io/moquette). Déployez ce broker MQTT pour exécuter un broker MQTT léger. Pour plus d'informations sur le choix d'un courtier MQTT, consultez[Choisissez un courtier MQTT](choose-local-mqtt-broker.md).

Ce broker implémente le protocole MQTT 3.1.1. Il inclut la prise en charge des messages conservés QoS 0, QoS 1, QoS 2, des messages de dernier testament et des sessions persistantes.

**Note**  <a name="client-device-component-context"></a>
Les appareils clients sont des appareils IoT locaux qui se connectent à un appareil principal de Greengrass pour envoyer des messages MQTT et des données à traiter. Pour de plus amples informations, veuillez consulter [Interagissez avec les appareils IoT locaux](interact-with-local-iot-devices.md).

**Topics**
+ [Versions](#mqtt-broker-moquette-component-versions)
+ [Type](#mqtt-broker-moquette-component-type)
+ [Système d’exploitation](#mqtt-broker-moquette-component-os-support)
+ [Prérequis](#mqtt-broker-moquette-component-requirements)
+ [Dépendances](#mqtt-broker-moquette-component-dependencies)
+ [Configuration](#mqtt-broker-moquette-component-configuration)
+ [Fichier journal local](#mqtt-broker-moquette-component-log-file)
+ [Journal des modifications](#mqtt-broker-moquette-component-changelog)

## Versions
<a name="mqtt-broker-moquette-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2.3.x
+ 2.2.x
+ 2,1x
+ 2,0.x

## Type
<a name="mqtt-broker-moquette-component-type"></a>

<a name="public-component-type-plugin-para1"></a>Ce composant est un composant de plugin (`aws.greengrass.plugin`). Le [noyau Greengrass](greengrass-nucleus-component.md) 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.

<a name="public-component-type-plugin-para2"></a>Ce composant utilise le même fichier journal que le noyau Greengrass. Pour de plus amples informations, veuillez consulter [AWS IoT Greengrass Journaux de surveillance](monitor-logs.md).

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="mqtt-broker-moquette-component-os-support"></a>

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

## Prérequis
<a name="mqtt-broker-moquette-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ Le périphérique principal doit être en mesure d'accepter des connexions sur le port où fonctionne le broker MQTT. Ce composant exécute le broker MQTT sur le port 8883 par défaut. Vous pouvez spécifier un port différent lorsque vous configurez ce composant.

  <a name="mqtt-broker-configuration-mqtt-bridge-requirement"></a>Si vous spécifiez un port différent et que vous utilisez le [composant pont MQTT](mqtt-bridge-component.md) pour relayer les messages MQTT à d'autres courtiers, vous devez utiliser le pont MQTT v2.1.0 ou version ultérieure. Configurez-le pour utiliser le port sur lequel le broker MQTT fonctionne.

  <a name="mqtt-broker-configuration-ip-detector-requirement"></a>Si vous spécifiez un port différent et que vous utilisez le [composant de détection IP](ip-detector-component.md) pour gérer les points de terminaison du broker MQTT, vous devez utiliser le détecteur IP v2.1.0 ou version ultérieure. Configurez-le pour signaler le port sur lequel le broker MQTT fonctionne.
+ Le composant broker Moquette MQTT est compatible pour fonctionner dans un VPC.

## Dépendances
<a name="mqtt-broker-moquette-component-dependencies"></a>

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](#mqtt-broker-moquette-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 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 | 
| --- | --- | --- | 
| [Authentification de l'appareil client](client-device-auth-component.md) | >=2,2,0 <2,6,0 | Stricte | 

------
#### [ 2.3.2 – 2.3.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Authentification de l'appareil client](client-device-auth-component.md) | >=2,2,0 <2,5,0 | Stricte | 

------
#### [ 2.3.0 and 2.3.1 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Authentification de l'appareil client](client-device-auth-component.md) | >=2,2,0 <2,4,0 | Stricte | 

------
#### [ 2.2.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Authentification de l'appareil client](client-device-auth-component.md) | >=2,2,0 <2,3,0 | Stricte | 

------
#### [ 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 | 
| --- | --- | --- | 
| [Authentification de l'appareil client](client-device-auth-component.md) | >=2,0.0 <2,2.0 | Stricte | 

------
#### [ 2.0.0 - 2.0.2 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Authentification de l'appareil client](client-device-auth-component.md) | >=2,0.0 <2,10 | Stricte | 

------

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="mqtt-broker-moquette-component-configuration"></a>

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

`moquette`  
(Facultatif) La configuration du [broker Moquette MQTT](https://github.com/moquette-io/moquette) à utiliser. Vous pouvez configurer un sous-ensemble d'options de configuration de Moqeutte dans ce composant. Pour plus d'informations, consultez les commentaires intégrés dans le fichier de [configuration de Moquette](https://github.com/moquette-io/moquette/blob/main/distribution/src/main/resources/moquette.conf).  
Cet objet contient les informations suivantes :    
`ssl_port`  
(Facultatif) Le port sur lequel le broker MQTT fonctionne.  
<a name="mqtt-broker-configuration-mqtt-bridge-requirement"></a>Si vous spécifiez un port différent et que vous utilisez le [composant pont MQTT](mqtt-bridge-component.md) pour relayer les messages MQTT à d'autres courtiers, vous devez utiliser le pont MQTT v2.1.0 ou version ultérieure. Configurez-le pour utiliser le port sur lequel le broker MQTT fonctionne.  
<a name="mqtt-broker-configuration-ip-detector-requirement"></a>Si vous spécifiez un port différent et que vous utilisez le [composant de détection IP](ip-detector-component.md) pour gérer les points de terminaison du broker MQTT, vous devez utiliser le détecteur IP v2.1.0 ou version ultérieure. Configurez-le pour signaler le port sur lequel le broker MQTT fonctionne.
Par défaut : `8883`  
`host`  
(Facultatif) Interface à laquelle le broker MQTT se lie. Par exemple, vous pouvez modifier ce paramètre afin que le broker MQTT se lie uniquement à un réseau local spécifique.  
Par défaut : `0.0.0.0` (se lie à toutes les interfaces réseau)

startupTimeoutSeconds  
(Facultatif) Durée maximale en secondes pendant laquelle le composant démarre. L'état du composant passe à `BROKEN` s'il dépasse ce délai d'attente.  
Par défaut : `120`

**Example Exemple : mise à jour de la fusion de configurations**  
L'exemple de configuration suivant indique de faire fonctionner le broker MQTT sur le port 443.  

```
{
  "moquette": {
    "ssl_port": "443"
  }
}
```

## Fichier journal local
<a name="mqtt-broker-moquette-component-log-file"></a>

Ce composant utilise le même fichier journal que le composant [Greengrass nucleus](greengrass-nucleus-component.md).

------
#### [ 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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par 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
<a name="mqtt-broker-moquette-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.3.7  |  Version mise à jour pour la version 2.5.0 d'[authentification des appareils clients](client-device-auth-component.md).  | 
|  2.3.6  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/mqtt-broker-moquette-component.html)  | 
|  2.3.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/mqtt-broker-moquette-component.html)  | 
|  2.3.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/mqtt-broker-moquette-component.html)  | 
|  2.3.3  |  <a name="changelog-mqtt-broker-moquette-2.3.3"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/mqtt-broker-moquette-component.html)  | 
|  2.3.2  |  Version mise à jour pour la version 2.4.0 d'[authentification du périphérique client](client-device-auth-component.md).  | 
|  2.3.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/mqtt-broker-moquette-component.html)  | 
|  2.3.0  |  Ajoute la prise en charge des chaînes de certificats.  | 
|  2.2.0  |  Version mise à jour pour la version 2.2.0 d'[authentification du périphérique client](client-device-auth-component.md).  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/mqtt-broker-moquette-component.html)  | 
|  2.0.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/mqtt-broker-moquette-component.html)  | 
|  2.0.1  |  Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.  | 
|  2.0.0  |  Première version.  | 

# Courtier MQTT 5 (EMQX)
<a name="mqtt-broker-emqx-component"></a>

Le composant broker EMQX MQTT (`aws.greengrass.clientdevices.mqtt.EMQX`) gère les messages MQTT entre les appareils clients et un périphérique principal de Greengrass. Ce composant fournit une version modifiée du broker [EMQX MQTT 5.0](https://www.emqx.com/en/mqtt/mqtt5). Déployez ce broker MQTT pour utiliser les fonctionnalités de MQTT 5 dans la communication entre les appareils clients et un périphérique principal. Pour plus d'informations sur le choix d'un courtier MQTT, consultez[Choisissez un courtier MQTT](choose-local-mqtt-broker.md).

Ce broker implémente le protocole MQTT 5.0. Il inclut la prise en charge des intervalles d'expiration des sessions et des messages, des propriétés utilisateur, des abonnements partagés, des alias de rubrique, etc. MQTT 5 est rétrocompatible avec MQTT 3.1.1, donc si vous exécutez le broker [Moquette MQTT 3.1.1, vous pouvez le remplacer par le broker](mqtt-broker-moquette-component.md) EMQX MQTT 5, et les appareils clients peuvent continuer à se connecter et à fonctionner comme d'habitude.

<a name="note-local-mqtt-broker-mqtt-5-features"></a>

**Note**  <a name="client-device-component-context"></a>
Les appareils clients sont des appareils IoT locaux qui se connectent à un appareil principal de Greengrass pour envoyer des messages MQTT et des données à traiter. Pour de plus amples informations, veuillez consulter [Interagissez avec les appareils IoT locaux](interact-with-local-iot-devices.md).

**Topics**
+ [Versions](#mqtt-broker-emqx-component-versions)
+ [Type](#mqtt-broker-emqx-component-type)
+ [Système d’exploitation](#mqtt-broker-emqx-component-os-support)
+ [Exigences](#mqtt-broker-emqx-component-requirements)
+ [Dépendances](#mqtt-broker-emqx-component-dependencies)
+ [Configuration](#mqtt-broker-emqx-component-configuration)
+ [Fichier journal local](#mqtt-broker-emqx-component-log-file)
+ [Licences](#mqtt-broker-emqx-component-licenses)
+ [Journal des modifications](#mqtt-broker-emqx-component-changelog)

## Versions
<a name="mqtt-broker-emqx-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2.0.x
+ 1.2.x
+ 1,1x
+ 1,0 x

## Type
<a name="mqtt-broker-emqx-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="mqtt-broker-emqx-component-os-support"></a>

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

## Exigences
<a name="mqtt-broker-emqx-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ Le périphérique principal doit être capable d'accepter des connexions sur le port où fonctionne le broker MQTT. Ce composant exécute le broker MQTT sur le port 8883 par défaut. Vous pouvez spécifier un port différent lorsque vous configurez ce composant.

  <a name="mqtt-broker-configuration-mqtt-bridge-requirement"></a>Si vous spécifiez un port différent et que vous utilisez le [composant pont MQTT](mqtt-bridge-component.md) pour relayer les messages MQTT à d'autres courtiers, vous devez utiliser le pont MQTT v2.1.0 ou version ultérieure. Configurez-le pour utiliser le port sur lequel le broker MQTT fonctionne.

  <a name="mqtt-broker-configuration-ip-detector-requirement"></a>Si vous spécifiez un port différent et que vous utilisez le [composant de détection IP](ip-detector-component.md) pour gérer les points de terminaison du broker MQTT, vous devez utiliser le détecteur IP v2.1.0 ou version ultérieure. Configurez-le pour signaler le port sur lequel le broker MQTT fonctionne.
+ Sur les appareils principaux Linux, Docker est installé et configuré sur le périphérique principal :
  + <a name="docker-engine-requirement"></a>[Docker Engine](https://docs.docker.com/engine/) 1.9.1 ou version ultérieure installé sur le périphérique principal de Greengrass. La version 20.10 est la dernière version vérifiée pour fonctionner avec le logiciel AWS IoT Greengrass Core. Vous devez installer Docker directement sur le périphérique principal avant de déployer des composants qui exécutent des conteneurs Docker.
  + <a name="docker-daemon-requirement"></a>Le daemon Docker a démarré et s'est exécuté sur le périphérique principal avant que vous ne déployiez ce composant. 
  + L'utilisateur du système qui exécute ce composant doit disposer des autorisations root ou administrateur. Vous pouvez également exécuter ce composant en tant qu'utilisateur du système dans le `docker` groupe et configurer l'`requiresPrivileges`option de ce composant `false` pour exécuter le courtier EQMX MQTT sans privilèges.
+ Le composant broker EMQX MQTT est compatible pour s'exécuter dans un VPC.
+ Le composant broker EMQX MQTT n'est pas pris en charge sur la plateforme. `armv7`

## Dépendances
<a name="mqtt-broker-emqx-component-dependencies"></a>

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](#mqtt-broker-emqx-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.0.2 – 2.0.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Authentification de l'appareil client](client-device-auth-component.md) | >=2,2,0 <2,6,0 | Flexible | 

------
#### [ 2.0.1 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Authentification de l'appareil client](client-device-auth-component.md) | >=2,2,0 <2,6,0 | Stricte | 

------
#### [ 2.0.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Authentification de l'appareil client](client-device-auth-component.md) | >=2,2,0 <2,5,0 | Stricte | 

------
#### [ 1.2.2 – 1.2.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Authentification de l'appareil client](client-device-auth-component.md) | >=2,2,0 <2,5,0 | Stricte | 

------
#### [ 1.2.0 and 1.2.1 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Authentification de l'appareil client](client-device-auth-component.md) | >=2,2,0 <2,4,0 | Stricte | 

------
#### [ 1.0.0 and 1.1.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Authentification de l'appareil client](client-device-auth-component.md) | >=2,2,0 <2,3,0 | Stricte | 

------

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="mqtt-broker-emqx-component-configuration"></a>

------
#### [ 2.0.0 - 2.0.3 ]

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

**Important**  
Si vous utilisez la version 2 du composant MQTT 5 broker (EMQX), vous devez mettre à jour votre fichier de configuration. Les fichiers de configuration de la version 1 ne fonctionnent pas avec la version 2.

Configuration EMQX  
 (Facultatif) La configuration du [broker EMQX MQTT](https://www.emqx.io/docs/en/v5.1/configuration/configuration.html) à utiliser. Vous pouvez définir les options de configuration EMQX dans ce composant.  
Lorsque vous utilisez le broker EMQX, Greengrass utilise une configuration par défaut. Cette configuration est utilisée sauf si vous la modifiez à l'aide de ce champ.  
La modification des paramètres de configuration suivants entraîne le redémarrage du composant du broker EMQX. Les autres modifications de configuration s'appliquent sans redémarrer le composant.  
+ `emqxConfig/cluster`
+ `emqxConfig/node`
+ `emqxConfig/rpc`
`aws.greengrass.clientdevices.mqtt.EMQX`vous permet de configurer des options sensibles à la sécurité. Il s'agit notamment des paramètres TLS, de l'authentification et des fournisseurs d'autorisation. Nous avons recommandé la configuration par défaut qui utilise l'authentification TLS mutuelle et le fournisseur d'authentification des appareils clients Greengrass.

**Example Exemple : configuration par défaut**  
L'exemple suivant montre les valeurs par défaut définies pour le broker MQTT 5 (EMQX). Vous pouvez remplacer ces paramètres à l'aide du paramètre `emqxConfig` de configuration.  

```
{
  "authorization": {
    "no_match": "deny",
    "sources": []
  },
  "node": {
    "cookie": "<placeholder>"
  }, 
  "listeners": {
     "ssl": {
       "default": {
         "ssl_options": {
           "keyfile": "{work:path}\\data\\key.pem",
           "certfile": "{work:path}\\data\\cert.pem",
           "cacertfile": null,
           "verify": "verify_peer",
           "versions": ["tlsv1.3", "tlsv1.2"],
           "fail_if_no_peer_cert": true
         }
       }
     },
     "tcp": {
       "default": {
         "enabled": false
       }
     },
     "ws": {
       "default": {
         "enabled": false
       }
     },
     "wss": {
       "default": {
         "enabled": false
       }
     }
  },
  "plugins": {
    "states": [{"name_vsn": "gg-1.0.0", "enable": true}],
    "install_dir": "plugins"
  }
}
```

Mode Auth  
(Facultatif) Définit le fournisseur d'autorisation pour le courtier. Il peut avoir l'une des valeurs suivantes :  
+ `enabled`— (Par défaut) Utilisez le fournisseur d'authentification et d'autorisation Greengrass.
+ `bypass_on_failure`— Utilisez le fournisseur d'authentification Greengrass, puis utilisez tous les fournisseurs d'authentification restants de la chaîne de fournisseurs EMQX si Greengrass refuse l'authentification ou l'autorisation.
+ `bypass`— Le fournisseur Greengrass est désactivé. L'authentification et l'autorisation sont gérées par la chaîne de fournisseurs EMQX.

`requiresPrivilege`  
(Facultatif) Sur les appareils principaux Linux, vous pouvez spécifier d'exécuter le broker EMQX MQTT sans droits root ou administrateur. Si vous définissez cette option sur`false`, l'utilisateur du système qui exécute ce composant doit être membre du `docker` groupe.  
Valeur par défaut : `true`

`startupTimeoutSeconds`  
(Facultatif) Durée maximale en secondes pendant laquelle le broker EMQX MQTT démarre. L'état du composant passe à `BROKEN` s'il dépasse ce délai d'attente.  
Valeur par défaut : `90`

`ipcTimeoutSeconds`  
(Facultatif) Durée maximale en secondes pendant laquelle le composant attend que le noyau Greengrass réponde aux demandes de communication interprocessus (IPC). Augmentez ce nombre si ce composant signale des erreurs de temporisation lorsqu'il vérifie si un appareil client est autorisé.  
Valeur par défaut : `5`

`crtLogLevel`  
(Facultatif) Le niveau de journalisation de la bibliothèque AWS Common Runtime (CRT).  
La valeur par défaut est le niveau de journalisation du broker EMQX MQTT (in). `log.level` `emqx`

`restartIdentifier`  
(Facultatif) Configurez cette option pour redémarrer le broker EMQX MQTT. Lorsque cette valeur de configuration change, ce composant redémarre le broker MQTT. Vous pouvez utiliser cette option pour forcer les appareils clients à se déconnecter.

`dockerOptions`  
(Facultatif) Configurez cette option uniquement sur les systèmes d'exploitation Linux pour ajouter des paramètres à la ligne de commande Docker. Par exemple, pour mapper des ports supplémentaires, utilisez le paramètre `-p` Docker :  

```
"-p 1883:1883"
```

**Example Exemple : mise à jour d'un fichier de configuration v1.x vers la version 2.x**  
L'exemple suivant montre les modifications nécessaires pour mettre à jour un fichier de configuration v1.x vers la version 2.x.  
Le fichier de configuration de la version 1.x :  

```
{
    "emqx": {
        "listener.ssl.external": "443",
        "listener.ssl.external.max_connections": "1024000",
        "listener.ssl.external.max_conn_rate": "500",
        "listener.ssl.external.rate_limit": "50KB,5s",
        "listener.ssl.external.handshake_timeout": "15s",
        "log.level": "warning"
    },
    "mergeConfigurationFiles": {
        "etc/plugins/aws_greengrass_emqx_auth.conf": "auth_mode=enabled\n use_greengrass_managed_certificates=true\n"
    }
}
```
Le fichier de configuration équivalent pour la v2 :  

```
{
    "emqxConfig": {
        "listeners": {
            "ssl": {
                "default": {
                   "bind": "8883",
                   "max_connections": "1024000",
                   "max_conn_rate": "500",
                   "ssl_options": {
                        "handshake_timeout": "15s"
                   }
                }
            }
        },
        "log": {
            "console": {
              "enable": true,
              "level": "warning"
            }
        }
    },
    "authMode": "enabled"
}
```
Il n'existe aucun équivalent à l'entrée `listener.ssl.external.rate_limit` de configuration. L'option `use_greengrass_managed_certificates` de configuration a été supprimée.

**Example Exemple : définir un nouveau port pour le courtier**  
Dans l'exemple suivant, le port sur lequel le broker MQTT opère passe du port par défaut 8883 au port 1234. Si vous utilisez Linux, incluez le `dockerOptions` champ.  

```
{
  "emqxConfig": {
    "listeners": {
      "ssl": {
        "default": {
          "bind": 1234
        }
      }
    }
  },
  "dockerOptions": "-p 1234:1234"
}
```

**Example Exemple : ajuster le niveau de journalisation du broker MQTT**  
L'exemple suivant change le niveau de journalisation du broker MQTT en`debug`. Vous pouvez choisir l'un des niveaux de journalisation suivants :  
+ `debug`
+ `info`
+ `notice`
+ `warning`
+ `error`
+ `critical`
+ `alert`
+ `emergency`
Le niveau de journalisation par défaut est`warning`.  

```
{
  "emqxConfig": {
    "log": {
      "console": {
         "level": "debug"
      }
    }
  }
}
```

**Example Exemple : activer le tableau de bord EMQX**  
L'exemple suivant active le tableau de bord EMQX afin que vous puissiez surveiller et gérer votre courtier. Si vous utilisez Linux, incluez le `dockerOptions` champ.   

```
{
  "emqxConfig": {
    "dashboard": {
      "listeners": {
        "http": {
          "bind": 18083
        }
      }
    }
  },
  "dockerOptions": "-p 18083:18083"
}
```

------
#### [ 1.0.0 - 1.2.2 ]

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

`emqx`  
(Facultatif) La configuration du [broker EMQX MQTT](https://www.emqx.io/docs/en/v4.4/configuration/configuration.html) à utiliser. Vous pouvez configurer un sous-ensemble d'options de configuration EMQX dans ce composant.  
Cet objet contient les informations suivantes :    
`listener.ssl.external`  
(Facultatif) Le port sur lequel le broker MQTT fonctionne.  
<a name="mqtt-broker-configuration-mqtt-bridge-requirement"></a>Si vous spécifiez un port différent et que vous utilisez le [composant pont MQTT](mqtt-bridge-component.md) pour relayer les messages MQTT à d'autres courtiers, vous devez utiliser le pont MQTT v2.1.0 ou version ultérieure. Configurez-le pour utiliser le port sur lequel le broker MQTT fonctionne.  
<a name="mqtt-broker-configuration-ip-detector-requirement"></a>Si vous spécifiez un port différent et que vous utilisez le [composant de détection IP](ip-detector-component.md) pour gérer les points de terminaison du broker MQTT, vous devez utiliser le détecteur IP v2.1.0 ou version ultérieure. Configurez-le pour signaler le port sur lequel le broker MQTT fonctionne.
Valeur par défaut : `8883`  
`listener.ssl.external.max_connections`  
(Facultatif) Le nombre maximum de connexions simultanées prises en charge par le broker MQTT.  
Valeur par défaut : `1024000`  
`listener.ssl.external.max_conn_rate`  
(Facultatif) Le nombre maximum de nouvelles connexions par seconde que le broker MQTT peut recevoir.  
Valeur par défaut : `500`  
`listener.ssl.external.rate_limit`  
(Facultatif) Limite de bande passante pour toutes les connexions au broker MQTT. Spécifiez la bande passante et la durée de cette bande passante séparées par une virgule (`,`) au format suivant :`bandwidth,duration`. Par exemple, vous pouvez spécifier de `50KB,5s` limiter le broker MQTT à 50 kilo-octets (Ko) de données toutes les 5 secondes.  
`listener.ssl.external.handshake_timeout`  
(Facultatif) Durée pendant laquelle le broker MQTT attend pour terminer l'authentification d'une nouvelle connexion.  
Valeur par défaut : `15s`  
`mqtt.max_packet_size`  
(Facultatif) Taille maximale d'un message MQTT.  
Par défaut : `268435455` (256 Mo moins 1)  
`log.level`  
(Facultatif) Le niveau de journalisation du broker MQTT. Sélectionnez l’une des options suivantes :  
+ `debug`
+ `info`
+ `notice`
+ `warning`
+ `error`
+ `critical`
+ `alert`
+ `emergency`
Le niveau de journalisation par défaut est`warning`.

`requiresPrivilege`  
(Facultatif) Sur les appareils principaux Linux, vous pouvez spécifier d'exécuter le broker EMQX MQTT sans droits root ou administrateur. Si vous définissez cette option sur`false`, l'utilisateur du système qui exécute ce composant doit être membre du `docker` groupe.  
Valeur par défaut : `true`

`startupTimeoutSeconds`  
(Facultatif) Durée maximale en secondes pendant laquelle le broker EMQX MQTT démarre. L'état du composant passe à `BROKEN` s'il dépasse ce délai d'attente.  
Valeur par défaut : `90`

`ipcTimeoutSeconds`  
(Facultatif) Durée maximale en secondes pendant laquelle le composant attend que le noyau Greengrass réponde aux demandes de communication interprocessus (IPC). Augmentez ce nombre si ce composant signale des erreurs de temporisation lorsqu'il vérifie si un appareil client est autorisé.  
Valeur par défaut : `5`

`crtLogLevel`  
(Facultatif) Le niveau de journalisation de la bibliothèque AWS Common Runtime (CRT).  
La valeur par défaut est le niveau de journalisation du broker EMQX MQTT (in). `log.level` `emqx`

`restartIdentifier`  
(Facultatif) Configurez cette option pour redémarrer le broker EMQX MQTT. Lorsque cette valeur de configuration change, ce composant redémarre le broker MQTT. Vous pouvez utiliser cette option pour forcer les appareils clients à se déconnecter.

`dockerOptions`  
(Facultatif) Configurez cette option uniquement sur les systèmes d'exploitation Linux pour ajouter des paramètres à la ligne de commande Docker. Par exemple, pour mapper des ports supplémentaires, utilisez le paramètre `-p` Docker :  

```
"-p 1883:1883"
```

`mergeConfigurationFiles`  
(Facultatif) Configurez cette option pour ajouter ou remplacer les valeurs par défaut dans les fichiers de configuration EMQX spécifiés. Pour plus d'informations sur les fichiers de configuration et leurs formats, consultez la section [Configuration](https://www.emqx.io/docs/en/v4.4/configuration/configuration.html) dans la documentation d'*EMQX 4.0*. Les valeurs que vous spécifiez sont ajoutées au fichier de configuration.   
L'exemple suivant met à jour le `etc/emqx.conf` fichier.  

```
"mergeConfigurationFiles": {
    "etc/emqx.conf": "broker.sys_interval=30s\nbroker.sys_heartbeat=10s"
},
```
Outre les fichiers de configuration pris en charge par EMQX, Greengrass prend en charge un fichier qui configure le plugin d'authentification Greengrass pour EMQX appelé. `etc/plugins/aws_greengrass_emqx_auth.conf` Il existe deux options prises en charge, `auth_mode` et`use_greengrass_managed_certificates`. Pour utiliser un autre fournisseur d'authentification, définissez l'`auth_mode`option sur l'une des options suivantes :  
+ `enabled`— (Par défaut) Utilisez le fournisseur d'authentification et d'autorisation Greengrass.
+ `bypass_on_failure`— Utilisez le fournisseur d'authentification Greengrass, puis utilisez tous les fournisseurs d'authentification restants de la chaîne de fournisseurs EMQX si Greengrass refuse l'authentification ou l'autorisation.
+ `bypass`— Le fournisseur Greengrass est désactivé. L'authentification et l'autorisation sont ensuite gérées par la chaîne de fournisseurs EMQX.
Dans l'`use_greengrass_managed_certificates`affirmative`true`, cette option indique que Greengrass gère les certificats TLS du courtier. Si`false`, cela indique que vous fournissez les certificats via une autre source.  
L'exemple suivant met à jour les valeurs par défaut du fichier `etc/plugins/aws_greengrass_emqx_auth.conf` de configuration.  

```
"mergeConfigurationFiles": {
    "etc/plugins/aws_greengrass_emqx_auth.conf": "auth_mode=enabled\n use_greengrass_managed_certificates=true\n"
  },
```
`aws.greengrass.clientdevices.mqtt.EMQX`vous permet de configurer des options sensibles à la sécurité. Il s'agit notamment des paramètres TLS, de l'authentification et des fournisseurs d'autorisation. La configuration recommandée est la configuration par défaut qui utilise l'authentification TLS mutuelle et le fournisseur Greengrass Client Device Auth.

`replaceConfigurationFiles`  
(Facultatif) Configurez cette option pour remplacer les fichiers de configuration EMQX spécifiés. Les valeurs que vous spécifiez remplacent l'intégralité du fichier de configuration existant. Vous ne pouvez pas spécifier le `etc/emqx.conf` fichier dans cette section. Vous devez utiliser `mergeConfigurationFile` pour modifier`etc/emqx.conf`.

**Example Exemple : mise à jour de la fusion de configurations**  
L'exemple de configuration suivant indique de faire fonctionner le broker MQTT sur le port 443.  

```
{
  "emqx": {
    "listener.ssl.external": "443",
    "listener.ssl.external.max_connections": "1024000",
    "listener.ssl.external.max_conn_rate": "500",
    "listener.ssl.external.rate_limit": "50KB,5s",
    "listener.ssl.external.handshake_timeout": "15s",
    "log.level": "warning"
  },
  "requiresPrivilege": "true",
  "startupTimeoutSeconds": "90",
  "ipcTimeoutSeconds": "5"
}
```

------

## Fichier journal local
<a name="mqtt-broker-emqx-component-log-file"></a>

Ce composant utilise le fichier journal suivant.

------
#### [ Linux ]

```
/greengrass/v2/logs/aws.greengrass.clientdevices.mqtt.EMQX.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\aws.greengrass.clientdevices.mqtt.EMQX.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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par le chemin d'accès au dossier AWS IoT Greengrass racine.

------
#### [ Linux ]

  ```
  sudo tail -f /greengrass/v2/logs/aws.greengrass.clientdevices.mqtt.EMQX.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.greengrass.clientdevices.mqtt.EMQX.log -Tail 10 -Wait
  ```

------

## Licences
<a name="mqtt-broker-emqx-component-licenses"></a>

Sur les systèmes d'exploitation Windows, ce logiciel inclut du code distribué conformément aux [termes du contrat de licence logiciel Microsoft - Microsoft Visual Studio Community 2022](https://visualstudio.microsoft.com/license-terms/vs2022-ga-community). En téléchargeant ce logiciel, vous acceptez les termes du contrat de licence de ce code.

<a name="component-core-software-license"></a>Ce composant est publié dans le cadre du contrat de [licence logicielle Greengrass Core](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf).

## Journal des modifications
<a name="mqtt-broker-emqx-component-changelog"></a>

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

------
#### [ v2.x ]


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.0.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/mqtt-broker-emqx-component.html)  | 
|  2.0.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/mqtt-broker-emqx-component.html)  | 
|  2.0.1  |  Version mise à jour pour la version 2.5.0 d'[authentification des appareils clients](client-device-auth-component.md).  | 
| 2.0.0 | Cette version du broker MQTT 5 (EMQX) attend des paramètres de configuration différents de ceux de la version 1.x. Si vous utilisez une configuration autre que celle par défaut pour la version 1.x, vous devez mettre à jour la configuration du composant pour 2.x. Pour de plus amples informations, veuillez consulter [Configuration](#mqtt-broker-emqx-component-configuration). [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/mqtt-broker-emqx-component.html) | 

------
#### [ v1.x ]


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  1.2.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/mqtt-broker-emqx-component.html)  | 
|  1.2.2  |  Version mise à jour pour la version 2.4.0 d'[authentification du périphérique client](client-device-auth-component.md).  | 
|  1.2.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/mqtt-broker-emqx-component.html)  | 
|  1.2.0  |  Ajoute la prise en charge des chaînes de certificats.  | 
|  1.1.0  | <a name="changelog-emqx-1.1.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/mqtt-broker-emqx-component.html) | 
|  1.0.1  |  Résout un problème lors de la prise de contact TLS qui empêchait certains clients MQTT de se connecter.  | 
|  1.0.0  |  Première version.  | 

------

# Émetteur de télémétrie Nucleus
<a name="nucleus-emitter-component"></a>

Le composant émetteur de télémétrie Nucleus (`aws.greengrass.telemetry.NucleusEmitter`) collecte les données de télémétrie relatives à l'état du système et les publie en permanence sur un sujet local et un sujet MQTT. AWS IoT Core Ce composant vous permet de recueillir les données télémétriques du système en temps réel sur vos principaux appareils Greengrass. Pour plus d'informations sur l'agent de télémétrie Greengrass qui publie les données de télémétrie du système sur Amazon, consultez. EventBridge [Collectez les données de télémétrie relatives à l'état du système à partir des principaux appareils AWS IoT Greengrass](telemetry.md)

Par défaut, le composant émetteur de télémétrie Nucleus publie les données de télémétrie toutes les 60 secondes sur le sujet local suivant. publish/subscribe 

```
$local/greengrass/telemetry
```

Le composant émetteur de télémétrie Nucleus ne publie pas dans un sujet AWS IoT Core MQTT par défaut. Vous pouvez configurer ce composant pour qu'il soit publié dans une rubrique AWS IoT Core MQTT lorsque vous le déployez. L'utilisation d'une rubrique MQTT pour publier des données sur le AWS Cloud est soumise à une [AWS IoT Core tarification](https://aws.amazon.com/iot-core/pricing/).

<a name="greengrass-software-catalog-influxdb-telemetry-publisher"></a>AWS IoT Greengrass fournit plusieurs [composants communautaires](greengrass-software-catalog.md) pour vous aider à analyser et à visualiser les données de télémétrie localement sur votre appareil principal à l'aide d'InfluxDB et Grafana. Ces composants utilisent les données de télémétrie du composant émetteur du noyau. Pour plus d'informations, consultez le fichier README du composant éditeur [InfluxDB.](https://github.com/awslabs/aws-greengrass-labs-telemetry-influxdbpublisher)

**Topics**
+ [Versions](#nucleus-emitter-component-versions)
+ [Type](#nucleus-emitter-component-type)
+ [Système d’exploitation](#nucleus-emitter-component-os-support)
+ [Dépendances](#nucleus-emitter-component-dependencies)
+ [Configuration](#nucleus-emitter-component-configuration)
+ [Données de sortie](#nucleus-emitter-component-output-data)
+ [Usage](#nucleus-emitter-component-usage)
+ [Fichier journal local](#nucleus-emitter-component-log-file)
+ [Journal des modifications](#nucleus-emitter-component-changelog)

## Versions
<a name="nucleus-emitter-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 1,0 x

## Type
<a name="nucleus-emitter-component-type"></a>

<a name="public-component-type-plugin-para1"></a>Ce composant est un composant de plugin (`aws.greengrass.plugin`). Le [noyau Greengrass](greengrass-nucleus-component.md) 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.

<a name="public-component-type-plugin-para2"></a>Ce composant utilise le même fichier journal que le noyau Greengrass. Pour de plus amples informations, veuillez consulter [AWS IoT Greengrass Journaux de surveillance](monitor-logs.md).

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="nucleus-emitter-component-os-support"></a>

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

## Dépendances
<a name="nucleus-emitter-component-dependencies"></a>

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](#nucleus-emitter-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 1.0.12 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,4,0 <2,17,0 | Flexible | 

------
#### [ 1.0.11 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,4,0 <2,16,0  | Stricte | 

------
#### [ 1.0.10 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,4,0 <2,15,0  | Stricte | 

------
#### [ 1.0.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,4,0 <2,14,0  | Stricte | 

------
#### [ 1.0.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,4,0 <2,13,0  | Stricte | 

------
#### [ 1.0.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,4,0 <2,12,0  | Stricte | 

------
#### [ 1.0.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,4,0 <2,11,0  | Stricte | 

------
#### [ 1.0.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,4,0 <2,1,0  | Stricte | 

------
#### [ 1.0.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,4,0 <2,9,0  | Stricte | 

------
#### [ 1.0.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,4,0 <2,8,0  | Stricte | 

------
#### [ 1.0.2 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,4,0 <2,7,0  | Stricte | 

------
#### [ 1.0.1 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,4,0 <2,6,0  | Stricte | 

------
#### [ 1.0.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,4,0 <2,5,0  | Stricte | 

------

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="nucleus-emitter-component-configuration"></a>

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

`pubSubPublish`  
(Facultatif) Définit s'il faut publier des données de télémétrie dans le `$local/greengrass/telemetry` sujet. Les valeurs prises en charge sont `true` et `false`.  
Valeur par défaut : `true`

`mqttTopic`  
(Facultatif) Rubrique AWS IoT Core MQTT dans laquelle ce composant publie les données de télémétrie.  
Définissez cette valeur sur le sujet AWS IoT Core MQTT sur lequel vous souhaitez publier les données de télémétrie. Lorsque cette valeur est vide, l'émetteur du noyau ne publie pas les données de télémétrie dans le. AWS Cloud  
L'utilisation d'une rubrique MQTT pour publier des données sur le AWS Cloud est soumise à une [AWS IoT Core tarification](https://aws.amazon.com/iot-core/pricing/).
Valeur par défaut : `""`

`telemetryPublishIntervalMs`  
(Facultatif) Durée (en millisecondes) entre laquelle le composant publie les données de télémétrie. Si vous définissez cette valeur en dessous de la valeur minimale prise en charge, le composant utilise la valeur minimale à la place.  
Des intervalles de publication plus courts se traduisent par une augmentation de l'utilisation du processeur sur votre appareil principal. Nous vous recommandons de commencer par l'intervalle de publication par défaut et de l'ajuster en fonction de l'utilisation du processeur de votre appareil.
Minimum : `500`  
Valeur par défaut : `60000`

**Example Exemple : mise à jour de la fusion de configurations**  
L'exemple suivant montre un exemple de mise à jour de fusion de configuration qui permet de publier des données de télémétrie toutes les 5 secondes sur le `$local/greengrass/telemetry` sujet et le sujet `greengrass/myTelemetry` AWS IoT Core MQTT.  

```
{
  "pubSubPublish": "true",
  "mqttTopic": "greengrass/myTelemetry",
  "telemetryPublishIntervalMs": 5000
}
```

## Données de sortie
<a name="nucleus-emitter-component-output-data"></a>

Ce composant publie les métriques de télémétrie sous forme de tableau JSON sur le sujet suivant. 

**Sujet local :** `$local/greengrass/telemetry`

Vous pouvez éventuellement choisir de publier également des métriques de télémétrie dans un sujet AWS IoT Core MQTT. Pour plus d'informations sur les sujets, consultez les [rubriques MQTT](https://docs.aws.amazon.com/iot/latest/developerguide/topics.html) dans le *Guide du AWS IoT Core développeur*.

**Example Exemple de données**  

```
[
  {
    "A": "Average",
    "N": "CpuUsage",
    "NS": "SystemMetrics",
    "TS": 1627597331445,
    "U": "Percent",
    "V": 26.21981271562346
  },
  {
    "A": "Count",
    "N": "TotalNumberOfFDs",
    "NS": "SystemMetrics",
    "TS": 1627597331445,
    "U": "Count",
    "V": 7316
  },
  {
    "A": "Count",
    "N": "SystemMemUsage",
    "NS": "SystemMetrics",
    "TS": 1627597331445,
    "U": "Megabytes",
    "V": 10098
  },
  {
    "A": "Count",
    "N": "NumberOfComponentsStarting",
    "NS": "GreengrassComponents",
    "TS": 1627597331446,
    "U": "Count",
    "V": 0
  },
  {
    "A": "Count",
    "N": "NumberOfComponentsInstalled",
    "NS": "GreengrassComponents",
    "TS": 1627597331446,
    "U": "Count",
    "V": 0
  },
  {
    "A": "Count",
    "N": "NumberOfComponentsStateless",
    "NS": "GreengrassComponents",
    "TS": 1627597331446,
    "U": "Count",
    "V": 0
  },
  {
    "A": "Count",
    "N": "NumberOfComponentsStopping",
    "NS": "GreengrassComponents",
    "TS": 1627597331446,
    "U": "Count",
    "V": 0
  },
  {
    "A": "Count",
    "N": "NumberOfComponentsBroken",
    "NS": "GreengrassComponents",
    "TS": 1627597331446,
    "U": "Count",
    "V": 0
  },
  {
    "A": "Count",
    "N": "NumberOfComponentsRunning",
    "NS": "GreengrassComponents",
    "TS": 1627597331446,
    "U": "Count",
    "V": 7
  },
  {
    "A": "Count",
    "N": "NumberOfComponentsErrored",
    "NS": "GreengrassComponents",
    "TS": 1627597331446,
    "U": "Count",
    "V": 0
  },
  {
    "A": "Count",
    "N": "NumberOfComponentsNew",
    "NS": "GreengrassComponents",
    "TS": 1627597331446,
    "U": "Count",
    "V": 0
  },
  {
    "A": "Count",
    "N": "NumberOfComponentsFinished",
    "NS": "GreengrassComponents",
    "TS": 1627597331446,
    "U": "Count",
    "V": 2
  }
]
```<a name="telemetry-json-array-config"></a>

Le tableau de sortie contient une liste de métriques possédant les propriétés suivantes :

`A`  
Type d'agrégation pour la métrique.   
Pour la `CpuUsage` métrique, cette propriété est définie sur `Average` car la valeur publiée de la métrique est l'utilisation moyenne du processeur depuis le dernier événement de publication.  
Pour toutes les autres mesures, l'émetteur du noyau n'agrège pas la valeur de la métrique, et cette propriété est définie sur. `Count`

`N`  
Le nom de la métrique.

`NS`  
L’espace de noms des métriques.

`TS`  
Horodatage du moment où les données ont été collectées.

`U`  
Unité de la valeur métrique.

`V`  
Valeur de la métrique . 

L'émetteur du noyau publie les métriques suivantes :


| Nom | Description | 
| --- | --- | 
|  **Système**  | 
|  `SystemMemUsage`  |  La quantité de mémoire actuellement utilisée par toutes les applications du périphérique principal de Greengrass, y compris le système d'exploitation.  | 
|  `CpuUsage`  |  La quantité de processeur actuellement utilisée par toutes les applications du périphérique principal de Greengrass, y compris le système d'exploitation.  | 
|  `TotalNumberOfFDs`  |  Nombre de descripteurs de fichiers stockés par le système d'exploitation du périphérique principal Greengrass. Un descripteur de fichier identifie de manière unique un fichier ouvert.  | 
|  **Noyau de Greengrass**  | 
|  `NumberOfComponentsRunning`  |  Le nombre de composants qui s'exécutent sur le périphérique principal de Greengrass.  | 
|  `NumberOfComponentsErrored`  |  Nombre de composants présentant un état d'erreur sur le périphérique principal de Greengrass.  | 
|  `NumberOfComponentsInstalled`  |  Le nombre de composants installés sur le périphérique principal de Greengrass.  | 
|  `NumberOfComponentsStarting`  |  Le nombre de composants qui démarrent sur le périphérique principal de Greengrass.  | 
|  `NumberOfComponentsNew`  |  Le nombre de composants nouveaux sur le périphérique principal de Greengrass.  | 
|  `NumberOfComponentsStopping`  |  Le nombre de composants qui s'arrêtent sur le périphérique principal de Greengrass.  | 
|  `NumberOfComponentsFinished`  |  Le nombre de composants terminés sur le périphérique principal Greengrass.  | 
|  `NumberOfComponentsBroken`  |  Le nombre de composants cassés sur le périphérique principal de Greengrass.  | 
|  `NumberOfComponentsStateless`  |  Le nombre de composants qui sont apatrides sur le périphérique principal de Greengrass.  | 

## Usage
<a name="nucleus-emitter-component-usage"></a>

Pour utiliser les données de télémétrie relatives à l'état du système, vous pouvez créer des composants personnalisés qui s'abonnent aux rubriques sur lesquelles l'émetteur du noyau publie les données de télémétrie, et qui réagissent à ces données selon les besoins. Le composant Nucleus Emitter offrant la possibilité de publier des données de télémétrie sur un sujet local, vous pouvez vous abonner à ce sujet et utiliser les données publiées pour agir localement sur votre appareil principal. L'appareil principal peut alors réagir aux données de télémétrie même lorsque sa connectivité au cloud est limitée.

Par exemple, vous pouvez configurer un composant qui écoute les données de télémétrie sur le `$local/greengrass/telemetry` sujet et envoie les données au composant du gestionnaire de flux pour qu'il diffuse vos données vers le. AWS Cloud Pour plus d'informations sur la création d'un tel composant, reportez-vous [Publier/souscrire des messages locaux](ipc-publish-subscribe.md) aux sections et[Créez des composants personnalisés utilisant le gestionnaire de flux](use-stream-manager-in-custom-components.md).

## Fichier journal local
<a name="nucleus-emitter-component-log-file"></a>

Ce composant utilise le même fichier journal que le composant [Greengrass nucleus](greengrass-nucleus-component.md).

------
#### [ 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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par 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
<a name="nucleus-emitter-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  1,0,13  |  Met à jour la version du composant pour la version 2.17.0 de Greengrass Nucleus.  | 
|  1.0.12  |  Version mise à jour pour la version 2.16.0 de Greengrass Nucleus.  | 
|  1.0.11  | Version mise à jour pour la version 2.15.0 de Greengrass Nucleus. | 
|  1.0.10  | Version mise à jour pour la version 2.14.0 de Greengrass Nucleus. | 
|  1.0.9  | Version mise à jour pour la version 2.13.0 de Greengrass Nucleus. | 
|  1.0.8  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  1.0.7  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  1.0.6  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. | 
|  1.0.5  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  1.0.4  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  1.0.3  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  1.0.2  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  1.0.1  |  Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.  | 
|  1.0.0  |  Première version.  | 

# Fournisseur PKCS \$111
<a name="pkcs11-provider-component"></a>

Le composant fournisseur PKCS \$111 (`aws.greengrass.crypto.Pkcs11Provider`) vous permet de configurer le logiciel AWS IoT Greengrass principal pour utiliser un module de sécurité matériel (HSM) via l'interface [PKCS \$111](https://en.wikipedia.org/wiki/PKCS_11). Ce composant vous permet de stocker en toute sécurité les fichiers de certificats et de clés privées afin qu'ils ne soient pas exposés ou dupliqués dans le logiciel. Pour de plus amples informations, veuillez consulter [Intégration de sécurité matérielle](hardware-security.md).

**Note**  
Ce composant n'est requis que pour le [noyau de Greengrass](greengrass-nucleus-component.md). [Greengrass nucleus lite](greengrass-nucleus-lite-component.md) v2.5.0 et versions ultérieures incluent le support PKCS \$111 intégré et ne nécessitent pas ce composant. Pour plus d'informations, consultez le [support PKCS \$111](https://github.com/aws-greengrass/aws-greengrass-lite/blob/main/docs/PKCS11_SUPPORT.md) dans le GitHub référentiel AWS IoT Greengrass Nucleus Lite.

Pour approvisionner un appareil principal Greengrass qui stocke son certificat et sa clé privée dans un HSM, vous devez spécifier ce composant en tant que plug-in de provisionnement lorsque vous installez le logiciel Core. AWS IoT Greengrass Pour de plus amples informations, veuillez consulter [Installation AWS IoT Greengrass du logiciel Core avec provisionnement manuel des ressources](manual-installation.md).

AWS IoT Greengrass fournit ce composant sous forme de fichier JAR que vous pouvez télécharger pour le spécifier en tant que plugin de provisionnement lors de l'installation. Vous pouvez télécharger la dernière version du fichier JAR du composant à l'adresse suivante : [https://d2s8p88vqu9w66.cloudfront. net/releases/Pkcs11Provider/aws.greengrass.crypto.pkcs11Provider-Latest.jar](https://d2s8p88vqu9w66.cloudfront.net/releases/Pkcs11Provider/aws.greengrass.crypto.Pkcs11Provider-latest.jar).

**Topics**
+ [Versions](#pkcs11-provider-component-versions)
+ [Type](#pkcs11-provider-component-type)
+ [Système d’exploitation](#pkcs11-provider-component-os-support)
+ [Exigences](#pkcs11-provider-component-requirements)
+ [Dépendances](#pkcs11-provider-component-dependencies)
+ [Configuration](#pkcs11-provider-component-configuration)
+ [Fichier journal local](#pkcs11-provider-component-log-file)
+ [Journal des modifications](#pkcs11-provider-component-changelog)

## Versions
<a name="pkcs11-provider-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2.0.x

## Type
<a name="pkcs11-provider-component-type"></a>

<a name="public-component-type-plugin-para1"></a>Ce composant est un composant de plugin (`aws.greengrass.plugin`). Le [noyau Greengrass](greengrass-nucleus-component.md) 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.

<a name="public-component-type-plugin-para2"></a>Ce composant utilise le même fichier journal que le noyau Greengrass. Pour de plus amples informations, veuillez consulter [AWS IoT Greengrass Journaux de surveillance](monitor-logs.md).

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="pkcs11-provider-component-os-support"></a>

Ce composant ne peut être installé que sur les appareils principaux de Linux.

## Exigences
<a name="pkcs11-provider-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ <a name="hardware-security-module-requirements-key"></a>Module de sécurité matérielle qui prend en charge le schéma de signature [PKCS \$11 v1.5](https://tools.ietf.org/html/rfc2313) et les clés RSA d'une taille de clé RSA-2048 (ou supérieure) ou les clés ECC.
**Note**  <a name="hardware-security-module-requirements-key-notes"></a>
Pour utiliser un module de sécurité matériel avec des clés ECC, vous devez utiliser [Greengrass](greengrass-nucleus-component.md) nucleus v2.5.6 ou version ultérieure.  
Pour utiliser un module de sécurité matériel et un [gestionnaire de secrets](secret-manager-component.md), vous devez utiliser un module de sécurité matériel avec des clés RSA.
+ <a name="hardware-security-module-requirements-pkcs11-provider-library"></a>Une bibliothèque de fournisseur PKCS \$111 que le logiciel AWS IoT Greengrass Core peut charger au moment de l'exécution (à l'aide de libdl) pour appeler les fonctions PKCS \$111. La bibliothèque du fournisseur PKCS \$111 doit implémenter les opérations d'API PKCS \$111 suivantes :
  + `C_Initialize`
  + `C_Finalize`
  + `C_GetSlotList`
  + `C_GetSlotInfo`
  + `C_GetTokenInfo`
  + `C_OpenSession`
  + `C_GetSessionInfo`
  + `C_CloseSession`
  + `C_Login`
  + `C_Logout`
  + `C_GetAttributeValue`
  + `C_FindObjectsInit`
  + `C_FindObjects`
  + `C_FindObjectsFinal`
  + `C_DecryptInit`
  + `C_Decrypt`
  + `C_DecryptUpdate`
  + `C_DecryptFinal`
  + `C_SignInit`
  + `C_Sign`
  + `C_SignUpdate`
  + `C_SignFinal`
  + `C_GetMechanismList`
  + `C_GetMechanismInfo`
  + `C_GetInfo`
  + `C_GetFunctionList`
+ <a name="hardware-security-module-requirements-slot-label"></a>Le module matériel doit être résolu par étiquette d'emplacement, tel que défini dans la spécification PKCS\$111.
+ <a name="hardware-security-module-requirements-private-key-and-certificate"></a>Vous devez stocker la clé privée et le certificat dans le HSM dans le même emplacement, et ils doivent utiliser la même étiquette d'objet et le même ID d'objet, si le HSM prend en charge l'objet. IDs
+ <a name="hardware-security-module-requirements-object-label"></a>Le certificat et la clé privée doivent pouvoir être résolus par des libellés d'objets.
+ <a name="hardware-security-module-requirements-private-key-permissions"></a>La clé privée doit disposer des autorisations suivantes :
  + `sign`
  + `decrypt`
+ <a name="hardware-security-module-requirements-secret-manager-permissions"></a>(Facultatif) Pour utiliser le [composant secret manager](secret-manager-component.md), vous devez utiliser la version 2.1.0 ou ultérieure, et la clé privée doit disposer des autorisations suivantes :
  + `unwrap`
  + `wrap`
+ <a name="hardware-security-module-requirements-environment-variable"></a>(Facultatif) Si vous utilisez la TPM2 bibliothèque et exécutez le noyau de Greengrass en tant que service, vous devez fournir une variable d'environnement indiquant l'emplacement du magasin PKCS \$111. L'exemple suivant est un fichier de service systemd contenant la variable d'environnement requise :

  ```
  [Unit]
  Description=Greengrass Core
  After=network.target
  
  [Service]
  Type=simple
  PIDFile=/var/run/greengrass.pid
  Environment=TPM2_PKCS11_STORE=/path/to/store/directory
  RemainAfterExit=no
  Restart=on-failure
  RestartSec=10
  ExecStart=/bin/sh /greengrass/v2/alts/current/distro/bin/loader
  
  [Install]
  WantedBy=multi-user.target
  ```

## Dépendances
<a name="pkcs11-provider-component-dependencies"></a>

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](#pkcs11-provider-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.0.11 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,3 <2,17,0 | Flexible | 

------
#### [ 2.0.10 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,3 <2,16,0  | Flexible | 

------
#### [ 2.0.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,3 <2,15,0  | Flexible | 

------
#### [ 2.0.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,3 <2,14,0  | Flexible | 

------
#### [ 2.0.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,3 <2,13,0  | Flexible | 

------
#### [ 2.0.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,3 <2,12,0  | Flexible | 

------
#### [ 2.0.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,3 <2,11,0  | Flexible | 

------
#### [ 2.0.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,3 <2,1,0  | Flexible | 

------
#### [ 2.0.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,3 <2,9,0  | Flexible | 

------
#### [ 2.0.2 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,3 <2,8,0  | Flexible | 

------
#### [ 2.0.1 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,5,3 <2,7,0  | Flexible | 

------
#### [ 2.0.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,5,3 <2,6,0  | Flexible | 

------

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="pkcs11-provider-component-configuration"></a>

Ce composant fournit les paramètres de configuration suivants que vous pouvez personnaliser lorsque vous déployez le composant.<a name="pkcs11-provider-component-configuration-parameters"></a>

`name`  
Nom de la configuration PKCS \$111.

`library`  
Le chemin de fichier absolu vers la bibliothèque de l'implémentation PKCS \$111 que le logiciel AWS IoT Greengrass Core peut charger avec libdl.

`slot`  
L'ID du slot qui contient la clé privée et le certificat de l'appareil. Cette valeur est différente de l'index ou de l'étiquette du slot.

`userPin`  
Le code PIN de l'utilisateur à utiliser pour accéder au slot.

**Example Exemple : mise à jour de la fusion de configurations**  

```
{
  "name": "softhsm_pkcs11",
  "library": "/usr/lib/softhsm/libsofthsm2.so",
  "slot": 1,
  "userPin": "1234"
}
```

## Fichier journal local
<a name="pkcs11-provider-component-log-file"></a>

Ce composant utilise le même fichier journal que le composant [Greengrass nucleus](greengrass-nucleus-component.md).

------
#### [ 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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par 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
<a name="pkcs11-provider-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2,0,12  |  Met à jour la version du composant pour la version 2.17.0 de Greengrass Nucleus.  | 
|  2.0.11  |  Version mise à jour pour la version 2.16.0 de Greengrass Nucleus.  | 
|  2.0.10  | Version mise à jour pour la version 2.15.0 de Greengrass Nucleus. | 
|  2.0.9  | Version mise à jour pour la version 2.14.0 de Greengrass Nucleus. | 
|  2.0.8  | Version mise à jour pour la version 2.13.0 de Greengrass Nucleus. | 
|  2.0.7  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  2.0.6  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  2.0.5  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. | 
|  2.0.4  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  2.0.3  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  2.0.2  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  2.0.1  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  2.0.0  |  Première version.  | 

# Directeur des services secrets
<a name="secret-manager-component"></a>

Le composant du gestionnaire de secrets (`aws.greengrass.SecretManager`) déploie les secrets depuis les appareils principaux AWS Secrets Manager de Greengrass. Utilisez ce composant pour utiliser en toute sécurité les informations d'identification, telles que les mots de passe, dans les composants personnalisés de vos principaux appareils Greengrass. Pour plus d'informations sur Secrets Manager, consultez [Qu'est-ce que c'est AWS Secrets Manager ?](https://docs.aws.amazon.com/secretsmanager/latest/userguide/intro.html) dans le *guide de AWS Secrets Manager l'utilisateur*.

Pour accéder aux secrets de ce composant dans vos composants Greengrass personnalisés, utilisez l'[GetSecretValue](ipc-secret-manager.md#ipc-operation-getsecretvalue)opération décrite dans le. Kit SDK des appareils AWS IoT Pour plus d’informations, consultez [Utilisez le Kit SDK des appareils AWS IoT pour communiquer avec le noyau de Greengrass, les autres composants et AWS IoT CoreCommuniquez avec le noyau de Greengrass, les autres composants et AWS IoT Core](interprocess-communication.md) et [Récupérez les valeurs secrètes](ipc-secret-manager.md).

Ce composant chiffre les secrets sur l'appareil principal afin de protéger vos informations d'identification et vos mots de passe jusqu'à ce que vous ayez besoin de les utiliser. Il utilise la clé privée de l'appareil principal pour chiffrer et déchiffrer les secrets.

**Topics**
+ [Versions](#secret-manager-component-versions)
+ [Type](#secret-manager-component-type)
+ [Système d’exploitation](#secret-manager-component-os-support)
+ [Exigences](#secret-manager-component-requirements)
+ [Dépendances](#secret-manager-component-dependencies)
+ [Configuration](#secret-manager-component-configuration)
+ [Fichier journal local](#secret-manager-component-log-file)
+ [Journal des modifications](#secret-manager-component-changelog)

## Versions
<a name="secret-manager-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Type
<a name="secret-manager-component-type"></a>

<a name="public-component-type-plugin-para1"></a>Ce composant est un composant de plugin (`aws.greengrass.plugin`). Le [noyau Greengrass](greengrass-nucleus-component.md) 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.

<a name="public-component-type-plugin-para2"></a>Ce composant utilise le même fichier journal que le noyau Greengrass. Pour de plus amples informations, veuillez consulter [AWS IoT Greengrass Journaux de surveillance](monitor-logs.md).

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="secret-manager-component-os-support"></a>

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

## Exigences
<a name="secret-manager-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ Le [rôle d'appareil Greengrass](device-service-role.md) doit autoriser l'`secretsmanager:GetSecretValue`action, comme illustré dans l'exemple de politique IAM suivant.

------
#### [ JSON ]

****  

  ```
  {
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
        "Action": [
          "secretsmanager:GetSecretValue"
        ],
        "Effect": "Allow",
        "Resource": [
        "arn:aws:secretsmanager:us-east-1:123456789012:secret:MySecret"
        ]
      }
    ]
  }
  ```

------

  ```
  ```
**Note**  
Si vous utilisez une AWS Key Management Service clé gérée par le client pour chiffrer des secrets, le rôle de l'appareil doit également autoriser l'action. `kms:Decrypt`

  Pour plus d'informations sur les politiques IAM pour Secrets Manager, consultez ce qui suit dans le *guide de l'AWS Secrets Manager utilisateur* :
  + [Authentification et contrôle d'accès pour AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/auth-and-access.html)
  + [Actions, ressources et clés de contexte que vous pouvez utiliser dans une politique IAM ou une politique secrète pour AWS Secrets Manager](https://docs.aws.amazon.com/secretsmanager/latest/userguide/reference_iam-permissions.html)
+ Les composants personnalisés doivent définir une politique d'autorisation qui permet `aws.greengrass#GetSecretValue` d'obtenir les secrets que vous stockez avec ce composant. Dans cette politique d'autorisation, vous pouvez restreindre l'accès des composants à des secrets spécifiques. Pour plus d'informations, consultez la section [Autorisation IPC du gestionnaire secret](ipc-secret-manager.md#ipc-secret-manager-authorization).
+ (Facultatif) Si vous stockez la clé privée et le certificat du périphérique principal dans un [module de sécurité matériel](hardware-security.md) (HSM), le HSM doit prendre en charge les clés RSA, la clé privée doit avoir l'`unwrap`autorisation et la clé publique doit avoir l'autorisation. `wrap`

### Points de terminaison et ports
<a name="secret-manager-component-endpoints"></a>

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](allow-device-traffic.md).


| Endpoint |  Port | Obligatoire | Description | 
| --- | --- | --- | --- | 
|  `secretsmanager.region.amazonaws.com`  | 443 | Oui |  Téléchargez les secrets sur l'appareil principal.  | 

## Dépendances
<a name="secret-manager-component-dependencies"></a>

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](#secret-manager-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 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](greengrass-nucleus-component.md) | >=2,5,0 <2,17,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](greengrass-nucleus-component.md) | >=2,5,0 <2,16,0 | Flexible | 

------
#### [ 2.2.2 – 2.2.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,0 <2,15,0 | Flexible | 

------
#### [ 2.2.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,13,0 <2,14,0 | Flexible | 

------
#### [ 2.1.7 – 2.1.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,0 <2,13,0 | Flexible | 

------
#### [ 2.1.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,0 <2,12,0 | Flexible | 

------
#### [ 2.1.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,0 <2,11,0 | Flexible | 

------
#### [ 2.1.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,0 <2,1,0 | Flexible | 

------
#### [ 2.1.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,0 <2,9,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](greengrass-nucleus-component.md) | >=2,5,0 <2,8,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](greengrass-nucleus-component.md) | >=2,5,0 <2,7,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](greengrass-nucleus-component.md) | >=2,5,0 <2,6,0 | Flexible | 

------
#### [ 2.0.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,5.0  | Flexible | 

------
#### [ 2.0.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,4.0  | Flexible | 

------
#### [ 2.0.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,3.0  | Flexible | 

------
#### [ 2.0.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,2.0  | Flexible | 

------
#### [ 2.0.4 and 2.0.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=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](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="secret-manager-component-configuration"></a>

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

`periodicRefreshIntervalMin` (facultatif)  
Intervalle en minutes pendant lequel ce composant synchronise les secrets configurés sur le périphérique principal avec les dernières valeurs secrètes du AWS Secrets Manager service. Si cet intervalle n'est pas configuré, le gestionnaire de secrets n'actualisera pas régulièrement les secrets configurés.  

```
{
  "cloudSecrets": [
    {
      "arn": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyGreengrassSecret-abcdef"
    }
  ],
  "periodicRefreshIntervalMin" : 60
}
```

`cloudSecrets`  
Liste des secrets de Secrets Manager à déployer sur le périphérique principal. Vous pouvez spécifier des étiquettes pour définir les versions de chaque secret à déployer. Si vous ne spécifiez pas de version, ce composant déploie la version avec l'étiquette intermédiaire `AWSCURRENT` attachée. Pour plus d'informations, consultez la section [Étiquettes de mise en scène](https://docs.aws.amazon.com/secretsmanager/latest/userguide/terms-concepts.html#term_staging-label) dans le *guide de AWS Secrets Manager l'utilisateur*.  
Le composant du gestionnaire de secrets met en cache les secrets localement. Si la valeur du secret change dans Secrets Manager, ce composant ne récupère pas automatiquement la nouvelle valeur. Pour mettre à jour la copie locale, attribuez une nouvelle étiquette au secret et configurez ce composant pour récupérer le secret identifié par le nouveau label.  
Chaque objet contient les informations suivantes :    
`arn`  
L'ARN du secret à déployer. L'ARN du secret peut être un ARN complet ou partiel. Nous vous recommandons de spécifier un ARN complet plutôt qu'un ARN partiel. Pour plus d'informations, consultez la section [Recherche d'un secret à partir d'un ARN partiel](https://docs.aws.amazon.com/secretsmanager/latest/userguide/troubleshoot.html#ARN_secretnamehyphen). Voici un exemple d'ARN complet et d'ARN partiel :  
+ ARN complet : `arn:aws:secretsmanager:us-east-2:111122223333:secret:SecretName-abcdef`
+ ARN partiel : `arn:aws:secretsmanager:us-east-2:111122223333:secret:SecretName`  
`labels`  
(Facultatif) Une liste d'étiquettes pour identifier les versions du secret à déployer sur le périphérique principal.  
Chaque étiquette doit être une chaîne.

**Example Exemple : mise à jour de la fusion de configurations**  

```
{
  "cloudSecrets": [
    {
      "arn": "arn:aws:secretsmanager:us-west-2:123456789012:secret:MyGreengrassSecret-abcdef"
    }
  ]
}
```

## Fichier journal local
<a name="secret-manager-component-log-file"></a>

Ce composant utilise le même fichier journal que le composant [Greengrass nucleus](greengrass-nucleus-component.md).

------
#### [ 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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par 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
<a name="secret-manager-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.2.8  |  Met à jour la version du composant pour la version 2.17.0 de Greengrass Nucleus.  | 
|  2.2.7  |  Version mise à jour pour la version 2.16.0 de Greengrass Nucleus.  | 
|  2.2.6  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/secret-manager-component.html)  | 
|  2.2.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/secret-manager-component.html)  | 
|  2.2.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/secret-manager-component.html)  | 
|  2.2.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/secret-manager-component.html)  | 
|  2.2.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/secret-manager-component.html)  | 
|  2.2.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/secret-manager-component.html)  | 
|  2.2.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/secret-manager-component.html)  | 
|  2.1.8  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/secret-manager-component.html)  | 
|  2.1.7  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  2.1.6  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  2.1.5  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. | 
|  2.1.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/secret-manager-component.html)  | 
|  2.1.3  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  2.1.2  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  2.1.1  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/secret-manager-component.html)  | 
|  2.0.9  |  Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.  | 
|  2.0.8  |  Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.  | 
|  2.0.7  |  Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.  | 
|  2.0.6  |  Version mise à jour pour la version 2.1.0 de Greengrass Nucleus.  | 
|  2.0.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/secret-manager-component.html)  | 
|  2.0.4  |  Première version.  | 

# Tunneling sécurisé
<a name="secure-tunneling-component"></a>

Avec le `aws.greengrass.SecureTunneling` composant, vous pouvez établir une communication bidirectionnelle sécurisée avec un appareil principal de Greengrass situé derrière des pare-feux restreints.

Par exemple, imaginez que vous avez un appareil central Greengrass derrière un pare-feu qui interdit toutes les connexions entrantes. Le tunneling sécurisé utilise MQTT pour transférer un jeton d'accès à l'appareil, puis WebSockets pour établir une connexion SSH avec l'appareil via le pare-feu. Avec ce tunnel AWS IoT géré, vous pouvez ouvrir la connexion SSH requise pour votre appareil. *Pour plus d'informations sur l'utilisation du tunneling AWS IoT sécurisé pour se connecter à des appareils distants, consultez la section relative au [tunneling AWS IoT sécurisé](https://docs.aws.amazon.com/iot/latest/developerguide/secure-tunneling.html) dans le guide du développeur.AWS IoT *

Ce composant s'abonne au courtier de messages AWS IoT Core MQTT sur le `$aws/things/greengrass-core-device/tunnels/notify` sujet pour recevoir des notifications de tunneling sécurisé.

**Topics**
+ [Versions](#secure-tunneling-component-versions)
+ [Type](#secure-tunneling-component-type)
+ [Système d’exploitation](#secure-tunneling-component-os-support)
+ [Exigences](#secure-tunneling-component-requirements)
+ [Dépendances](#secure-tunneling-component-dependencies)
+ [Configuration](#secure-tunneling-component-configuration)
+ [Fichier journal local](#secure-tunneling-component-log-file)
+ [Licences](#secure-tunneling-component-licenses)
+ [Usage](#secure-tunneling-component-usage)
+ [Consultez aussi](#secure-tunneling-component-see-also)
+ [Journal des modifications](#secure-tunneling-component-changelog)

## Versions
<a name="secure-tunneling-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2.0.x
+ 1,1x
+ 1,0 x

## Type
<a name="secure-tunneling-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="secure-tunneling-component-os-support"></a>

Ce composant ne peut être installé que sur les appareils principaux de Linux.

Architectures :
+ Armv 71
+ Bras (8) AArch64
+ x86\$164

## Exigences
<a name="secure-tunneling-component-requirements"></a>

Ce composant répond aux exigences suivantes :

------
#### [ 2.0.x ]
+ Au moins 4 Mo d'espace disque disponible pour le composant de tunneling sécurisé. Cette exigence n'inclut pas le logiciel principal de Greengrass ni les autres composants exécutés sur le même appareil.
+ Minimum de 3 Mo de RAM disponible pour le composant de tunneling sécurisé. Cette exigence n'inclut pas le logiciel principal de Greengrass ni les autres composants exécutés sur le même appareil.
+ Bibliothèque GNU C (glibc) version 2.35 ou supérieure. Les versions du système d'exploitation et des bibliothèques ayant dépassé la date de fin de vie de leur support à long terme ne sont pas prises en charge. Vous devez utiliser un système d'exploitation et des bibliothèques bénéficiant d'un support à long terme.
+ Les bibliothèques d'exécution suivantes sont installées sur le périphérique principal de Greengrass :
  + `libstdc++`version 3.4.29 ou supérieure
  + `libgcc_s`version 3.0 ou supérieure
  + OpenSSL version 3.0.0 ou supérieure
+ Ouvrez le trafic sortant sur le port 443 de l'appareil principal Greengrass.
+ Activez le support pour le service de communication que vous souhaitez utiliser pour communiquer avec l'appareil principal de Greengrass. Par exemple, pour ouvrir une connexion SSH à l'appareil, vous devez activer SSH sur cet appareil.

------
#### [ 1.0.x - 1.1.x ]
+ Au moins 32 Mo d'espace disque disponible pour le composant de tunneling sécurisé. Cette exigence n'inclut pas le logiciel principal de Greengrass ni les autres composants exécutés sur le même appareil.
+ Minimum de 16 Mo de RAM disponible pour le composant de tunneling sécurisé. Cette exigence n'inclut pas le logiciel principal de Greengrass ni les autres composants exécutés sur le même appareil. Pour de plus amples informations, veuillez consulter [Contrôlez l'allocation de mémoire grâce aux options JVM](configure-greengrass-core-v2.md#jvm-tuning).
+ La version 2.25 ou supérieure de la bibliothèque GNU C (glibc) avec un noyau Linux 3.2 ou supérieur est requise pour le composant de tunneling sécurisé version 1.0.12 et supérieure. Les versions du système d'exploitation et des bibliothèques ayant dépassé la date de fin de vie de leur support à long terme ne sont pas prises en charge. Vous devez utiliser un système d'exploitation et des bibliothèques bénéficiant d'un support à long terme.
+ Le système d'exploitation et le moteur d'exécution Java doivent être installés en 64 bits.
+ [Python](https://www.python.org/) 3.5 ou version ultérieure installé sur le périphérique principal de Greengrass et ajouté à la variable d'environnement PATH.
+ `libcrypto.so.1.1`installé sur le périphérique principal de Greengrass et ajouté à la variable d'environnement PATH.
+ Ouvrez le trafic sortant sur le port 443 de l'appareil principal Greengrass.
+ Activez le support pour le service de communication que vous souhaitez utiliser pour communiquer avec l'appareil principal de Greengrass. Par exemple, pour ouvrir une connexion SSH à l'appareil, vous devez activer SSH sur cet appareil.

------

### Points de terminaison et ports
<a name="secure-tunneling-component-endpoints"></a>

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](allow-device-traffic.md).


| Endpoint |  Port | Obligatoire | Description | 
| --- | --- | --- | --- | 
|  `data.tunneling.iot.region.amazonaws.com`  | 443 | Oui |  Établissez des tunnels sécurisés.  | 

## Dépendances
<a name="secure-tunneling-component-dependencies"></a>

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](#secure-tunneling-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.0.0 ]

La version 2.0.0 de ce composant prend en charge à la fois Greengrass nucleus et Greengrass nucleus lite. Le tableau suivant répertorie les dépendances pour la version 2.0.0 de ce composant.


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Greengrass nucleus OU Greengrass nucleus](greengrass-nucleus-component.md) [lite](greengrass-nucleus-lite-component.md) |  >=2,0.0 <3,0.0  | Flexible | 

------
#### [ 1.0.19 – 1.1.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <3,0.0  | Flexible | 

------
#### [ 1.0.18 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0,0 <2,13,0  | Flexible | 

------
#### [ 1.0.16 – 1.0.17 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,12.0  | Flexible | 

------
#### [ 1.0.14 – 1.0.15 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,11.0  | Flexible | 

------
#### [ 1.0.11 – 1.0.13 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0,0 <2,1,0  | Flexible | 

------
#### [ 1.0.10 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,9.0  | Flexible | 

------
#### [ 1.0.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,8.0  | Flexible | 

------
#### [ 1.0.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,7.0  | Flexible | 

------
#### [ 1.0.5 - 1.0.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,6.0  | Flexible | 

------
#### [ 1.0.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,5.0  | Flexible | 

------
#### [ 1.0.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,4.0  | Flexible | 

------
#### [ 1.0.2 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,3.0  | Flexible | 

------
#### [ 1.0.1 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,2.0  | Flexible | 

------
#### [ 1.0.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=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](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="secure-tunneling-component-configuration"></a>

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

------
#### [ 2.0.x ]

`maxConcurrentTunnels`  
(Facultatif) Nombre maximum de tunnels simultanés autorisés.  
La valeur ne peut pas être supérieure à 20.
Valeur par défaut : `20`

`tunnelTimeoutSeconds`  
(Facultatif) Durée du délai d'expiration du tunnel en secondes.  
Par défaut : `43200` (12 heures)

`accessControl`  
(Facultatif) Objet contenant la [politique d'autorisation](interprocess-communication.md#ipc-authorization-policies) permettant au composant de s'abonner à la rubrique relative aux notifications relatives au tunneling sécurisé.  
Ne modifiez pas ce paramètre de configuration si votre déploiement cible un groupe d'objets. Si votre déploiement cible un appareil principal individuel et que vous souhaitez limiter son abonnement au sujet de l'appareil, spécifiez le nom de l'objet du périphérique principal. Dans la `resources` valeur de la politique d'autorisation de l'appareil, remplacez le caractère générique du sujet MQTT par le nom de l'objet de l'appareil.

```
{
  "aws.greengrass.ipc.mqttproxy": {
    "aws.greengrass.SecureTunneling:mqttproxy:1": {
      "policyDescription": "Access to tunnel notification pubsub topic",
      "operations": [
        "aws.greengrass#SubscribeToIoTCore"
      ],
      "resources": [
        "$aws/things/+/tunnels/notify"
      ]
    }
  }
}
```

**Example Exemple : mise à jour de la fusion de configurations**  
L'exemple de configuration suivant indique le nombre maximal de tunnels simultanés et les paramètres de délai d'expiration.  

```
{
  "maxConcurrentTunnels": 20,
  "tunnelTimeoutSeconds": 43200,
  "accessControl": {
    "aws.greengrass.ipc.mqttproxy": {
      "aws.greengrass.SecureTunneling:mqttproxy:1": {
        "policyDescription": "Access to tunnel notification pubsub topic",
        "operations": [
          "aws.greengrass#SubscribeToIoTCore"
        ],
        "resources": [
          "$aws/things/MyGreengrassCore/tunnels/notify"
        ]
      }
    }
  }
}
```

------
#### [ 1.0.x - 1.1.x ]

`OS_DIST_INFO`  
(Facultatif) Le système d'exploitation de votre appareil principal. Par défaut, le composant tente d'identifier automatiquement le système d'exploitation exécuté sur votre appareil principal. Si le composant ne démarre pas avec la valeur par défaut, utilisez cette valeur pour spécifier le système d'exploitation. Pour obtenir la liste des systèmes d'exploitation pris en charge pour ce composant, consultez[Exigences relatives aux dispositifs](greengrass-nucleus-component.md#greengrass-v2-requirements).  
Cette valeur peut être l'une des suivantes : `auto``ubuntu`,`amzn2`,`raspberrypi`.  
Valeur par défaut : `auto`

`accessControl`  
(Facultatif) Objet contenant la [politique d'autorisation](interprocess-communication.md#ipc-authorization-policies) permettant au composant de s'abonner à la rubrique relative aux notifications relatives au tunneling sécurisé.  
Ne modifiez pas ce paramètre de configuration si votre déploiement cible un groupe d'objets. Si votre déploiement cible un appareil principal individuel et que vous souhaitez limiter son abonnement au sujet de l'appareil, spécifiez le nom de l'objet du périphérique principal. Dans la `resources` valeur de la politique d'autorisation de l'appareil, remplacez le caractère générique du sujet MQTT par le nom de l'objet de l'appareil.

```
{
  "aws.greengrass.ipc.mqttproxy": {
    "aws.iot.SecureTunneling:mqttproxy:1": {
      "policyDescription": "Access to tunnel notification pubsub topic",
      "operations": [
        "aws.greengrass#SubscribeToIoTCore"
      ],
      "resources": [
        "$aws/things/+/tunnels/notify"
      ]
    }
  }
}
```

**Example Exemple : mise à jour de la fusion de configurations**  
L'exemple de configuration suivant indique d'autoriser ce composant à ouvrir des tunnels sécurisés sur un périphérique principal nommé **MyGreengrassCore** qui exécute Ubuntu.  

```
{
  "OS_DIST_INFO": "ubuntu",
  "accessControl": {
    "aws.greengrass.ipc.mqttproxy": {
      "aws.iot.SecureTunneling:mqttproxy:1": {
        "policyDescription": "Access to tunnel notification pubsub topic",
        "operations": [
          "aws.greengrass#SubscribeToIoTCore"
        ],
        "resources": [
          "$aws/things/MyGreengrassCore/tunnels/notify"
        ]
      }
    }
  }
}
```

------

## Fichier journal local
<a name="secure-tunneling-component-log-file"></a>

------
#### [ Greengrass nucleus ]

Ce composant utilise le fichier journal suivant.

```
/greengrass/v2/logs/aws.greengrass.SecureTunneling.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. Remplacez `/greengrass/v2` par le chemin d'accès au dossier AWS IoT Greengrass racine.

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

------
#### [ Greengrass nucleus lite ]

Exécutez la commande suivante sur le périphérique principal pour afficher les journaux de ce composant.

```
journalctl -xeau ggl.aws.greengrass.SecureTunneling.service
```

Exécutez la commande suivante sur le périphérique principal pour afficher les journaux de ce composant en temps réel.

```
journalctl -fau ggl.aws.greengrass.SecureTunneling.service
```

------

## Licences
<a name="secure-tunneling-component-licenses"></a>

Ce composant inclut les logiciels/licences tiers suivants :

------
#### [ 2.0.x ]
+ [AWS IoT Secure Tunneling Local Proxy](https://github.com/aws-samples/aws-iot-securetunneling-localproxy) /Apache License 2.0
+ [AWS SDK de composants Greengrass/licence Apache 2.0](https://github.com/aws-greengrass/aws-greengrass-component-sdk)
+ [Bibliothèques Boost C\$1\$1](https://www.boost.org/) /Licence logicielle Boost 1.0
+ [Protocol Buffers /Licence](https://github.com/protocolbuffers/protobuf) BSD à 3 clauses

------
#### [ 1.0.x - 1.1.x ]
+ [AWS IoT Device Client/Apache](https://github.com/awslabs/aws-iot-device-client) License 2.0
+ [Kit SDK des appareils AWS IoT pour Java](https://github.com/aws/aws-greengrass-core-sdk-java/)/Licence Apache 2.0
+ [Licence gson/Apache](https://github.com/google/gson) 2.0
+ [Log4j](https://logging.apache.org/log4j/2.x/) /Licence Apache 2.0
+ [licence slf4j /Apache 2.0](http://www.slf4j.org/)

------

## Usage
<a name="secure-tunneling-component-usage"></a>

Pour utiliser le composant de tunneling sécurisé sur votre appareil, procédez comme suit :

1. Déployez le composant de tunneling sécurisé sur votre appareil.

1. Ouvrez la [AWS IoT console](https://console.aws.amazon.com/iot). Dans le menu de gauche, choisissez **Actions à distance**, puis **Tunnels sécurisés**.

1. Créez un tunnel vers votre appareil Greengrass. 

1. Téléchargez le jeton d'accès à la source.

1. Utilisez le proxy local avec le jeton d'accès à la source pour vous connecter à votre destination. Pour plus d'informations, consultez la section [Comment utiliser le proxy local](https://docs.aws.amazon.com/iot/latest/developerguide/how-use-local-proxy.html) dans le *Guide du AWS IoT développeur*.

## Consultez aussi
<a name="secure-tunneling-component-see-also"></a>
+ [AWS IoT tunneling sécurisé dans le](https://docs.aws.amazon.com/iot/latest/developerguide/secure-tunneling.html) *guide du développeur AWS IoT *
+ [Comment utiliser le proxy local](https://docs.aws.amazon.com/iot/latest/developerguide/how-use-local-proxy.html) dans le *guide du AWS IoT développeur*

## Journal des modifications
<a name="secure-tunneling-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.0.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/secure-tunneling-component.html)  | 
|  1.1.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/secure-tunneling-component.html)  | 
|  1.1.2  |   Cette version n'est plus disponible. Les améliorations apportées à cette version sont disponibles dans les versions ultérieures de ce composant.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/secure-tunneling-component.html)  | 
|  1.1.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/secure-tunneling-component.html)  | 
|  1.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/secure-tunneling-component.html)  | 
|  1,019  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/secure-tunneling-component.html)  Si vous utilisez le proxy local de tunneling sécurisé comme client source du tunnel, ne mettez pas à jour votre composant vers cette version tant que vous n'avez pas également mis à niveau le proxy local vers la version 3.1.1 ou ultérieure.   | 
|  10,18  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  1,017  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/secure-tunneling-component.html)  | 
|  1,0,16  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  1.0.15  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/secure-tunneling-component.html)  | 
|  10,14  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. | 
|  1,0,13  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/secure-tunneling-component.html)  | 
|  1.0.12  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/secure-tunneling-component.html)  | 
|  1.0.11  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  1.0.10  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  1.0.9  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  1.0.8  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  1.0.7  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/secure-tunneling-component.html)  | 
|  1.0.6  |  Cette version contient des corrections de bogues.  | 
|  1.0.5  |  Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.  | 
|  1.0.4  |  Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.  | 
|  1.0.3  |  Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.  | 
|  1.0.2  |  Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.  | 
|  1.0.1  |  Version mise à jour pour la version 2.1.0 de Greengrass Nucleus.  | 
|  1.0.0  |  Première version.  | 

# Shadow Manager
<a name="shadow-manager-component"></a>

Le composant Shadow Manager (`aws.greengrass.ShadowManager`) active le service fantôme local sur votre appareil principal. Le service local d'ombre permet aux composants d'utiliser la communication entre processus pour [interagir avec les ombres locales](ipc-local-shadows.md). Le composant Shadow Manager gère le stockage des documents instantanés locaux et gère également la synchronisation des états des ombres locaux avec le service AWS IoT Device Shadow.

Pour plus d'informations sur la manière dont les appareils Greengrass Core peuvent interagir avec les ombres, consultez. [Interagissez avec les ombres de l'appareil](interact-with-shadows.md)

**Topics**
+ [Versions](#shadow-manager-component-versions)
+ [Type](#shadow-manager-component-type)
+ [Système d’exploitation](#shadow-manager-component-os-support)
+ [Exigences](#shadow-manager-component-requirements)
+ [Dépendances](#shadow-manager-component-dependencies)
+ [Configuration](#shadow-manager-component-configuration)
+ [Fichier journal local](#shadow-manager-component-log-file)
+ [Journal des modifications](#shadow-manager-component-changelog)

## Versions
<a name="shadow-manager-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2.3.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Type
<a name="shadow-manager-component-type"></a>

<a name="public-component-type-plugin-para1"></a>Ce composant est un composant de plugin (`aws.greengrass.plugin`). Le [noyau Greengrass](greengrass-nucleus-component.md) 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.

<a name="public-component-type-plugin-para2"></a>Ce composant utilise le même fichier journal que le noyau Greengrass. Pour de plus amples informations, veuillez consulter [AWS IoT Greengrass Journaux de surveillance](monitor-logs.md).

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="shadow-manager-component-os-support"></a>

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

## Exigences
<a name="shadow-manager-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ (Facultatif) Pour synchroniser les ombres avec le service AWS IoT Device Shadow, la AWS IoT politique du périphérique principal de Greengrass doit autoriser les actions de politique AWS IoT Core parallèle suivantes :
  + `iot:GetThingShadow`
  + `iot:UpdateThingShadow`
  + `iot:DeleteThingShadow`

  Pour plus d'informations sur ces AWS IoT Core politiques, voir les [actions AWS IoT Core politiques](https://docs.aws.amazon.com/iot/latest/developerguide/iot-policy-actions.html) dans le *Guide du AWS IoT développeur*.

  Pour plus d'informations sur la AWS IoT politique minimale, voir [AWS IoT Politique minimale pour les appareils AWS IoT Greengrass V2 principaux](device-auth.md#greengrass-core-minimal-iot-policy)
+ Le composant Shadow Manager est compatible pour s'exécuter dans un VPC.

## Dépendances
<a name="shadow-manager-component-dependencies"></a>

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](#shadow-manager-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.3.13 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,0 <2,17,0 | Flexible | 

------
#### [ 2.3.12 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,0 <2,17,0 | Flexible | 

------
#### [ 2.3.11 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,0 <2,16,0 | Flexible | 

------
#### [ 2.3.10 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,0 <2,15,0 | Flexible | 

------
#### [ 2.3.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,0 <2,14,0 | Flexible | 

------
#### [ 2.3.5 – 2.3.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,0 <2,13,0 | Flexible | 

------
#### [ 2.3.3 and 2.3.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,0 <2,12,0 | Flexible | 

------
#### [ 2.3.2 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,0 <2,11,0 | Flexible | 

------
#### [ 2.3.0 and 2.3.1 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,5,0 <2,1,0 | Flexible | 

------
#### [ 2.2.3 and 2.2.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <3,0,0 | Flexible | 

------
#### [ 2.2.2 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,9,0 | Flexible | 

------
#### [ 2.2.1 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,8,0 | Flexible | 

------
#### [ 2.1.1 and 2.2.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,7,0 | Flexible | 

------
#### [ 2.0.5 - 2.1.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,6,0 | Flexible | 

------
#### [ 2.0.3 and 2.0.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,5,0 | Flexible | 

------
#### [ 2.0.1 and 2.0.2 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,4,0 | Flexible | 

------
#### [ 2.0.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,2,0 <2,3,0 | Flexible | 

------

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="shadow-manager-component-configuration"></a>

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

------
#### [ 2.3.x ]

`strategy`  <a name="shadow-manager-component-configuration-strategy"></a>
(Facultatif) Stratégie utilisée par ce composant pour synchroniser les ombres entre AWS IoT Core et le périphérique principal.  
Cet objet contient les informations suivantes.    
`type`  
(Facultatif) Type de stratégie utilisé par ce composant pour synchroniser les ombres entre AWS IoT Core et le périphérique principal. Sélectionnez l’une des options suivantes :  
+ `realTime`— Synchronisez les ombres avec AWS IoT Core chaque fois qu'une mise à jour des ombres se produit.
+ `periodic`— Synchronisez les ombres avec AWS IoT Core un intervalle régulier que vous spécifiez avec le paramètre `delay` de configuration.
Valeur par défaut : `realTime`  
`delay`  
(Facultatif) Intervalle en secondes avec lequel ce composant synchronise les ombres AWS IoT Core, lorsque vous spécifiez la stratégie de `periodic` synchronisation.  
Ce paramètre est obligatoire si vous spécifiez la stratégie de `periodic` synchronisation.

`synchronize`  <a name="shadow-manager-component-configuration-synchronize"></a>
<a name="shadow-manager-component-configuration-strategy-description"></a>(Facultatif) Les paramètres de synchronisation qui déterminent la manière dont les ombres sont synchronisées avec. AWS Cloud  
Vous devez créer une mise à jour de configuration avec cette propriété pour synchroniser les ombres avec AWS Cloud.
Cet objet contient les informations suivantes.    
`coreThing`  <a name="shadow-manager-component-configuration-synchronize-core-thing"></a>
(Facultatif) Les ombres de l'appareil principal à synchroniser. Cet objet contient les informations suivantes.    
`classic`  
(Facultatif) Par défaut, le gestionnaire de shadow synchronise l'état local du shadow classique de votre appareil principal avec le AWS Cloud. Si vous ne souhaitez pas synchroniser le shadow classique de l'appareil, réglez-le sur`false`.  
Valeur par défaut : `true`  
`namedShadows`  
(Facultatif) La liste des ombres du périphérique principal nommées à synchroniser. Vous devez indiquer le nom exact des ombres.  
Le AWS IoT Greengrass service utilise le `AWSManagedGreengrassV2Deployment` nom shadow pour gérer les déploiements qui ciblent des appareils principaux individuels. Cette ombre nommée est réservée à l'usage du AWS IoT Greengrass service. Ne mettez pas à jour ou ne supprimez pas cette ombre nommée.  
`shadowDocumentsMap`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents-map"></a>
(Facultatif) Les ombres supplémentaires de l'appareil à synchroniser. L'utilisation de ce paramètre de configuration facilite la définition de documents fictifs. Nous vous recommandons d'utiliser ce paramètre à la place de l'`shadowDocuments`objet.  
Si vous spécifiez un `shadowDocumentsMap` objet, vous ne devez pas le spécifier. `shadowDocuments`
Chaque objet contient les informations suivantes :    
*`thingName`*  
La configuration d'ombre *thingName* pour cette configuration d'ombre.    
`classic`  
(Facultatif) Si vous ne souhaitez pas synchroniser le shadow classique de l'`thingName`appareil, réglez-le sur`false`.  
`namedShadows`  
La liste des ombres nommées que vous souhaitez synchroniser. Vous devez indiquer le nom exact des ombres.  
`shadowDocuments`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents"></a>
(Facultatif) La liste des ombres supplémentaires de l'appareil à synchroniser. Nous vous recommandons d'utiliser le `shadowDocumentsMap` paramètre à la place.  
Si vous spécifiez un `shadowDocuments` objet, vous ne devez pas le spécifier. `shadowDocumentsMap`
Chaque objet de cette liste contient les informations suivantes.     
`thingName`  
Nom de l'objet de l'appareil pour lequel les ombres doivent être synchronisées.   
`classic`  
(Facultatif) Si vous ne souhaitez pas synchroniser le shadow classique de l'`thingName`appareil, réglez-le sur`false`.  
Valeur par défaut : `true`  
`namedShadows`  
(Facultatif) La liste des ombres de périphériques nommées que vous souhaitez synchroniser. Vous devez indiquer le nom exact des ombres.  
`direction`  
(Facultatif) La direction dans laquelle synchroniser les ombres entre le service d'ombre local et le AWS Cloud. Vous pouvez configurer cette option pour réduire la bande passante et les connexions au AWS Cloud. Sélectionnez l’une des options suivantes :  
+ `betweenDeviceAndCloud`— Synchronise les ombres entre le service parallèle local et le AWS Cloud.
+ `deviceToCloud`— Envoyez des mises à jour instantanées depuis le service parallèle local vers le AWS Cloud, et ignorez les mises à jour instantanées depuis le AWS Cloud.
+ `cloudToDevice`— Recevez des mises à jour fictives depuis le AWS Cloud, et n'envoyez pas de mises à jour fictives depuis le service parallèle local vers le AWS Cloud.
Valeur par défaut : `BETWEEN_DEVICE_AND_CLOUD`

`rateLimits`  <a name="shadow-manager-component-configuration-rate-limits"></a>
(Facultatif) Les paramètres qui déterminent les limites de débit pour les demandes de service parallèle.  
Cet objet contient les informations suivantes.    
`maxOutboundSyncUpdatesPerSecond`  
(Facultatif) Nombre maximal de demandes de synchronisation par seconde transmises par l'appareil.   
Par défaut : 100 requêtes/seconde  
`maxTotalLocalRequestsRate`  
(Facultatif) Nombre maximal de demandes IPC locales par seconde envoyées au périphérique principal.   
Par défaut : 200 requêtes/seconde  
`maxLocalRequestsPerSecondPerThing`  
(Facultatif) Le nombre maximum de demandes IPC locales par seconde envoyées pour chaque objet IoT connecté.   
Par défaut : 20 requests/second pour chaque objet
Ces paramètres de limites de débit définissent le nombre maximal de demandes par seconde pour le service parallèle local. Le nombre maximum de demandes par seconde pour le service AWS IoT Device Shadow dépend de votre Région AWS. Pour plus d'informations, consultez les limites de l'[API AWS IoT Device Shadow Service](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) dans le *Référence générale d'Amazon Web Services*.

`shadowDocumentSizeLimitBytes`  <a name="shadow-manager-component-configuration-shadow-document-size-limit-bytes"></a>
(Facultatif) Taille maximale autorisée de chaque document d'état JSON pour les ombres locales.   
Si vous augmentez cette valeur, vous devez également augmenter la limite de ressources pour le document d'état JSON pour les ombres des nuages. Pour plus d'informations, consultez les limites de l'[API AWS IoT Device Shadow Service](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) dans le *Référence générale d'Amazon Web Services*.  
Par défaut : 8192 octets  
Maximum : 30720 octets

**Example Exemple : mise à jour de la fusion de configurations**  
L'exemple suivant montre un exemple de mise à jour de fusion de configuration avec tous les paramètres de configuration disponibles pour le composant Shadow Manager.  

```
{
   "strategy":{
      "type":"periodic",
      "delay":300
   },
   "synchronize":{
      "shadowDocumentsMap":{
         "MyDevice1":{
            "classic":false,
            "namedShadows":[
               "MyShadowA",
               "MyShadowB"
            ]
         },
         "MyDevice2":{
            "classic":true,
            "namedShadows":[]
         }
      },
      "direction":"betweenDeviceAndCloud"
   },
   "rateLimits":{
      "maxOutboundSyncUpdatesPerSecond":100,
      "maxTotalLocalRequestsRate":200,
      "maxLocalRequestsPerSecondPerThing":20
   },
   "shadowDocumentSizeLimitBytes":8192
}
```

------
#### [ 2.2.x ]

`strategy`  <a name="shadow-manager-component-configuration-strategy"></a>
(Facultatif) Stratégie utilisée par ce composant pour synchroniser les ombres entre AWS IoT Core et le périphérique principal.  
Cet objet contient les informations suivantes.    
`type`  
(Facultatif) Type de stratégie utilisé par ce composant pour synchroniser les ombres entre AWS IoT Core et le périphérique principal. Sélectionnez l’une des options suivantes :  
+ `realTime`— Synchronisez les ombres avec AWS IoT Core chaque fois qu'une mise à jour des ombres se produit.
+ `periodic`— Synchronisez les ombres avec AWS IoT Core un intervalle régulier que vous spécifiez avec le paramètre `delay` de configuration.
Valeur par défaut : `realTime`  
`delay`  
(Facultatif) Intervalle en secondes avec lequel ce composant synchronise les ombres AWS IoT Core, lorsque vous spécifiez la stratégie de `periodic` synchronisation.  
Ce paramètre est obligatoire si vous spécifiez la stratégie de `periodic` synchronisation.

`synchronize`  <a name="shadow-manager-component-configuration-synchronize"></a>
<a name="shadow-manager-component-configuration-strategy-description"></a>(Facultatif) Les paramètres de synchronisation qui déterminent la manière dont les ombres sont synchronisées avec. AWS Cloud  
Vous devez créer une mise à jour de configuration avec cette propriété pour synchroniser les ombres avec AWS Cloud.
Cet objet contient les informations suivantes.    
`coreThing`  <a name="shadow-manager-component-configuration-synchronize-core-thing"></a>
(Facultatif) Les ombres de l'appareil principal à synchroniser. Cet objet contient les informations suivantes.    
`classic`  
(Facultatif) Par défaut, le gestionnaire de shadow synchronise l'état local du shadow classique de votre appareil principal avec le AWS Cloud. Si vous ne souhaitez pas synchroniser le shadow classique de l'appareil, réglez-le sur`false`.  
Valeur par défaut : `true`  
`namedShadows`  
(Facultatif) La liste des ombres du périphérique principal nommées à synchroniser. Vous devez indiquer le nom exact des ombres.  
Le AWS IoT Greengrass service utilise le `AWSManagedGreengrassV2Deployment` nom shadow pour gérer les déploiements qui ciblent des appareils principaux individuels. Cette ombre nommée est réservée à l'usage du AWS IoT Greengrass service. Ne mettez pas à jour ou ne supprimez pas cette ombre nommée.  
`shadowDocumentsMap`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents-map"></a>
(Facultatif) Les ombres supplémentaires de l'appareil à synchroniser. L'utilisation de ce paramètre de configuration facilite la définition de documents fictifs. Nous vous recommandons d'utiliser ce paramètre à la place de l'`shadowDocuments`objet.  
Si vous spécifiez un `shadowDocumentsMap` objet, vous ne devez pas le spécifier. `shadowDocuments`
Chaque objet contient les informations suivantes :    
*`thingName`*  
La configuration d'ombre *thingName* pour cette configuration d'ombre.    
`classic`  
(Facultatif) Si vous ne souhaitez pas synchroniser le shadow classique de l'`thingName`appareil, réglez-le sur`false`.  
`namedShadows`  
La liste des ombres nommées que vous souhaitez synchroniser. Vous devez indiquer le nom exact des ombres.  
`shadowDocuments`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents"></a>
(Facultatif) La liste des ombres supplémentaires de l'appareil à synchroniser. Nous vous recommandons d'utiliser le `shadowDocumentsMap` paramètre à la place.  
Si vous spécifiez un `shadowDocuments` objet, vous ne devez pas le spécifier. `shadowDocumentsMap`
Chaque objet de cette liste contient les informations suivantes.     
`thingName`  
Nom de l'objet de l'appareil pour lequel les ombres doivent être synchronisées.   
`classic`  
(Facultatif) Si vous ne souhaitez pas synchroniser le shadow classique de l'`thingName`appareil, réglez-le sur`false`.  
Valeur par défaut : `true`  
`namedShadows`  
(Facultatif) La liste des ombres de périphériques nommées que vous souhaitez synchroniser. Vous devez indiquer le nom exact des ombres.  
`direction`  
(Facultatif) La direction dans laquelle synchroniser les ombres entre le service d'ombre local et le AWS Cloud. Vous pouvez configurer cette option pour réduire la bande passante et les connexions au AWS Cloud. Sélectionnez l’une des options suivantes :  
+ `betweenDeviceAndCloud`— Synchronise les ombres entre le service parallèle local et le AWS Cloud.
+ `deviceToCloud`— Envoyez des mises à jour instantanées depuis le service parallèle local vers le AWS Cloud, et ignorez les mises à jour instantanées depuis le AWS Cloud.
+ `cloudToDevice`— Recevez des mises à jour fictives depuis le AWS Cloud, et n'envoyez pas de mises à jour fictives depuis le service parallèle local vers le AWS Cloud.
Valeur par défaut : `BETWEEN_DEVICE_AND_CLOUD`

`rateLimits`  <a name="shadow-manager-component-configuration-rate-limits"></a>
(Facultatif) Les paramètres qui déterminent les limites de débit pour les demandes de service parallèle.  
Cet objet contient les informations suivantes.    
`maxOutboundSyncUpdatesPerSecond`  
(Facultatif) Nombre maximal de demandes de synchronisation par seconde transmises par l'appareil.   
Par défaut : 100 requêtes/seconde  
`maxTotalLocalRequestsRate`  
(Facultatif) Nombre maximal de demandes IPC locales par seconde envoyées au périphérique principal.   
Par défaut : 200 requêtes/seconde  
`maxLocalRequestsPerSecondPerThing`  
(Facultatif) Le nombre maximum de demandes IPC locales par seconde envoyées pour chaque objet IoT connecté.   
Par défaut : 20 requests/second pour chaque objet
Ces paramètres de limites de débit définissent le nombre maximal de demandes par seconde pour le service parallèle local. Le nombre maximum de demandes par seconde pour le service AWS IoT Device Shadow dépend de votre Région AWS. Pour plus d'informations, consultez les limites de l'[API AWS IoT Device Shadow Service](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) dans le *Référence générale d'Amazon Web Services*.

`shadowDocumentSizeLimitBytes`  <a name="shadow-manager-component-configuration-shadow-document-size-limit-bytes"></a>
(Facultatif) Taille maximale autorisée de chaque document d'état JSON pour les ombres locales.   
Si vous augmentez cette valeur, vous devez également augmenter la limite de ressources pour le document d'état JSON pour les ombres des nuages. Pour plus d'informations, consultez les limites de l'[API AWS IoT Device Shadow Service](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) dans le *Référence générale d'Amazon Web Services*.  
Par défaut : 8192 octets  
Maximum : 30720 octets

**Example Exemple : mise à jour de la fusion de configurations**  
L'exemple suivant montre un exemple de mise à jour de fusion de configuration avec tous les paramètres de configuration disponibles pour le composant Shadow Manager.  

```
{
   "strategy":{
      "type":"periodic",
      "delay":300
   },
   "synchronize":{
      "shadowDocumentsMap":{
         "MyDevice1":{
            "classic":false,
            "namedShadows":[
               "MyShadowA",
               "MyShadowB"
            ]
         },
         "MyDevice2":{
            "classic":true,
            "namedShadows":[]
         }
      },
      "direction":"betweenDeviceAndCloud"
   },
   "rateLimits":{
      "maxOutboundSyncUpdatesPerSecond":100,
      "maxTotalLocalRequestsRate":200,
      "maxLocalRequestsPerSecondPerThing":20
   },
   "shadowDocumentSizeLimitBytes":8192
}
```

------
#### [ 2.1.x ]

`strategy`  <a name="shadow-manager-component-configuration-strategy"></a>
(Facultatif) Stratégie utilisée par ce composant pour synchroniser les ombres entre AWS IoT Core et le périphérique principal.  
Cet objet contient les informations suivantes.    
`type`  
(Facultatif) Type de stratégie utilisé par ce composant pour synchroniser les ombres entre AWS IoT Core et le périphérique principal. Sélectionnez l’une des options suivantes :  
+ `realTime`— Synchronisez les ombres avec AWS IoT Core chaque fois qu'une mise à jour des ombres se produit.
+ `periodic`— Synchronisez les ombres avec AWS IoT Core un intervalle régulier que vous spécifiez avec le paramètre `delay` de configuration.
Valeur par défaut : `realTime`  
`delay`  
(Facultatif) Intervalle en secondes avec lequel ce composant synchronise les ombres AWS IoT Core, lorsque vous spécifiez la stratégie de `periodic` synchronisation.  
Ce paramètre est obligatoire si vous spécifiez la stratégie de `periodic` synchronisation.

`synchronize`  <a name="shadow-manager-component-configuration-synchronize"></a>
<a name="shadow-manager-component-configuration-strategy-description"></a>(Facultatif) Les paramètres de synchronisation qui déterminent la manière dont les ombres sont synchronisées avec. AWS Cloud  
Vous devez créer une mise à jour de configuration avec cette propriété pour synchroniser les ombres avec AWS Cloud.
Cet objet contient les informations suivantes.    
`coreThing`  <a name="shadow-manager-component-configuration-synchronize-core-thing"></a>
(Facultatif) Les ombres de l'appareil principal à synchroniser. Cet objet contient les informations suivantes.    
`classic`  
(Facultatif) Par défaut, le gestionnaire de shadow synchronise l'état local du shadow classique de votre appareil principal avec le AWS Cloud. Si vous ne souhaitez pas synchroniser le shadow classique de l'appareil, réglez-le sur`false`.  
Valeur par défaut : `true`  
`namedShadows`  
(Facultatif) La liste des ombres du périphérique principal nommées à synchroniser. Vous devez indiquer le nom exact des ombres.  
Le AWS IoT Greengrass service utilise le `AWSManagedGreengrassV2Deployment` nom shadow pour gérer les déploiements qui ciblent des appareils principaux individuels. Cette ombre nommée est réservée à l'usage du AWS IoT Greengrass service. Ne mettez pas à jour ou ne supprimez pas cette ombre nommée.  
`shadowDocumentsMap`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents-map"></a>
(Facultatif) Les ombres supplémentaires de l'appareil à synchroniser. L'utilisation de ce paramètre de configuration facilite la définition de documents fictifs. Nous vous recommandons d'utiliser ce paramètre à la place de l'`shadowDocuments`objet.  
Si vous spécifiez un `shadowDocumentsMap` objet, vous ne devez pas le spécifier. `shadowDocuments`
Chaque objet contient les informations suivantes :    
*`thingName`*  
La configuration d'ombre *thingName* pour cette configuration d'ombre.    
`classic`  
(Facultatif) Si vous ne souhaitez pas synchroniser le shadow classique de l'`thingName`appareil, réglez-le sur`false`.  
`namedShadows`  
La liste des ombres nommées que vous souhaitez synchroniser. Vous devez indiquer le nom exact des ombres.  
`shadowDocuments`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents"></a>
(Facultatif) La liste des ombres supplémentaires de l'appareil à synchroniser. Nous vous recommandons d'utiliser le `shadowDocumentsMap` paramètre à la place.  
Si vous spécifiez un `shadowDocuments` objet, vous ne devez pas le spécifier. `shadowDocumentsMap`
Chaque objet de cette liste contient les informations suivantes.     
`thingName`  
Nom de l'objet de l'appareil pour lequel les ombres doivent être synchronisées.   
`classic`  
(Facultatif) Si vous ne souhaitez pas synchroniser le shadow classique de l'`thingName`appareil, réglez-le sur`false`.  
Valeur par défaut : `true`  
`namedShadows`  
(Facultatif) La liste des ombres de périphériques nommées que vous souhaitez synchroniser. Vous devez indiquer le nom exact des ombres.

`rateLimits`  <a name="shadow-manager-component-configuration-rate-limits"></a>
(Facultatif) Les paramètres qui déterminent les limites de débit pour les demandes de service parallèle.  
Cet objet contient les informations suivantes.    
`maxOutboundSyncUpdatesPerSecond`  
(Facultatif) Nombre maximal de demandes de synchronisation par seconde transmises par l'appareil.   
Par défaut : 100 requêtes/seconde  
`maxTotalLocalRequestsRate`  
(Facultatif) Nombre maximal de demandes IPC locales par seconde envoyées au périphérique principal.   
Par défaut : 200 requêtes/seconde  
`maxLocalRequestsPerSecondPerThing`  
(Facultatif) Le nombre maximum de demandes IPC locales par seconde envoyées pour chaque objet IoT connecté.   
Par défaut : 20 requests/second pour chaque objet
Ces paramètres de limites de débit définissent le nombre maximal de demandes par seconde pour le service parallèle local. Le nombre maximum de demandes par seconde pour le service AWS IoT Device Shadow dépend de votre Région AWS. Pour plus d'informations, consultez les limites de l'[API AWS IoT Device Shadow Service](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) dans le *Référence générale d'Amazon Web Services*.

`shadowDocumentSizeLimitBytes`  <a name="shadow-manager-component-configuration-shadow-document-size-limit-bytes"></a>
(Facultatif) Taille maximale autorisée de chaque document d'état JSON pour les ombres locales.   
Si vous augmentez cette valeur, vous devez également augmenter la limite de ressources pour le document d'état JSON pour les ombres des nuages. Pour plus d'informations, consultez les limites de l'[API AWS IoT Device Shadow Service](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) dans le *Référence générale d'Amazon Web Services*.  
Par défaut : 8192 octets  
Maximum : 30720 octets

**Example Exemple : mise à jour de la fusion de configurations**  
L'exemple suivant montre un exemple de mise à jour de fusion de configuration avec tous les paramètres de configuration disponibles pour le composant Shadow Manager.  

```
{
   "strategy":{
      "type":"periodic",
      "delay":300
   },
   "synchronize":{
      "shadowDocumentsMap":{
         "MyDevice1":{
            "classic":false,
            "namedShadows":[
               "MyShadowA",
               "MyShadowB"
            ]
         },
         "MyDevice2":{
            "classic":true,
            "namedShadows":[]
         }
      },
      "direction":"betweenDeviceAndCloud"
   },
   "rateLimits":{
      "maxOutboundSyncUpdatesPerSecond":100,
      "maxTotalLocalRequestsRate":200,
      "maxLocalRequestsPerSecondPerThing":20
   },
   "shadowDocumentSizeLimitBytes":8192
}
```

------
#### [ 2.0.x ]

`synchronize`  <a name="shadow-manager-component-configuration-synchronize"></a>
<a name="shadow-manager-component-configuration-strategy-description"></a>(Facultatif) Les paramètres de synchronisation qui déterminent la manière dont les ombres sont synchronisées avec. AWS Cloud  
Vous devez créer une mise à jour de configuration avec cette propriété pour synchroniser les ombres avec AWS Cloud.
Cet objet contient les informations suivantes.    
`coreThing`  <a name="shadow-manager-component-configuration-synchronize-core-thing"></a>
(Facultatif) Les ombres de l'appareil principal à synchroniser. Cet objet contient les informations suivantes.    
`classic`  
(Facultatif) Par défaut, le gestionnaire de shadow synchronise l'état local du shadow classique de votre appareil principal avec le AWS Cloud. Si vous ne souhaitez pas synchroniser le shadow classique de l'appareil, réglez-le sur`false`.  
Valeur par défaut : `true`  
`namedShadows`  
(Facultatif) La liste des ombres du périphérique principal nommées à synchroniser. Vous devez indiquer le nom exact des ombres.  
Le AWS IoT Greengrass service utilise le `AWSManagedGreengrassV2Deployment` nom shadow pour gérer les déploiements qui ciblent des appareils principaux individuels. Cette ombre nommée est réservée à l'usage du AWS IoT Greengrass service. Ne mettez pas à jour ou ne supprimez pas cette ombre nommée.  
`shadowDocumentsMap`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents-map"></a>
(Facultatif) Les ombres supplémentaires de l'appareil à synchroniser. L'utilisation de ce paramètre de configuration facilite la définition de documents fictifs. Nous vous recommandons d'utiliser ce paramètre à la place de l'`shadowDocuments`objet.  
Si vous spécifiez un `shadowDocumentsMap` objet, vous ne devez pas le spécifier. `shadowDocuments`
Chaque objet contient les informations suivantes :    
*`thingName`*  
La configuration d'ombre *thingName* pour cette configuration d'ombre.    
`classic`  
(Facultatif) Si vous ne souhaitez pas synchroniser le shadow classique de l'`thingName`appareil, réglez-le sur`false`.  
`namedShadows`  
La liste des ombres nommées que vous souhaitez synchroniser. Vous devez indiquer le nom exact des ombres.  
`shadowDocuments`  <a name="shadow-manager-component-configuration-synchronize-shadow-documents"></a>
(Facultatif) La liste des ombres supplémentaires de l'appareil à synchroniser. Nous vous recommandons d'utiliser le `shadowDocumentsMap` paramètre à la place.  
Si vous spécifiez un `shadowDocuments` objet, vous ne devez pas le spécifier. `shadowDocumentsMap`
Chaque objet de cette liste contient les informations suivantes.     
`thingName`  
Nom de l'objet de l'appareil pour lequel les ombres doivent être synchronisées.   
`classic`  
(Facultatif) Si vous ne souhaitez pas synchroniser le shadow classique de l'`thingName`appareil, réglez-le sur`false`.  
Valeur par défaut : `true`  
`namedShadows`  
(Facultatif) La liste des ombres de périphériques nommées que vous souhaitez synchroniser. Vous devez indiquer le nom exact des ombres.

`rateLimits`  <a name="shadow-manager-component-configuration-rate-limits"></a>
(Facultatif) Les paramètres qui déterminent les limites de débit pour les demandes de service parallèle.  
Cet objet contient les informations suivantes.    
`maxOutboundSyncUpdatesPerSecond`  
(Facultatif) Nombre maximal de demandes de synchronisation par seconde transmises par l'appareil.   
Par défaut : 100 requêtes/seconde  
`maxTotalLocalRequestsRate`  
(Facultatif) Nombre maximal de demandes IPC locales par seconde envoyées au périphérique principal.   
Par défaut : 200 requêtes/seconde  
`maxLocalRequestsPerSecondPerThing`  
(Facultatif) Le nombre maximum de demandes IPC locales par seconde envoyées pour chaque objet IoT connecté.   
Par défaut : 20 requests/second pour chaque objet
Ces paramètres de limites de débit définissent le nombre maximal de demandes par seconde pour le service parallèle local. Le nombre maximum de demandes par seconde pour le service AWS IoT Device Shadow dépend de votre Région AWS. Pour plus d'informations, consultez les limites de l'[API AWS IoT Device Shadow Service](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) dans le *Référence générale d'Amazon Web Services*.

`shadowDocumentSizeLimitBytes`  <a name="shadow-manager-component-configuration-shadow-document-size-limit-bytes"></a>
(Facultatif) Taille maximale autorisée de chaque document d'état JSON pour les ombres locales.   
Si vous augmentez cette valeur, vous devez également augmenter la limite de ressources pour le document d'état JSON pour les ombres des nuages. Pour plus d'informations, consultez les limites de l'[API AWS IoT Device Shadow Service](https://docs.aws.amazon.com/general/latest/gr/iot-core.html#device-shadow-limits) dans le *Référence générale d'Amazon Web Services*.  
Par défaut : 8192 octets  
Maximum : 30720 octets

**Example Exemple : mise à jour de la fusion de configurations**  
L'exemple suivant montre un exemple de mise à jour de fusion de configuration avec tous les paramètres de configuration disponibles pour le composant Shadow Manager.  

```
{
  "synchronize": {
    "coreThing": {
      "classic": true,
      "namedShadows": [
        "MyCoreShadowA",
        "MyCoreShadowB"
      ]
    },
    "shadowDocuments": [
      {
        "thingName": "MyDevice1",
        "classic": false,
        "namedShadows": [
          "MyShadowA",
          "MyShadowB"
        ]
      },
      {
        "thingName": "MyDevice2",
        "classic": true,
        "namedShadows": []
      }
    ]
  },
  "rateLimits": {       
    "maxOutboundSyncUpdatesPerSecond": 100,
    "maxTotalLocalRequestsRate": 200,
    "maxLocalRequestsPerSecondPerThing": 20
  },
  "shadowDocumentSizeLimitBytes": 8192
}
```

------

## Fichier journal local
<a name="shadow-manager-component-log-file"></a>

Ce composant utilise le même fichier journal que le composant [Greengrass nucleus](greengrass-nucleus-component.md).

------
#### [ 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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par 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
<a name="shadow-manager-component-changelog"></a>

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


|  Version  |  Modifications  | 
| --- | --- | 
|  2.3,13  |  Met à jour la version du composant pour la version 2.17.0 de Greengrass Nucleus.  | 
|  2.3,13  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.3.12  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.3.11  | Version mise à jour pour la version 2.15.0 de Greengrass Nucleus. | 
|  2.3.10  | Version mise à jour pour la version 2.14.0 de Greengrass Nucleus. | 
|  2.3.9  | Version mise à jour pour la version 2.13.0 de Greengrass Nucleus. | 
|  2.3.8  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.3.7  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.3.6  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.3.5  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  2.3.4  |  <a name="changelog-shadow-manager-2.3.4"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/shadow-manager-component.html)  | 
|  2.3.3  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  2.3.2  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.3.1  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.3.0  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.2.4  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/shadow-manager-component.html) | 
|  2.2.3  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  2.2.2  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  2.2.1  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  2.2.0  |  <a name="changelog-shadow-manager-2.2.0"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/shadow-manager-component.html)  | 
|  2.1.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/shadow-manager-component.html)  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/shadow-manager-component.html)  | 
|  2.0.6  |  Cette version contient des corrections de bogues et des améliorations.  | 
|  2.0.5  |  Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.  | 
|  2.0.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/shadow-manager-component.html)  | 
|  2.0.3  |  Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.  | 
|  2.0.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/shadow-manager-component.html)  | 
|  2.0.1  |  Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.  | 
|  2.0.0  |  Première version.  | 

# Amazon SNS
<a name="sns-component"></a>

Le composant Amazon SNS (`aws.greengrass.SNS`) publie des messages sur une rubrique Amazon Simple Notification Service (Amazon SNS). Vous pouvez utiliser ce composant pour envoyer des événements depuis les appareils principaux de Greengrass vers des serveurs Web, des adresses e-mail et d'autres abonnés aux messages. Pour plus d'informations, consultez [Qu'est-ce qu'Amazon SNS ?](https://docs.aws.amazon.com/sns/latest/dg/welcome.html) dans le *guide du développeur Amazon Simple Notification Service*.

Pour publier sur une rubrique Amazon SNS avec ce composant, publiez un message dans le sujet auquel ce composant est abonné. Par défaut, ce composant s'abonne à la rubrique de [publication/d'abonnement `sns/message` locale.](ipc-publish-subscribe.md) Vous pouvez spécifier d'autres sujets, y compris les sujets AWS IoT Core MQTT, lorsque vous déployez ce composant.

Dans votre composant personnalisé, vous souhaiterez peut-être implémenter une logique de filtrage ou de formatage pour traiter les messages provenant d'autres sources avant de les publier dans ce composant. Cela vous permet de centraliser votre logique de traitement des messages sur un seul composant.

**Note**  
Ce composant fournit des fonctionnalités similaires à celles du connecteur Amazon SNS dans AWS IoT Greengrass la version 1. Pour plus d'informations, consultez le [connecteur Amazon SNS](https://docs.aws.amazon.com/greengrass/latest/developerguide/sns-connector.html) dans le guide du *développeur AWS IoT Greengrass V1*.

**Topics**
+ [Versions](#sns-component-versions)
+ [Type](#sns-component-type)
+ [Système d’exploitation](#sns-component-os-support)
+ [Exigences](#sns-component-requirements)
+ [Dépendances](#sns-component-dependencies)
+ [Configuration](#sns-component-configuration)
+ [Données d’entrée](#sns-component-input-data)
+ [Données de sortie](#sns-component-output-data)
+ [Fichier journal local](#sns-component-log-file)
+ [Licences](#sns-component-licenses)
+ [Journal des modifications](#sns-component-changelog)

## Versions
<a name="sns-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2.1.x
+ 2.0.x

## Type
<a name="sns-component-type"></a>

<a name="public-component-type-lambda"></a>Ce <a name="public-component-type-lambda-phrase"></a>composant est un composant Lambda () `aws.greengrass.lambda`. [Le [noyau Greengrass](greengrass-nucleus-component.md) exécute la fonction Lambda de ce composant à l'aide du composant Lambda Launcher.](lambda-launcher-component.md)

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="sns-component-os-support"></a>

Ce composant ne peut être installé que sur les appareils principaux de Linux.

## Exigences
<a name="sns-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ <a name="core-device-lambda-function-requirements"></a>Votre appareil principal doit répondre aux exigences pour exécuter les fonctions Lambda. Si vous souhaitez que le périphérique principal exécute des fonctions Lambda conteneurisées, le périphérique doit répondre aux exigences requises. Pour de plus amples informations, veuillez consulter [Exigences relatives à la fonction Lambda](setting-up.md#greengrass-v2-lambda-requirements).
+ <a name="public-component-python3-requirement"></a>[Python](https://www.python.org/) version 3.7 installé sur le périphérique principal et ajouté à la variable d'environnement PATH.
+ Une rubrique Amazon SNS Pour plus d'informations, consultez [Création d'une rubrique Amazon SNS](https://docs.aws.amazon.com/sns/latest/dg/sns-create-topic.html) dans le *Guide du développeur Amazon Simple Notification Service*.
+ Le [rôle d'appareil Greengrass](device-service-role.md) doit autoriser l'`sns:Publish`action, comme illustré dans l'exemple de politique IAM suivant.

------
#### [ JSON ]

****  

  ```
  {
    "Version":"2012-10-17",		 	 	 
    "Statement": [
      {
        "Action": [
          "sns:Publish"
        ],
        "Effect": "Allow",
        "Resource": [
          "arn:aws:sns:us-east-1:123456789012:topic-name"
        ]
      }
    ]
  }
  ```

------

  Vous pouvez remplacer dynamiquement le sujet par défaut dans la charge utile du message d'entrée pour ce composant. Si votre application utilise cette fonctionnalité, la politique IAM doit inclure tous les sujets cibles en tant que ressources. Vous pouvez octroyer un accès précis ou conditionnel aux ressources (par exemple, en utilisant un schéma d'attribution de nom avec caractère générique `*`).
+ <a name="connector-component-legacy-subscription-router-dependency"></a>Pour recevoir les données de sortie de ce composant, vous devez fusionner la mise à jour de configuration suivante pour l'[ancien composant routeur d'abonnement](legacy-subscription-router-component.md) (`aws.greengrass.LegacySubscriptionRouter`) lorsque vous déployez ce composant. Cette configuration indique le sujet dans lequel ce composant publie les réponses.

------
#### [ Legacy subscription router v2.1.x ]

  ```
  {
    "subscriptions": {
      "aws-greengrass-sns": {
        "id": "aws-greengrass-sns",
        "source": "component:aws.greengrass.SNS",
        "subject": "sns/message/status",
        "target": "cloud"
      }
    }
  }
  ```

------
#### [ Legacy subscription router v2.0.x ]

  ```
  {
    "subscriptions": {
      "aws-greengrass-sns": {
        "id": "aws-greengrass-sns",
        "source": "arn:aws:lambda:region:aws:function:aws-greengrass-sns:version",
        "subject": "sns/message/status",
        "target": "cloud"
      }
    }
  }
  ```<a name="connector-component-legacy-subscription-router-dependency-replace"></a>
  + *region*Remplacez-le par Région AWS celui que vous utilisez.
  + *version*Remplacez-le par la version de la fonction Lambda exécutée par ce composant. Pour trouver la version de la fonction Lambda, vous devez consulter la recette de la version de ce composant que vous souhaitez déployer. Ouvrez la page de détails de ce composant dans la [AWS IoT Greengrass console](https://console.aws.amazon.com//greengrass) et recherchez la paire clé-valeur de la **fonction Lambda**. Cette paire clé-valeur contient le nom et la version de la fonction Lambda.

**Important**  <a name="connector-component-legacy-subscription-router-dependency-note"></a>
Vous devez mettre à jour la version de la fonction Lambda sur l'ancien routeur d'abonnement chaque fois que vous déployez ce composant. Cela garantit que vous utilisez la bonne version de la fonction Lambda pour la version du composant que vous déployez.

------

  <a name="connector-component-create-deployments"></a>Pour de plus amples informations, veuillez consulter [Créer des déploiements](create-deployments.md).
+ Le composant Amazon SNS est compatible pour s'exécuter dans un VPC. Pour déployer ce composant dans un VPC, les éléments suivants sont requis.
  + Le composant Amazon SNS doit disposer d'une connectivité `sns.region.amazonaws.com` dont le point de terminaison VPC est de. `com.amazonaws.us-east-1.sns`

### Points de terminaison et ports
<a name="sns-component-endpoints"></a>

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](allow-device-traffic.md).


| Endpoint |  Port | Obligatoire | Description | 
| --- | --- | --- | --- | 
|  `sns.region.amazonaws.com`  | 443 | Oui |  Publiez des messages sur Amazon SNS.  | 

## Dépendances
<a name="sns-component-dependencies"></a>

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](#sns-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.1.10 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,16,0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.1.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,15,0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.1.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,14.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.1.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,13,0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.1.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,12.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.1.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,11.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.1.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,0 <2,1,0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.1.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,9.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) | >=2,0.0 <2,8.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) | >=2,0.0 <2,7.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.8 - 2.1.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,6.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,5.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.6 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,4.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.5 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,3.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0.0 <2,2.0  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | ^2,0.0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | ^2,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | ^2,0.0  | Stricte | 

------
#### [ 2.0.3 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,0,3 <2,10  | Stricte | 
| [Lanceur Lambda](lambda-launcher-component.md) | >=10,0  | Stricte | 
| [Environnements d'exécution (runtimes) Lambda](lambda-runtimes-component.md) | >=10,0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) | >=10,0  | Stricte | 

------

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="sns-component-configuration"></a>

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

**Note**  <a name="connector-component-lambda-parameters"></a>
La configuration par défaut de ce composant inclut les paramètres de la fonction Lambda. Nous vous recommandons de modifier uniquement les paramètres suivants pour configurer ce composant sur vos appareils.

`lambdaParams`  
Objet contenant les paramètres de la fonction Lambda de ce composant. Cet objet contient les informations suivantes :    
`EnvironmentVariables`  
Objet contenant les paramètres de la fonction Lambda. Cet objet contient les informations suivantes :    
`DEFAULT_SNS_ARN`  
L'ARN de la rubrique Amazon SNS par défaut dans laquelle ce composant publie des messages. Vous pouvez remplacer le sujet de destination par la `sns_topic_arn` propriété dans la charge utile du message d'entrée.

`containerMode`  <a name="connector-component-container-mode-parameter"></a>
(Facultatif) Mode de conteneurisation de ce composant. Sélectionnez l’une des options suivantes :  <a name="lambda-function-component-container-mode-parameter"></a>
+ `NoContainer`— Le composant ne s'exécute pas dans un environnement d'exécution isolé.
+ `GreengrassContainer`— Le composant s'exécute dans un environnement d'exécution isolé à l'intérieur du AWS IoT Greengrass conteneur.
Valeur par défaut : `GreengrassContainer`

`containerParams`  
<a name="connector-component-container-params-description"></a>(Facultatif) Objet contenant les paramètres du conteneur pour ce composant. Le composant utilise ces paramètres si vous le spécifiez `GreengrassContainer` pour`containerMode`.  
Cet objet contient les informations suivantes :    
`memorySize`  
<a name="connector-component-container-params-memory-size-description"></a>(Facultatif) Quantité de mémoire (en kilo-octets) à allouer au composant.  
La valeur par défaut est de 512 Mo (525 312 Ko).

`pubsubTopics`  <a name="connector-component-pubsub-topics-parameter"></a>
(Facultatif) Objet contenant les rubriques auxquelles le composant s'abonne pour recevoir des messages. Vous pouvez spécifier chaque sujet et indiquer si le composant est abonné à des sujets MQTT provenant de sujets locaux AWS IoT Core ou locaux publish/subscribe .  
Cet objet contient les informations suivantes :    
`0`— Il s'agit d'un index de tableau sous forme de chaîne.  
Un objet qui contient les informations suivantes :    
`type`  
(Facultatif) Type de publish/subscribe messagerie utilisé par ce composant pour s'abonner aux messages. Sélectionnez l’une des options suivantes :  
+ `PUB_SUB` – Abonnez-vous aux messages locaux de publication/abonnement. Si vous choisissez cette option, le sujet ne peut pas contenir de caractères génériques MQTT. Pour plus d'informations sur la façon d'envoyer des messages à partir d'un composant personnalisé lorsque vous spécifiez cette option, consultez[Publier/souscrire des messages locaux](ipc-publish-subscribe.md).
+ `IOT_CORE`— Abonnez-vous aux messages AWS IoT Core MQTT. Si vous choisissez cette option, le sujet peut contenir des caractères génériques MQTT. Pour plus d'informations sur la façon d'envoyer des messages à partir de composants personnalisés lorsque vous spécifiez cette option, consultez[Publier/souscrire AWS IoT Core des messages MQTT](ipc-iot-core-mqtt.md).
Valeur par défaut : `PUB_SUB`  
`topic`  
(Facultatif) Rubrique à laquelle le composant s'abonne pour recevoir des messages. Si vous spécifiez `IotCore` pour`type`, vous pouvez utiliser des caractères génériques MQTT (`+`et`#`) dans cette rubrique.

**Example Exemple : mise à jour de fusion de configuration (mode conteneur)**  

```
{
  "lambdaExecutionParameters": {
    "EnvironmentVariables": {
      "DEFAULT_SNS_ARN": "arn:aws:sns:us-west-2:123456789012:mytopic"
    }
  },
  "containerMode": "GreengrassContainer"
}
```

**Example Exemple : mise à jour de fusion de configuration (pas de mode conteneur)**  

```
{
  "lambdaExecutionParameters": {
    "EnvironmentVariables": {
      "DEFAULT_SNS_ARN": "arn:aws:sns:us-west-2:123456789012:mytopic"
    }
  },
  "containerMode": "NoContainer"
}
```

## Données d’entrée
<a name="sns-component-input-data"></a>

Ce composant accepte les messages relatifs au sujet suivant et publie le message tel quel sur le sujet Amazon SNS cible. <a name="connector-component-local-publish"></a>Par défaut, ce composant s'abonne aux publish/subscribe messages locaux. Pour plus d'informations sur la façon de publier des messages vers ce composant à partir de vos composants personnalisés, consultez[Publier/souscrire des messages locaux](ipc-publish-subscribe.md). 

**Rubrique par défaut (publication/abonnement local) :** `sns/message`

<a name="connector-component-input-properties"></a>Le message accepte les propriétés suivantes. Les messages d'entrée doivent être au format JSON.

`request`  
Informations sur le message à envoyer à la rubrique Amazon SNS.  
Type : `object` qui contient les informations suivantes :    
`message`  
Le contenu du message sous forme de chaîne.  
Pour envoyer un objet JSON, sérialisez-le sous forme de chaîne et spécifiez `json` la `message_structure` propriété.  
Type : `string`  
`subject`  
(Facultatif) Objet du message.  
Type : `string`  
Le sujet peut être du texte ASCII comportant jusqu'à 100 caractères. Il doit commencer par une lettre, un chiffre ou un signe de ponctuation. Il ne peut pas inclure de sauts de ligne ni de caractères de contrôle.  
`sns_topic_arn`  
(Facultatif) L'ARN de la rubrique Amazon SNS dans laquelle ce composant publie le message. Spécifiez cette propriété pour remplacer la rubrique Amazon SNS par défaut.  
Type : `string`  
`message_structure`  
(Facultatif) Structure du message. Spécifiez `json` l'envoi d'un message JSON que vous sérialiserez sous forme de chaîne dans la `content` propriété.  
Type : `string`  
Valeurs valides : `json`

`id`  <a name="connector-component-input-property-id"></a>
ID arbitraire de la demande. Utilisez cette propriété pour associer une demande d'entrée à une réponse de sortie. Lorsque vous spécifiez cette propriété, le composant définit la `id` propriété de l'objet de réponse sur cette valeur.  
Type : `string`

**Note**  
La taille du message peut être maximale de 256 Ko.

**Example Exemple d'entrée : message de type chaîne**  

```
{
  "request": {
    "subject": "Message subject",
    "message": "Message data",
    "sns_topic_arn": "arn:aws:sns:region:account-id:topic2-name"
  },
  "id": "request123"
}
```

**Example Exemple d'entrée : message JSON**  

```
{
  "request": {
    "subject": "Message subject",
    "message": "{ \"default\": \"Message data\" }",
    "message_structure": "json"
  },
  "id": "request123"
}
```

## Données de sortie
<a name="sns-component-output-data"></a>

 <a name="connector-component-output-data"></a>Ce composant publie par défaut les réponses sous forme de données de sortie sur le sujet MQTT suivant. Vous devez spécifier cette rubrique `subject` dans la configuration de l'[ancien composant routeur d'abonnement](legacy-subscription-router-component.md). Pour plus d'informations sur la façon de s'abonner à des messages sur ce sujet dans vos composants personnalisés, consultez[Publier/souscrire AWS IoT Core des messages MQTT](ipc-iot-core-mqtt.md). 

**Rubrique par défaut (AWS IoT Core MQTT) :** `sns/message/status`

**Example Exemple de sortie : réussite**  

```
{
  "response": {
    "sns_message_id": "f80a81bc-f44c-56f2-a0f0-d5af6a727c8a",
    "status": "success"
  },
  "id": "request123"
}
```

**Example Exemple de sortie : échec**  

```
{
  "response" : {
    "error": "InvalidInputException",
    "error_message": "SNS Topic Arn is invalid",
    "status": "fail"
  },
  "id": "request123"
}
```

## Fichier journal local
<a name="sns-component-log-file"></a>

Ce composant utilise le fichier journal suivant.

```
/greengrass/v2/logs/aws.greengrass.SNS.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. Remplacez `/greengrass/v2` par le chemin d'accès au dossier AWS IoT Greengrass racine.

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

## Licences
<a name="sns-component-licenses"></a>

Ce composant inclut les logiciels/licences tiers suivants :<a name="boto-3-licenses"></a>
+ [AWS SDK pour Python (Boto3)](https://pypi.org/project/boto3/)/Licence Apache 2.0
+ [botocore](https://pypi.org/project/botocore/)/Licence Apache 2.0
+ [dateutil](https://pypi.org/project/python-dateutil/1.4/)/Licence PSF
+ [docutils](https://pypi.org/project/docutils/)/Licence BSD, licence GPL (General Public License) GNU, licence Python Software Foundation, domaine public
+ [jmespath](https://pypi.org/project/jmespath/)/Licence MIT
+ [s3transfer](https://pypi.org/project/s3transfer/)/Licence Apache 2.0
+ [urllib3](https://pypi.org/project/urllib3/)/Licence MIT

<a name="component-core-software-license"></a>Ce composant est publié dans le cadre du contrat de [licence logicielle Greengrass Core](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf).

## Journal des modifications
<a name="sns-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.1.10  | Version mise à jour pour la version 2.15.0 de Greengrass Nucleus. | 
|  2.1.9  | Version mise à jour pour la version 2.14.0 de Greengrass Nucleus. | 
|  2.1.8  | Version mise à jour pour la version 2.13.0 de Greengrass Nucleus. | 
|  2.1.7  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  2.1.6  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  2.1.5  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. | 
|  2.1.4  | Version mise à jour pour la version 2.9.0 de Greengrass Nucleus. | 
|  2.1.3  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  2.1.2  |  Version mise à jour pour la version 2.7.0 de Greengrass Nucleus.  | 
|  2.1.1  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/sns-component.html)  | 
|  2.0.8  |  Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.  | 
|  2.0.7  |  Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.  | 
|  2.0.6  |  Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.  | 
|  2.0.5  |  Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.  | 
|  2.0.4  |  Version mise à jour pour la version 2.1.0 de Greengrass Nucleus.  | 
|  2.0.3  |  Première version.  | 

# Gestionnaire de flux
<a name="stream-manager-component"></a>

Le composant du gestionnaire de flux (`aws.greengrass.StreamManager`) vous permet de traiter les flux de données à transférer vers les appareils principaux AWS Cloud de Greengrass.

Pour plus d'informations sur la configuration et l'utilisation du gestionnaire de flux dans les composants personnalisés, consultez[Gérez les flux de données sur les appareils principaux de Greengrass](manage-data-streams.md).

**Topics**
+ [Versions](#stream-manager-component-versions)
+ [Type](#stream-manager-component-type)
+ [Système d’exploitation](#stream-manager-component-os-support)
+ [Exigences](#stream-manager-component-requirements)
+ [Dépendances](#stream-manager-component-dependencies)
+ [Configuration](#stream-manager-component-configuration)
+ [Fichier journal local](#stream-manager-component-log-file)
+ [Journal des modifications](#stream-manager-component-changelog)

## Versions
<a name="stream-manager-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2.3.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

**Note**  <a name="stream-manager-upgrade-note"></a>
Si vous utilisez le gestionnaire de flux pour exporter des données vers le cloud, vous ne pouvez pas mettre à niveau la version 2.0.7 du composant du gestionnaire de flux vers une version comprise entre v2.0.8 et v2.0.11. Si vous déployez le gestionnaire de flux pour la première fois, nous vous recommandons vivement de déployer la dernière version du composant du gestionnaire de flux.

## Type
<a name="stream-manager-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="stream-manager-component-os-support"></a>

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

## Exigences
<a name="stream-manager-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ Le [rôle d'échange de jetons](device-service-role.md) doit autoriser l'accès aux AWS Cloud destinations que vous utilisez avec le gestionnaire de flux. Pour en savoir plus, consultez :<a name="export-destinations-links"></a>
  + [AWS IoT Analytics chaînes](stream-export-configurations.md#export-to-iot-analytics)
  + [Flux de données Amazon Kinesis](stream-export-configurations.md#export-to-kinesis)
  + [AWS IoT SiteWise propriétés des actifs](stream-export-configurations.md#export-to-iot-sitewise)
  + [Objets Amazon S3](stream-export-configurations.md#export-to-s3)
+ Le composant du gestionnaire de flux peut être exécuté dans un VPC. Pour déployer ce composant dans un VPC, les éléments suivants sont requis.
  + Le composant du gestionnaire de flux doit être connecté au AWS service sur lequel vous publiez des données.
    + Amazon S3 : `com.amazonaws.region.s3`
    + Amazon Kinesis Data Streams : `com.amazonaws.region.kinesis-streams`
    + AWS IoT SiteWise: `com.amazonaws.region.iotsitewise.data`
  + Si vous publiez des données sur Amazon S3 dans la `us-east-1` région, ce composant essaiera d'utiliser le point de terminaison global S3 par défaut ; toutefois, ce point de terminaison n'est pas disponible via le point de terminaison de l'interface Amazon S3 VPC. Pour plus d'informations, consultez [Restrictions et limites de AWS PrivateLink pour Amazon S3](https://docs.aws.amazon.com/AmazonS3/latest/userguide/privatelink-interface-endpoints.html#privatelink-limitations). Pour résoudre ce problème, vous pouvez choisir l'une des options suivantes.
    + Configurez le composant du gestionnaire de flux pour utiliser le point de terminaison S3 régional de la `us-east-1` région, en le configurant `-Daws.s3UseUsEast1RegionalEndpoint=regional` dans`JVM_ARGS`.
    + Créez un point de terminaison VPC Amazon S3 Gateway au lieu d'un point de terminaison VPC d'interface Amazon S3. Les points de terminaison de la passerelle S3 prennent en charge l'accès au point de terminaison global S3. Pour plus d'informations, consultez la section [Créer un point de terminaison de passerelle](https://docs.aws.amazon.com/vpc/latest/privatelink/vpc-endpoints-s3.html#create-gateway-endpoint-s3).

### Points de terminaison et ports
<a name="stream-manager-component-endpoints"></a>

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](allow-device-traffic.md).


| Endpoint |  Port | Obligatoire | Description | 
| --- | --- | --- | --- | 
|  `iotanalytics.region.amazonaws.com`  | 443 | Non |  Obligatoire si vous publiez des données sur AWS IoT Analytics.  | 
|  `kinesis.region.amazonaws.com`  | 443 | Non |  Obligatoire si vous publiez des données sur Firehose.  | 
|  `data.iotsitewise.region.amazonaws.com`  | 443 | Non |  Obligatoire si vous publiez des données sur AWS IoT SiteWise.  | 
|  `*.s3.amazonaws.com`  | 443 | Non |  Obligatoire si vous publiez des données dans des compartiments S3. Vous pouvez le `*` remplacer par le nom de chaque compartiment dans lequel vous publiez des données.  | 

## Dépendances
<a name="stream-manager-component-dependencies"></a>

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](#stream-manager-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.1.3 – 2.3.0 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <3,0.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) |  >=0,0.0  | Stricte | 

------
#### [ 2.1.11 – 2.1.12 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0,0 <2,13,0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) |  >=0,0.0  | Stricte | 

------
#### [ 2.1.9 – 2.1.10 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,12.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) |  >=0,0.0  | Stricte | 

------
#### [ 2.1.5 – 2.1.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,11.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) |  >=0,0.0  | Stricte | 

------
#### [ 2.1.2 – 2.1.4 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0,0 <2,1,0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) |  >=0,0.0  | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) |  >=2,0.0 <2,9.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) |  >=0,0.0  | Stricte | 

------
#### [ 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](greengrass-nucleus-component.md) |  >=2,0.0 <2,8.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) |  >=0,0.0  | Stricte | 

------
#### [ 2.0.15 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,7.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) |  >=0,0.0  | Stricte | 

------
#### [ 2.0.13 and 2.0.14 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,6.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) |  >=0,0.0  | Stricte | 

------
#### [ 2.0.11 and 2.0.12 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,5.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) |  >=0,0.0  | Stricte | 

------
#### [ 2.0.10 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,4.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) |  >=0,0.0  | Stricte | 

------
#### [ 2.0.9 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,3.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) |  >=0,0.0  | Stricte | 

------
#### [ 2.0.8 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0.0 <2,2.0  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) |  >=0,0.0  | Stricte | 

------
#### [ 2.0.7 ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) |  >=2,0,3 <2,10  | Flexible | 
| [Service d'échange de jetons](token-exchange-service-component.md) |  >=0,0.0  | Stricte | 

------

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="stream-manager-component-configuration"></a>

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

`STREAM_MANAGER_STORE_ROOT_DIR`  
(Facultatif) Le chemin absolu du répertoire local utilisé pour stocker les flux. Cette valeur doit commencer par une barre oblique (par exemple, `/data`).  
<a name="stream-manager-store-root-dir-parameter-folder-requirements"></a>Vous devez spécifier un dossier existant, et l'[utilisateur du système qui exécute le composant du gestionnaire de flux](configure-greengrass-core-v2.md#configure-component-user) doit être autorisé à lire et à écrire dans ce dossier. Par exemple, vous pouvez exécuter les commandes suivantes pour créer et configurer un dossier`/var/greengrass/streams`, que vous spécifiez comme dossier racine du gestionnaire de flux. Ces commandes permettent à l'utilisateur du système par défaut de lire et d'écrire dans ce dossier. `ggc_user`  

```
sudo mkdir /var/greengrass/streams
sudo chown ggc_user /var/greengrass/streams
sudo chmod 700 /var/greengrass/streams
```
Valeur par défaut : `/greengrass/v2/work/aws.greengrass.StreamManager`

`STREAM_MANAGER_SERVER_PORT`  
(Facultatif) Le numéro de port local à utiliser pour communiquer avec le gestionnaire de flux.  
Vous pouvez spécifier `0` d'utiliser un port disponible de manière aléatoire.  
Valeur par défaut : `8088`

`STREAM_MANAGER_AUTHENTICATE_CLIENT`  
(Facultatif) Vous pouvez obliger les clients à s'authentifier avant de pouvoir interagir avec le gestionnaire de flux. Le SDK Stream Manager contrôle l'interaction entre les clients et le gestionnaire de flux. Ce paramètre détermine quels clients peuvent appeler le SDK Stream Manager pour travailler avec des flux. Pour plus d'informations, consultez la section [Authentification du client du gestionnaire de flux](manage-data-streams.md#stream-manager-security-client-authentication).  
Si vous le spécifiez`true`, le SDK Stream Manager n'autorise que les composants Greengrass en tant que clients.  
Si vous le spécifiez`false`, le SDK Stream Manager permet à tous les processus du périphérique principal d'être des clients.  
Valeur par défaut : `true`

`STREAM_MANAGER_EXPORTER_MAX_BANDWIDTH`  
(Facultatif) Bande passante maximale moyenne (en kilobits par seconde) que le gestionnaire de flux peut utiliser pour exporter des données.  
Par défaut : pas de limite

`STREAM_MANAGER_EXPORTER_THREAD_POOL_SIZE`  
(Facultatif) Le nombre maximum de threads actifs que le gestionnaire de flux peut utiliser pour exporter des données.  
La taille optimale dépend de votre matériel, du volume de flux et du nombre planifié de flux d'exportation. Si votre vitesse d'exportation est faible, vous pouvez ajuster ce paramètre afin de trouver la taille optimale en fonction de votre matériel et de votre analyse de rentabilisation. Le processeur et la mémoire de votre appareil principal sont des facteurs limitatifs. Pour commencer, vous pouvez essayer de définir cette valeur par le nombre de cœurs de processeur sur l'appareil.  
Veillez à ne pas définir une taille supérieure à ce que votre matériel peut prendre en charge. Chaque flux consomme des ressources matérielles. Essayez donc de limiter le nombre de flux d'exportation sur les appareils limités.  
Par défaut : 5 fils

`STREAM_MANAGER_EXPORTER_S3_DESTINATION_MULTIPART_UPLOAD_MIN_PART_SIZE_BYTES`  
(Facultatif) Taille minimale (en octets) d'une partie dans un téléchargement partitionné vers Amazon S3. Le gestionnaire de flux utilise ce paramètre et la taille du fichier d'entrée pour déterminer comment regrouper les données dans une requête PUT en plusieurs parties.  
Le gestionnaire de flux utilise la `sizeThresholdForMultipartUploadBytes` propriété streams pour déterminer s'il convient d'exporter vers Amazon S3 sous forme de téléchargement en une ou plusieurs parties. AWS IoT Greengrass les composants peuvent définir ce seuil lorsqu'ils créent un flux exporté vers Amazon S3.
Par défaut : `5242880` (5 Mo). Il s'agit également de la valeur minimale.

`LOG_LEVEL`  
(Facultatif) Le niveau de journalisation du composant. Choisissez parmi les niveaux de journalisation suivants, listés ici par ordre de niveau :  
+ `TRACE`
+ `DEBUG`
+ `INFO`
+ `WARN`
+ `ERROR`
Valeur par défaut : `INFO`

`JVM_ARGS`  
(Facultatif) Les arguments personnalisés de la machine virtuelle Java à transmettre au gestionnaire de flux au démarrage. Séparez les arguments multiples par des espaces.  
Utilisez ce paramètre uniquement lorsque vous devez remplacer les paramètres par défaut utilisés par la JVM. Par exemple, il peut s'avérer nécessaire d'augmenter la taille de pile par défaut si vous prévoyez d'exporter un grand nombre de flux.

`startupTimeoutSeconds`  
(Facultatif) Durée maximale en secondes pendant laquelle le composant démarre. L'état du composant passe à `ERRORED` s'il dépasse ce délai d'attente.  
Valeur par défaut : `120`

**Example Exemple : mise à jour de la fusion de configurations**  
L'exemple de configuration suivant indique d'utiliser un port autre que le port par défaut.  

```
{
  "STREAM_MANAGER_SERVER_PORT": "18088"
}
```

## Fichier journal local
<a name="stream-manager-component-log-file"></a>

Ce composant utilise le fichier journal suivant.

------
#### [ Linux ]

```
/greengrass/v2/logs/aws.greengrass.StreamManager.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\aws.greengrass.StreamManager.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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par le chemin d'accès au dossier AWS IoT Greengrass racine.

------
#### [ Linux ]

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

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.greengrass.StreamManager.log -Tail 10 -Wait
  ```

------

## Journal des modifications
<a name="stream-manager-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.3.0  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/stream-manager-component.html) | 
|  2.2.1  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/stream-manager-component.html) | 
|  2.2.0  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/stream-manager-component.html) | 
|  2.1.13  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/stream-manager-component.html) | 
|  2.1.12  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/stream-manager-component.html) | 
|  2.1.11  | Version mise à jour pour la version 2.12.0 de Greengrass Nucleus. | 
|  2.1.10  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/stream-manager-component.html)  | 
|  2.1.9  | Version mise à jour pour la version 2.11.0 de Greengrass Nucleus. | 
|  2.1.8  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/stream-manager-component.html)  | 
|  2.1.7  |  <a name="changelog-stream-manager-2.1.7"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/stream-manager-component.html)  | 
|  2.1.6  |  <a name="changelog-stream-manager-2.1.6"></a>[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/stream-manager-component.html)  | 
|  2.1.5  | Version mise à jour pour la version 2.10.0 de Greengrass Nucleus. | 
|  2.1.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/stream-manager-component.html)  | 
|  2.1.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/stream-manager-component.html)  | 
|  2.1.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/stream-manager-component.html)  | 
|  2.1.1  | Version mise à jour pour la version 2.8.0 de Greengrass Nucleus. | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/stream-manager-component.html)  | 
|  2,0,15  |  Version mise à jour pour la version 2.6.0 de Greengrass Nucleus.  | 
|  2,0,14  |  Cette version contient des corrections de bogues et des améliorations.  | 
|  2.0.13  |  Version mise à jour pour la version 2.5.0 de Greengrass Nucleus.  | 
| 2,0,12 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/stream-manager-component.html)  | 
|  2.0.11  |  Version mise à jour pour la version 2.4.0 de Greengrass Nucleus.  | 
|  2.0.10  |  Version mise à jour pour la version 2.3.0 de Greengrass Nucleus.  | 
|  2.0.9  |  Version mise à jour pour la version 2.2.0 de Greengrass Nucleus.  | 
|  2.0.8  |  Version mise à jour pour la version 2.1.0 de Greengrass Nucleus.  | 
|  2.0.7  |  Première version.  | 

# Redirecteur de journal du système
<a name="system-log-forwarder-component"></a>

Le redirecteur de journal système (`aws.greengrass.SystemLogForwarder`) télécharge les journaux système actifs directement sur Amazon à CloudWatch l'aide de l'API CloudWatch HTTPS.

**Important**  
Ce composant ne transmettra que les journaux systemd-journald générés pendant l'exécution. [Pour plus d'informations sur les journaux systemd-journald, consultez [systemd-journald](https://www.freedesktop.org/software/systemd/man/latest/systemd-journald.service.html) et journalctl.](https://www.freedesktop.org/software/systemd/man/latest/journalctl.html#)

**Note**  
Ce composant nécessite des autorisations spécifiques pour créer et gérer des groupes de CloudWatch journaux et des flux.

**Topics**
+ [Versions](#system-log-forwarder-component-versions)
+ [Type](#system-log-forwarder-component-type)
+ [Système d’exploitation](#system-log-forwarder-component-os-support)
+ [Exigences](#system-log-forwarder-component-requirements)
+ [Points de terminaison et ports](#system-log-forwarder-component-endpoints)
+ [Dépendances](#system-log-forwarder-component-dependencies)
+ [Configuration](#system-log-forwarder-component-configuration)
+ [Journal des modifications](#system-log-forwarder-component-changelog)

## Versions
<a name="system-log-forwarder-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2.1.x
+ 2.0.x

## Type
<a name="system-log-forwarder-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="system-log-forwarder-component-os-support"></a>

Ce composant doit être installé sur les systèmes Linux basés sur Systemd.

## Exigences
<a name="system-log-forwarder-component-requirements"></a>

Ce composant répond aux exigences suivantes :

Le composant nécessite un accès pour créer des groupes de journaux et de flux, CloudWatch ainsi que l'autorisation d'effectuer l'appel PutLogEvents HTTP. Vous devez au minimum ajouter les autorisations politiques suivantes à l'alias de rôle de votre appareil Greengrass :

------
#### [ JSON ]

****  

```
{
    "Version":"2012-10-17",		 	 	 
    "Statement": [
    {
      "Effect": "Allow",
      "Action": ["logs:CreateLogGroup"],
      "Resource": "arn:aws:logs:us-east-1:111122223333:log-group:greengrass/systemLogs:*"
    },
    {
      "Effect": "Allow",
      "Action": ["logs:CreateLogStream", "logs:PutLogEvents"],
      "Resource": "arn:aws:logs:us-east-1:111122223333:log-group:greengrass/systemLogs:log-stream:${credentials-iot:ThingName}"
    }
  ]
}
```

------

**Note**  
Pour plus d'informations, consultez la page [Github](https://github.com/aws-greengrass/aws-greengrass-system-log-forwarder) du System Log Forwarder.

## Points de terminaison et ports
<a name="system-log-forwarder-component-endpoints"></a>

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](allow-device-traffic.md).


| Endpoint |  Port | Obligatoire | Description | 
| --- | --- | --- | --- | 
|  `logs.region.amazonaws.com`  | 443 | Non |  Obligatoire si vous écrivez des journaux dans CloudWatch Logs.  | 

## Dépendances
<a name="system-log-forwarder-component-dependencies"></a>

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](#system-log-forwarder-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

------
#### [ 2.1.x ]

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Service d'échange de jetons](token-exchange-service-component.md) | >=2,0.0 | Stricte | 
| [Greengrass Nucleus Lite](greengrass-nucleus-lite-component.md) | >=2,3,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 | 
| --- | --- | --- | 
| [Service d'échange de jetons](token-exchange-service-component.md) | >=2,0.0 | Stricte | 

------

## Configuration
<a name="system-log-forwarder-component-configuration"></a>

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

------
#### [ 2.0.x-2.1.x ]

`maxUploadIntervalSec`  
Période maximale pendant laquelle le redirecteur des journaux du système tentera de télécharger les journaux. Étant donné que le redirecteur de journaux télécharge les journaux lorsque la mémoire est pleine, il se peut qu'il soit chargé plus souvent que la cadence maximale configurée.

`maxRetriesCount`  
Nombre de fois où le redirecteur de journal du système tente de retenter une erreur HTTP transitoire.

`bufferCapacity`  
Taille de la mémoire tampon en anneau pour le stockage des journaux en mémoire.

`logGroup`  
Le chemin du journal dans CloudWatch.

`logStream`  
Le CloudWatch LogStream.

`filters`  
Carte des configurations de filtre pour le périphérique principal.    
`services`  
Liste des filtres de nom de service que System Log Forwarder utilisera pour déterminer quels journaux seront téléchargés. Un journal ne sera chargé que si le service dont il provient correspond à au moins un des filtres de cette liste. Les filtres de cette liste peuvent être soit une chaîne à laquelle le nom du service doit correspondre entièrement, soit une chaîne se terminant par \$1, ce qui signifie que le préfixe doit correspondre.  
Valeur par défaut : `[ggl.*]`  
Un journal ne sera chargé que si le service dont il provient correspond à au moins un des filtres de cette liste.
L'utilisation de la valeur \$1 inclura tous les services disponibles.

**Example Exemple de configuration :**  
L'exemple ci-dessous filtrera les journaux en fonction de tous les services inclus dans Greengrass Nucleus Lite.  

```
{
    "maxUploadIntervalSec": 300,
    "maxRetriesCount": 3,
    "bufferCapacity": 1048576,
    "logGroup": "greengrass/systemLogs",
    "logStream": "deviceName",
    "filters": {
        "services": ["ggl.*"]
    }
}
```

------

## Journal des modifications
<a name="system-log-forwarder-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/system-log-forwarder-component.html)  | 
|  2.0.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/system-log-forwarder-component.html)  | 
|  2.0.0  |  Première version.  | 

# Agent Systems Manager
<a name="systems-manager-agent-component"></a>

Le composant AWS Systems Manager Agent (`aws.greengrass.SystemsManagerAgent`) installe l'agent Systems Manager afin que vous puissiez gérer les appareils principaux avec Systems Manager. Systems Manager est un AWS service que vous pouvez utiliser pour visualiser et contrôler votre infrastructure AWS, y compris les EC2 instances Amazon, les serveurs sur site et les machines virtuelles (VMs), ainsi que les appareils périphériques. Systems Manager vous permet de visualiser les données opérationnelles, d'automatiser les tâches opérationnelles et de garantir la sécurité et la conformité. Pour plus d'informations, voir [Qu'est-ce que c'est AWS Systems Manager ?](https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html) et [À propos de Systems Manager Agent](https://docs.aws.amazon.com/systems-manager/latest/userguide/prereqs-ssm-agent.html) dans le *guide de AWS Systems Manager l'utilisateur*.

<a name="about-systems-manager-capabilities"></a>Les outils et fonctionnalités de Systems Manager sont appelés *fonctionnalités*. Les appareils principaux de Greengrass prennent en charge toutes les fonctionnalités de Systems Manager. Pour plus d'informations sur ces fonctionnalités et sur la façon d'utiliser Systems Manager pour gérer les appareils principaux, consultez la section [Fonctionnalités de Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/features.html) dans le *Guide de AWS Systems Manager l'utilisateur*.

**Topics**
+ [Versions](#systems-manager-agent-component-versions)
+ [Type](#systems-manager-agent-component-type)
+ [Système d’exploitation](#systems-manager-agent-component-os-support)
+ [Prérequis](#systems-manager-agent-component-requirements)
+ [Dépendances](#systems-manager-agent-component-dependencies)
+ [Configuration](#systems-manager-agent-component-configuration)
+ [Fichier journal local](#systems-manager-agent-component-log-file)
+ [Consultez aussi](#systems-manager-agent-component-see-also)
+ [Journal des modifications](#systems-manager-agent-component-changelog)

## Versions
<a name="systems-manager-agent-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 1.3.x
+ 1,2.x
+ 1,1x
+ 1,0 x

## Type
<a name="systems-manager-agent-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="systems-manager-agent-component-os-support"></a>

Ce composant ne peut être installé que sur les appareils principaux de Linux.

## Prérequis
<a name="systems-manager-agent-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ Un appareil principal Greengrass qui fonctionne sur une plate-forme Linux 64 bits : Armv8 () AArch64 ou x86\$164.
+ Vous devez disposer d'un rôle de service Gestion des identités et des accès AWS (IAM) que Systems Manager peut assumer. Ce rôle doit inclure la politique SSMManaged InstanceCore gérée par [Amazon](https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore) ou une politique personnalisée qui définit des autorisations équivalentes. Pour plus d'informations, voir [Créer un rôle de service IAM pour les appareils Edge](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-setting-up-edge-devices.html#systems-manager-setting-up-edge-devices-service-role) dans le *Guide de l'AWS Systems Manager utilisateur*.

  Lorsque vous déployez ce composant, vous devez spécifier le nom de ce rôle pour le paramètre `SSMRegistrationRole` de configuration.
+ Le [rôle d'appareil Greengrass](device-service-role.md) doit autoriser les actions `ssm:AddTagsToResource` et`ssm:RegisterManagedInstance`. Le rôle de périphérique doit également autoriser l'`iam:PassRole`action pour le rôle de service IAM qui répond à l'exigence précédente. L'exemple de politique IAM suivant accorde ces autorisations.

  ```
  {
    "Version": "2012-10-17",		 	 	 
    "Statement": [
      {
        "Action": [
          "iam:PassRole"
        ],
        "Effect": "Allow",
        "Resource": [
          "arn:aws:iam::account-id:role/SSMServiceRole"
        ]
      },
      {
        "Action": [
          "ssm:AddTagsToResource",
          "ssm:RegisterManagedInstance"
        ],
        "Effect": "Allow",
        "Resource": "*"
      }
    ]
  }
  ```

### Endpoints et ports
<a name="systems-manager-agent-component-endpoints"></a>

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](allow-device-traffic.md).


| Endpoint |  Port | Obligatoire | Description | 
| --- | --- | --- | --- | 
|  `ec2messages.region.amazonaws.com`  | 443 | Oui |  Communiquez avec le service Systems Manager dans le AWS Cloud.  | 
|  `ssm.region.amazonaws.com`  | 443 | Oui |  Enregistrez le périphérique principal en tant que nœud géré par Systems Manager.  | 
|  `ssmmessages.region.amazonaws.com`  | 443 | Oui |  Communiquez avec Session Manager, une fonctionnalité de Systems Manager, dans le AWS Cloud.  | 

*Pour plus d'informations, voir [Référence : ec2messages, ssmmessages et autres appels d'API](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-setting-up-messageAPIs.html) dans le guide de l'utilisateur.AWS Systems Manager *

## Dépendances
<a name="systems-manager-agent-component-dependencies"></a>

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](#systems-manager-agent-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

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


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Service d'échange de jetons](token-exchange-service-component.md) |  >=2,0.0 <3,0.0 | Stricte | 

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="systems-manager-agent-component-configuration"></a>

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

`SSMRegistrationRole`  
Le rôle de service IAM que Systems Manager peut assumer et qui inclut la politique SSMManaged InstanceCore gérée par [Amazon](https://console.aws.amazon.com/iam/home#/policies/arn:aws:iam::aws:policy/AmazonSSMManagedInstanceCore) ou une politique personnalisée qui définit des autorisations équivalentes. Pour plus d'informations, voir [Créer un rôle de service IAM pour les appareils Edge](https://docs.aws.amazon.com/systems-manager/latest/userguide/systems-manager-setting-up-edge-devices-service-role.html) dans le *Guide de l'AWS Systems Manager utilisateur*.

`SSMOverrideExistingRegistration`  
(Facultatif) Si le périphérique principal exécute déjà l'agent Systems Manager enregistré avec une activation hybride, vous pouvez annuler l'enregistrement de l'agent Systems Manager existant sur le périphérique. Définissez cette option sur `true` pour enregistrer le périphérique principal en tant que nœud géré à l'aide de l'agent Systems Manager fourni par ce composant.  
Cette option s'applique uniquement aux appareils enregistrés avec une activation hybride. Si le périphérique principal s'exécute sur une EC2 instance Amazon avec l'agent Systems Manager installé et un rôle de profil d'instance configuré, l'ID de nœud géré existant de l' EC2 instance Amazon commence par`i-`. Lorsque vous installez le composant Systems Manager Agent, celui-ci enregistre un nouveau nœud géré dont l'ID commence par `mi-` au lieu de`i-`. Vous pouvez ensuite utiliser le nœud géré dont l'identifiant commence par `mi-` pour gérer le périphérique principal avec Systems Manager.
Par défaut : `false`

`SSMResourceTags`  
(Facultatif) Les balises à ajouter au nœud géré par Systems Manager que ce composant crée pour le périphérique principal. Vous pouvez utiliser ces balises pour gérer des groupes d'appareils principaux avec Systems Manager. Par exemple, vous pouvez exécuter une commande sur tous les appareils dotés d'une étiquette que vous spécifiez.  
Spécifiez une liste dans laquelle chaque balise est un objet avec a `Key` et `Value` a. Par exemple, la valeur suivante pour `SSMResourceTags` indique à ce composant de définir la **Owner** balise **richard-roe** sur le nœud géré du périphérique principal.  

```
[
  {
    "Key": "Owner",
    "Value": "richard-roe"
  }
]
```
Ce composant ignore ces balises si le nœud géré existe déjà et `SSMOverrideExistingRegistration` existe `false` déjà.

**Example Exemple : mise à jour de la fusion de configurations**  
L'exemple de configuration suivant indique d'utiliser un rôle de service nommé `SSMServiceRole` pour permettre au périphérique principal de s'enregistrer et de communiquer avec Systems Manager.  

```
{
  "SSMRegistrationRole": "SSMServiceRole",
  "SSMOverrideExistingRegistration": false,
  "SSMResourceTags": [
    {
      "Key": "Owner",
      "Value": "richard-roe"
    },
    {
      "Key": "Team",
      "Value": "solar"
    }
  ]
}
```

## Fichier journal local
<a name="systems-manager-agent-component-log-file"></a>

Le logiciel Systems Manager Agent écrit les journaux dans un dossier situé en dehors du dossier racine de Greengrass. Pour plus d'informations, consultez la section [Visualisation des journaux de l'agent Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/sysman-agent-logs.html) dans le *guide de AWS Systems Manager l'utilisateur*.

Le composant Systems Manager Agent utilise des scripts shell pour installer, démarrer et arrêter l'agent Systems Manager. Vous trouverez le résultat de ces scripts dans le fichier journal suivant.

```
/greengrass/v2/logs/aws.greengrass.SystemsManagerAgent.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. Remplacez `/greengrass/v2` par le chemin d'accès au dossier AWS IoT Greengrass racine.

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

## Consultez aussi
<a name="systems-manager-agent-component-see-also"></a>
+ [Gérez les appareils principaux de Greengrass avec AWS Systems Manager](manage-with-systems-manager.md)
+ [Qu'est-ce que AWS Systems Manager ?](https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html) dans le *Guide de l'utilisateur AWS Systems Manager *
+ [À propos de Systems Manager Agent](https://docs.aws.amazon.com/systems-manager/latest/userguide/prereqs-ssm-agent.html) dans le *guide de AWS Systems Manager l'utilisateur*

## Journal des modifications
<a name="systems-manager-agent-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  1.3.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/systems-manager-agent-component.html)  | 
|  1.2.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/systems-manager-agent-component.html)  | 
|  1.2.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/systems-manager-agent-component.html)  | 
|  1.1.0  |  Cette version contient des corrections de bugs et des améliorations.  | 
|  1.0.0  |  Première version.  | 

# Service d'échange de jetons
<a name="token-exchange-service-component"></a>

Le composant de service d'échange de jetons (`aws.greengrass.TokenExchangeService`) fournit des AWS informations d'identification que vous pouvez utiliser pour interagir avec les AWS services de vos composants personnalisés.

Le service d'échange de jetons fonctionne comme un serveur local. Ce serveur local se connecte au fournisseur AWS IoT d'informations d'identification à l'aide de l'alias de AWS IoT rôle que vous configurez dans le composant central du [noyau de Greengrass](greengrass-nucleus-component.md). Le composant fournit deux variables d'environnement, `AWS_CONTAINER_CREDENTIALS_FULL_URI` et`AWS_CONTAINER_AUTHORIZATION_TOKEN`. `AWS_CONTAINER_CREDENTIALS_FULL_URI`définit l'URI de ce serveur local. Lorsqu'un composant crée un client AWS SDK, le client reconnaît cette variable d'environnement URI et utilise le jeton contenu dans le `AWS_CONTAINER_AUTHORIZATION_TOKEN` pour se connecter au service d'échange de jetons et récupérer les AWS informations d'identification. Cela permet aux appareils principaux de Greengrass d'appeler les opérations de AWS service. Pour plus d'informations sur l'utilisation de ce composant dans des composants personnalisés, consultez[Interagissez avec les AWS services](interact-with-aws-services.md).

**Important**  <a name="token-exchange-service-aws-sdk-requirement"></a>
Support pour acquérir des AWS informations d'identification de cette manière a été ajouté AWS SDKs le 13 juillet 2016. Votre composant doit utiliser une version du AWS SDK créée à cette date ou après cette date. Pour plus d'informations, consultez la section [Utilisation d'un AWS SDK compatible](https://docs.aws.amazon.com/AmazonECS/latest/developerguide/task-iam-roles.html#task-iam-roles-minimum-sdk) dans le manuel *Amazon Elastic Container Service Developer Guide*.

**Note**  
Les composants utilisant la chaîne d'informations d'identification AWS par défaut peuvent découvrir et utiliser d'autres sources d'informations d'identification, si elles existent. Au sein d'Amazon Amazon Elastic Container Service (Amazon ECS), les `AWS_CONTAINER_CREDENTIALS_RELATIVE_URI` informations d'identification du conteneur seront prioritaires`AWS_CONTAINER_CREDENTIALS_FULL_URI`, ce qui signifie que les informations d'identification du service d'échange de jetons peuvent ne pas fonctionner au sein d'Amazon Elastic Container Service (Amazon ECS). Pour en savoir plus, consultez les [fournisseurs d'identifiants standardisés](https://docs.aws.amazon.com/sdkref/latest/guide/standardized-credentials.html) 

**Topics**
+ [Versions](#token-exchange-service-component-versions)
+ [Type](#token-exchange-service-component-type)
+ [Système d’exploitation](#token-exchange-service-component-os-support)
+ [Dépendances](#token-exchange-service-component-dependencies)
+ [Configuration](#token-exchange-service-component-configuration)
+ [Fichier journal local](#token-exchange-service-component-log-file)
+ [Journal des modifications](#token-exchange-service-component-changelog)

## Versions
<a name="token-exchange-service-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 2.0.x

## Type
<a name="token-exchange-service-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="token-exchange-service-component-os-support"></a>

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

## Dépendances
<a name="token-exchange-service-component-dependencies"></a>

Ce composant n'a aucune dépendance.

## Configuration
<a name="token-exchange-service-component-configuration"></a>

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

`port`  
Port à utiliser pour les connexions au service d'échange de jetons. Le service d'échange de jetons redémarrera une fois la configuration du port modifiée.

`credentialRetryInSec`  
Spécifie les intervalles entre les tentatives en secondes lorsque le service Token Exchange rencontre des erreurs de demande d'informations d'identification.    
`clientError`  
Intervalle entre les tentatives en secondes pour les erreurs du client (4xx codes d'état HTTP).  
Par défaut: `120`  
Valeurs valides : de `10` à `42900`  
`serverError`  
Intervalle entre les tentatives en secondes pour les erreurs du serveur (5xx codes d'état HTTP).  
Par défaut: `60`  
Valeurs valides : de `10` à `42900`  
`unknownError`  
Intervalle entre les tentatives en secondes pour les erreurs inconnues (erreurs de connexion et codes d'état HTTP en dehors des plages 4xx et 5xx).  
Par défaut: `300`  
Valeurs valides : de `10` à `42900`

**Example Exemple : mise à jour de la fusion de configurations**  

```
{
   "port": 2020,
   "credentialRetryInSec": {
    "clientError": 30,
    "serverError": 45,
    "unknownError": 60
   }
}
```

## Fichier journal local
<a name="token-exchange-service-component-log-file"></a>

Ce composant utilise le même fichier journal que le composant [Greengrass nucleus](greengrass-nucleus-component.md).

------
#### [ 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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par 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
<a name="token-exchange-service-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  2.0.3  |  Première version.  | 

# Collecteur IoT SiteWise OPC UA
<a name="iotsitewise-opcua-collector-component"></a>

Le composant collecteur IoT SiteWise OPC UA (`aws.iot.SiteWiseEdgeCollectorOpcua`) permet aux AWS IoT SiteWise passerelles de collecter des données à partir de serveurs OPC UA locaux.

Avec ce composant, les AWS IoT SiteWise passerelles peuvent se connecter à plusieurs serveurs OPC UA. Pour plus d'informations sur les AWS IoT SiteWise passerelles, consultez la section [Utilisation AWS IoT SiteWise du périphérique dans le](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/gateways-ggv2.html) *Guide de l'AWS IoT SiteWise utilisateur*.

**Topics**
+ [Versions](#iotsitewise-opcua-collector-component-versions)
+ [Type](#iotsitewise-opcua-collector-component-type)
+ [Système d’exploitation](#iotsitewise-opcua-collector-component-os-support)
+ [Prérequis](#iotsitewise-opcua-collector-component-requirements)
+ [Dépendances](#iotsitewise-opcua-collector-component-dependencies)
+ [Configuration](#iotsitewise-opcua-collector-component-configuration)
+ [Données d'entrée](#iotsitewise-opcua-collector-component-input-data)
+ [Données de sortie](#iotsitewise-opcua-collector-component-output-data)
+ [Fichier journal local](#iotsitewise-opcua-collector-component-log-file)
+ [Licences](#iotsitewise-opcua-collector-component-licenses)
+ [Journal des modifications](#iotsitewise-opcua-collector-component-changelog)
+ [Consultez aussi](#iotsitewise-opcua-collector-component-see-also)

## Versions
<a name="iotsitewise-opcua-collector-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 3.1.x
+ 3,0. x
+ 2,6. x
+ 2,5.x
+ 2.4.x
+ 2.3.x
+ 2.2.x
+ 2,1x
+ 2,0.x

## Type
<a name="iotsitewise-opcua-collector-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="iotsitewise-opcua-collector-component-os-support"></a>

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

## Prérequis
<a name="iotsitewise-opcua-collector-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ L'appareil principal de Greengrass doit fonctionner sur l'une des plateformes suivantes :
  + Système d'exploitation : Ubuntu 20.04 ou version ultérieure

    architecture : x86\$164 (AMD64) ou ARMv8 (Aarch64)
  + Système d'exploitation : Red Hat Enterprise Linux (RHEL) 8

    architecture : x86\$164 (AMD64) ou ARMv8 (Aarch64)
  + Système d'exploitation : Amazon Linux 2

    architecture : x86\$164 (AMD64) ou ARMv8 (Aarch64)
  + Système d'exploitation : Debian 11

    architecture : x86\$164 (AMD64) ou ARMv8 (Aarch64)
  + Système d'exploitation : Windows Server 2019 ou version ultérieure

    architecture : x86\$164 () AMD64
+ Le périphérique principal Greengrass doit autoriser la connectivité réseau sortante aux serveurs OPC UA.

## Dépendances
<a name="iotsitewise-opcua-collector-component-dependencies"></a>

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](#iotsitewise-opcua-collector-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

Le tableau suivant répertorie les dépendances de toutes les versions de ce composant.


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,3,0 <3,0,0 | Stricte | 
| [Gestionnaire de flux](stream-manager-component.md) | >2,0,10<3,0.0 | Stricte | 
| [Directeur des services secrets](secret-manager-component.md) | >=2,0,8 <3,0,0 | Stricte | 

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="iotsitewise-opcua-collector-component-configuration"></a>

Ce composant ne possède aucun paramètre de configuration.

Vous pouvez utiliser la AWS IoT SiteWise console ou l'API pour configurer le composant collecteur IoT SiteWise OPC UA. Pour plus d'informations, voir [Étape 4 : Ajouter des sources de données (facultatif)](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/create-gateway-ggv2.html#add-data-sources-console) dans le *Guide de AWS IoT SiteWise l'utilisateur*.

## Données d'entrée
<a name="iotsitewise-opcua-collector-component-input-data"></a>

Ce composant accepte uniquement les données dans les formats suivants, tous les autres seront ignorés et rejetés. Le tableau ci-dessous met en correspondance les types de données OPC UA avec leurs SiteWise équivalents.


|  **SiteWise type de données**  |  **Type de données OPC UA**  |  **Description**  | 
| --- | --- | --- | 
|  `STRING`  |  `String` `Guid` `XmlElement`  |  Chaîne d'une longueur maximale de 1024 octets.  | 
|  `INTEGER`  |  `SByte` `Byte` `Int16` `UInt16` `Int32` `UInt32`\$1 `Int64`\$1  |  Un entier signé de 32 bits dont la plage est comprise `-2,147,483,648 to 2,147,483,647` entre.  | 
|  `DOUBLE`  |  `UInt32`\$1 `Int64`\$1 `Float` `Double`  |  Nombre à virgule flottante avec plage de `–10^100 to 10^100` valeurs et `IEEE 754` double précision.  | 
|  `BOOLEAN`  |  `Boolean`  |  `true` ou `false`.  | 

\$1 Pour les types de données OPC UA `UInt32` et`Int64`, son type de SiteWise données sera `INTEGER` s'il SiteWise est capable de représenter sa valeur, sinon il le sera`DOUBLE`.

## Données de sortie
<a name="iotsitewise-opcua-collector-component-output-data"></a>



Ce composant écrit `BatchPutAssetPropertyValue` des messages dans le gestionnaire de AWS IoT Greengrass flux. Pour plus d’informations, consultez [BatchPutAssetPropertyValue](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_BatchPutAssetPropertyValue.html) dans la *Référence d’API AWS IoT SiteWise *.

## Fichier journal local
<a name="iotsitewise-opcua-collector-component-log-file"></a>

Ce composant utilise le fichier journal suivant.

------
#### [ Linux ]

```
/greengrass/v2/logs/aws.iot.SiteWiseEdgeCollectorOpcua.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\aws.iot.SiteWiseEdgeCollectorOpcua.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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par le chemin d'accès au dossier AWS IoT Greengrass racine.

------
#### [ Linux ]

  ```
  sudo tail -f /greengrass/v2/logs/aws.iot.SiteWiseEdgeCollectorOpcua.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.iot.SiteWiseEdgeCollectorOpcua.log -Tail 10 -Wait
  ```

------

## Licences
<a name="iotsitewise-opcua-collector-component-licenses"></a>

<a name="component-core-software-license"></a>Ce composant est publié dans le cadre du contrat de [licence logicielle Greengrass Core](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf).

## Journal des modifications
<a name="iotsitewise-opcua-collector-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
| 3.1.0 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
| 3.0.3 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
| 3.0.2 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
| 3.0.1 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
| 3.0.0 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
| 2.6.0 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
| 2.5.1 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
| 2.5.0 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
|  2.4.2  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html) | 
|  2.4.1  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html) | 
|  2.4.0  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
|  2.3.0  | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html) | 
|  2.2.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html) [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
|  2.1.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html) [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
|  2.1.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-opcua-collector-component.html)  | 
|  2.0.3  |  Corrections de bogues et améliorations.  | 
|  2.0.2  |  Corrections de bogues et améliorations apportées à la synchronisation des priorités des actifs avec Edge.  | 
|  2.0.1  |  Première version.  | 

## Consultez aussi
<a name="iotsitewise-opcua-collector-component-see-also"></a>
+ [Qu'est-ce que c'est AWS IoT SiteWise ?](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/what-is-sitewise.html) dans le *guide de AWS IoT SiteWise l'utilisateur*.

# Simulateur de source de données IoT SiteWise OPC UA
<a name="iotsitewise-opcua-data-source-simulator-component"></a>

Le composant simulateur de source de données IoT SiteWise OPC UA (`aws.iot.SiteWiseEdgeOpcuaDataSourceSimulator`) démarre un serveur OPC UA local qui génère des échantillons de données. Utilisez ce serveur OPC UA pour simuler une source de données lue par le [composant collecteur IoT SiteWise OPC UA](iotsitewise-opcua-collector-component.md) sur une AWS IoT SiteWise passerelle. Vous pouvez ensuite explorer les AWS IoT SiteWise fonctionnalités à l'aide de ces exemples de données. Pour plus d'informations sur les AWS IoT SiteWise passerelles, consultez la section [Utilisation AWS IoT SiteWise du périphérique dans le](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/gateways-ggv2.html) *Guide de l'AWS IoT SiteWise utilisateur*.

**Topics**
+ [Versions](#iotsitewise-opcua-data-source-simulator-component-versions)
+ [Type](#iotsitewise-opcua-data-source-simulator-component-type)
+ [Système d’exploitation](#iotsitewise-opcua-data-source-simulator-component-os-support)
+ [Prérequis](#iotsitewise-opcua-data-source-simulator-component-requirements)
+ [Dépendances](#iotsitewise-opcua-data-source-simulator-component-dependencies)
+ [Configuration](#iotsitewise-opcua-data-source-simulator-component-configuration)
+ [Fichier journal local](#iotsitewise-opcua-data-source-simulator-component-log-file)
+ [Journal des modifications](#iotsitewise-opcua-data-source-simulator-component-changelog)
+ [Consultez aussi](#iotsitewise-opcua-data-source-simulator-component-see-also)

## Versions
<a name="iotsitewise-opcua-data-source-simulator-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 1,0 x

## Type
<a name="iotsitewise-opcua-data-source-simulator-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="iotsitewise-opcua-data-source-simulator-component-os-support"></a>

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

## Prérequis
<a name="iotsitewise-opcua-data-source-simulator-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ Le périphérique principal de Greengrass doit pouvoir utiliser le port 4840 sur l'hôte local. Le serveur OPC UA local de ce composant s'exécute sur ce port.

## Dépendances
<a name="iotsitewise-opcua-data-source-simulator-component-dependencies"></a>

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](#iotsitewise-opcua-data-source-simulator-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

Le tableau suivant répertorie les dépendances de toutes les versions de ce composant.


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,3,0 <3,0,0 | Stricte | 

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="iotsitewise-opcua-data-source-simulator-component-configuration"></a>

Ce composant ne possède aucun paramètre de configuration.

## Fichier journal local
<a name="iotsitewise-opcua-data-source-simulator-component-log-file"></a>

Ce composant utilise le fichier journal suivant.

------
#### [ Linux ]

```
/greengrass/v2/logs/aws.iot.SiteWiseEdgeOpcuaDataSourceSimulator.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\aws.iot.SiteWiseEdgeOpcuaDataSourceSimulator.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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par le chemin d'accès au dossier AWS IoT Greengrass racine.

------
#### [ Linux ]

  ```
  sudo tail -f /greengrass/v2/logs/aws.iot.SiteWiseEdgeOpcuaDataSourceSimulator.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.iot.SiteWiseEdgeOpcuaDataSourceSimulator.log -Tail 10 -Wait
  ```

------

## Journal des modifications
<a name="iotsitewise-opcua-data-source-simulator-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
|  1.0.0  |  Première version. Ajoute la prise en charge de Windows Server 2016 ou version ultérieure.  | 

## Consultez aussi
<a name="iotsitewise-opcua-data-source-simulator-component-see-also"></a>
+ [Qu'est-ce que c'est AWS IoT SiteWise ?](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/what-is-sitewise.html) dans le *guide de AWS IoT SiteWise l'utilisateur*.

# SiteWise Éditeur IoT
<a name="iotsitewise-publisher-component"></a>

Le composant SiteWise éditeur IoT (`aws.iot.SiteWiseEdgePublisher`) permet aux AWS IoT SiteWise passerelles d'exporter des données de la périphérie vers le AWS Cloud.

Pour plus d'informations sur les AWS IoT SiteWise passerelles, consultez la section [Utilisation AWS IoT SiteWise du périphérique dans le](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/gateways-ggv2.html) *Guide de l'AWS IoT SiteWise utilisateur*.

**Topics**
+ [Versions](#iotsitewise-publisher-component-versions)
+ [Type](#iotsitewise-publisher-component-type)
+ [Système d’exploitation](#iotsitewise-publisher-component-os-support)
+ [Exigences](#iotsitewise-publisher-component-requirements)
+ [Dépendances](#iotsitewise-publisher-component-dependencies)
+ [Configuration](#iotsitewise-publisher-component-configuration)
+ [Données d’entrée](#iotsitewise-publisher-component-input-data)
+ [Fichier journal local](#iotsitewise-publisher-component-log-file)
+ [Dépannage et débogage](#iotsitewise-publisher-component-debug)
+ [Licences](#iotsitewise-publisher-component-licenses)
+ [Journal des modifications](#iotsitewise-publisher-component-changelog)
+ [Consultez aussi](#iotsitewise-publisher-component-see-also)

## Versions
<a name="iotsitewise-publisher-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 4.1.x
+ 4,0. x
+ 3.2.x
+ 3.1.x
+ 3.0.x
+ 2.4.x
+ 2.3.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Type
<a name="iotsitewise-publisher-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="iotsitewise-publisher-component-os-support"></a>

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

## Exigences
<a name="iotsitewise-publisher-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ L'appareil principal de Greengrass doit fonctionner sur l'une des plateformes suivantes :
  + Système d'exploitation : Ubuntu 18.04 ou version ultérieure

    architecture : x86\$164 (AMD64) ou ARMv8 (Aarch64)
  + Système d'exploitation : Red Hat Enterprise Linux (RHEL) 8

    architecture : x86\$164 (AMD64) ou ARMv8 (Aarch64)
  + Système d'exploitation : Amazon Linux 2

    architecture : x86\$164 (AMD64) ou ARMv8 (Aarch64)
  + Système d'exploitation : Debian 11

    architecture : x86\$164 (AMD64) ou ARMv8 (Aarch64)
  + Système d'exploitation : Windows Server 2019 ou version ultérieure

    architecture : x86\$164 () AMD64
+ L'appareil principal de Greengrass doit se connecter à Internet.
+ L'appareil principal de Greengrass doit être autorisé à effectuer l'`iotsitewise:BatchPutAssetPropertyValue`action. Pour plus d'informations, voir [Autoriser les appareils principaux à interagir avec AWS les services](https://docs.aws.amazon.com/greengrass/v2/developerguide/device-service-role.html).  
**Example stratégie d'autorisation**  

------
#### [ JSON ]

****  

  ```
  {
      "Version":"2012-10-17",		 	 	 
      "Statement": [
          {
              "Effect": "Allow",
              "Action": "iotsitewise:BatchPutAssetPropertyValue",
              "Resource": "*"
          }
      ]
  }
  ```

------

### Points de terminaison et ports
<a name="iotsitewise-publisher-component-endpoints"></a>

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](allow-device-traffic.md).


| Endpoint |  Port | Obligatoire | Description | 
| --- | --- | --- | --- | 
|  `data.iotsitewise.region.amazonaws.com`  | 443 | Oui |  Publiez les données sur AWS IoT SiteWise.  | 

## Dépendances
<a name="iotsitewise-publisher-component-dependencies"></a>

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](#iotsitewise-publisher-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

Le tableau suivant répertorie les dépendances pour les versions 2.0.x à 2.2.x de ce composant.


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Noyau de Greengrass](greengrass-nucleus-component.md) | >=2,3,0<3,0.0 | Stricte | 
| [Gestionnaire de flux](stream-manager-component.md) | >=2,0.10<3,0.0 | Stricte | 

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="iotsitewise-publisher-component-configuration"></a>

Ce composant ne possède aucun paramètre de configuration.

Vous pouvez utiliser la AWS IoT SiteWise console ou l'API pour configurer le composant SiteWise éditeur IoT. Pour plus d'informations, voir [Étape 3 : Configuration de l'éditeur - facultatif](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/create-gateway-ggv2.html#configure-publisher) dans le *guide de AWS IoT SiteWise l'utilisateur*.

## Données d’entrée
<a name="iotsitewise-publisher-component-input-data"></a>



Ce composant lit `PutAssetPropertyValueEntry` les messages du gestionnaire de AWS IoT Greengrass flux. Pour plus d’informations, consultez [PutAssetPropertyValueEntry](https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_PutAssetPropertyValueEntry.html) dans la *Référence d’API AWS IoT SiteWise *.

## Fichier journal local
<a name="iotsitewise-publisher-component-log-file"></a>

Ce composant utilise le fichier journal suivant.

------
#### [ Linux ]

```
/greengrass/v2/logs/aws.iot.SiteWiseEdgePublisher.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\aws.iot.SiteWiseEdgePublisher.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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par le chemin d'accès au dossier AWS IoT Greengrass racine.

------
#### [ Linux ]

  ```
  sudo tail -f /greengrass/v2/logs/aws.iot.SiteWiseEdgePublisher.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.iot.SiteWiseEdgePublisher.log -Tail 10 -Wait
  ```

------

## Dépannage et débogage
<a name="iotsitewise-publisher-component-debug"></a>

Ce composant inclut un nouveau journal des événements pour aider les clients à identifier et à résoudre les problèmes. Le fichier journal est distinct du fichier journal local et se trouve à l'emplacement suivant. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par le chemin d'accès au dossier AWS IoT Greengrass racine.

------
#### [ Linux ]

```
/greengrass/v2/work/aws.iot.SiteWiseEdgePublisher/logs/IotSiteWisePublisherEvents.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\work\aws.iot.SiteWiseEdgePublisher\logs\IotSiteWisePublisherEvents.log
```

------

Ce journal contient des informations détaillées et des instructions de dépannage. Des informations de dépannage sont fournies en même temps que les diagnostics, avec une description de la manière de remédier au problème, et parfois avec des liens vers des informations supplémentaires. Les informations de diagnostic incluent les éléments suivants :
+ Niveau de gravité
+ Horodatage
+ Informations supplémentaires spécifiques à l'événement

**Example Exemple de journal**  

```
accountBeingThrottled:
  Summary: Data upload speed slowed due to quota limits
  Level: WARN
  Timestamp: '2023-06-09T21:30:24.654Z'
  Description: The IoT SiteWise Publisher is limited to the "Rate of data points ingested"
    quota for a customers account. See the associated documentation and associated
    metric for the number of requests that were limited for more information. Note
    that this may be temporary and not require any change, although if the issue continues
    you may need to request an increase for the mentioned quota.
  FurtherInformation:
  - https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html
  - https://docs.aws.amazon.com/iot-sitewise/latest/userguide/troubleshooting-gateway.html#gateway-issue-data-streams
  AssociatedMetrics:
  - Name: TotalErrorCount
    Description: The total number of errors of this type that occurred.
    Value: 327724.0
  AssociatedData:
  - Name: AggregatePropertyAliases
    Description: The aggregated property aliases of the throttled data.
    FileLocation: /greengrass/v2/work/aws.iot.SiteWiseEdgePublisher/./logs/data/AggregatePropertyAliases_1686346224654.log
```

## Licences
<a name="iotsitewise-publisher-component-licenses"></a>

<a name="component-core-software-license"></a>Ce composant est publié dans le cadre du contrat de [licence logicielle Greengrass Core](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf).

## Journal des modifications
<a name="iotsitewise-publisher-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
| 4.1.4 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
| 4.1.3 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
| 4.1.2 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
| 4.1.1 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
| 4.1.0 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html) [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  4.0.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  4.0.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  4.0.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  4.0.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  3.2.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  3.1.4  |   La version 3.1.4 a été abandonnée le 20 février 2025. Les améliorations apportées à cette version sont disponibles dans les versions ultérieures de ce composant.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  3.1.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  3.1.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  3.1.1  |   La version 3.1.1 a été abandonnée le 12 mars 2024. Les améliorations apportées à cette version sont disponibles dans les versions ultérieures de ce composant.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  3.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  3.0.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.4.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.4.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.3.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.3.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.3.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.2.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.2.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.2.1  |   Cette version ne prend pas en charge la configuration du proxy HTTP. Les versions 2.2.2 et supérieures réintroduisent le support de cette fonctionnalité.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.2.0  |   Cette version ne prend pas en charge la configuration du proxy HTTP. Les versions 2.2.2 et supérieures réintroduisent le support de cette fonctionnalité.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.1.4  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.1.3  |   Cette version n'est plus disponible, sauf dans les régions de l'est des États-Unis (Ohio), du Canada (centre) et AWS GovCloud (de l'est des États-Unis). Cette version du composant nécessite la version 11 ou supérieure de Java pour fonctionner. Les améliorations apportées à cette version sont disponibles dans les versions ultérieures de ce composant.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.1.2  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.1.1  |  Corrections de bugs et améliorations.  | 
|  2.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-publisher-component.html)  | 
|  2.0.2  |  Corrections de bugs et améliorations.  | 
|  2.0.1  |  Première version.  | 

## Consultez aussi
<a name="iotsitewise-publisher-component-see-also"></a>
+ [Qu'est-ce que c'est AWS IoT SiteWise ?](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/what-is-sitewise.html) dans le *guide de AWS IoT SiteWise l'utilisateur*.

# SiteWise Processeur IoT
<a name="iotsitewise-processor-component"></a>

Le composant SiteWise processeur IoT (`aws.iot.SiteWiseEdgeProcessor`) permet aux flux AWS IoT SiteWise classiques et aux passerelles V2 de traiter les données à la périphérie.

Avec ce composant, les AWS IoT SiteWise passerelles peuvent utiliser des modèles d'actifs et des actifs pour traiter les données sur les périphériques de passerelle. Pour plus d'informations sur les AWS IoT SiteWise passerelles, consultez la section [Utilisation AWS IoT SiteWise du périphérique dans le](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/gateways-ggv2.html) *Guide de l'AWS IoT SiteWise utilisateur*.

**Note**  
La fonctionnalité du pack de traitement des données (DPP) ne sera plus ouverte aux nouveaux clients à compter du 7 novembre 2025. Si vous souhaitez utiliser DPP, inscrivez-vous avant cette date. Les clients existants peuvent continuer à utiliser le service normalement. Pour plus d'informations, voir [Modification de la disponibilité des packs de traitement des données](https://docs.aws.amazon.com/iot-sitewise/latest/appguide/iotsitewise-dpp-availability-change.html) dans le *Guide de AWS IoT SiteWise l'utilisateur*.

**Topics**
+ [Versions](#iotsitewise-processor-component-versions)
+ [Type](#iotsitewise-processor-component-type)
+ [Système d’exploitation](#iotsitewise-processor-component-os-support)
+ [Exigences](#iotsitewise-processor-component-requirements)
+ [Dépendances](#iotsitewise-processor-component-dependencies)
+ [Configuration](#iotsitewise-processor-component-configuration)
+ [Fichier journal local](#iotsitewise-processor-component-log-file)
+ [Licences](#iotsitewise-processor-component-licenses)
+ [Journal des modifications](#iotsitewise-processor-component-changelog)
+ [Consultez aussi](#iotsitewise-processor-component-see-also)

## Versions
<a name="iotsitewise-processor-component-versions"></a>

Les versions de ce composant sont les suivantes :
+ 3.5.x
+ 3,4.x
+ 3.3.x
+ 3.2.x
+ 3.1.x
+ 3.0.x
+ 2.2.x
+ 2.1.x
+ 2.0.x

## Type
<a name="iotsitewise-processor-component-type"></a>

<a name="public-component-type-generic"></a>Ce <a name="public-component-type-generic-phrase"></a>composant est un composant générique (`aws.greengrass.generic`). Le [noyau Greengrass](greengrass-nucleus-component.md) exécute les scripts de cycle de vie du composant.

<a name="public-component-type-more-information"></a>Pour de plus amples informations, veuillez consulter [Types de composant](develop-greengrass-components.md#component-types).

## Système d’exploitation
<a name="iotsitewise-processor-component-os-support"></a>

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

## Exigences
<a name="iotsitewise-processor-component-requirements"></a>

Ce composant répond aux exigences suivantes :
+ L'appareil principal de Greengrass doit fonctionner sur l'une des plateformes suivantes :
  + Système d'exploitation : Ubuntu 20.04 ou version ultérieure

    architecture : x86\$164 () AMD64
  + Système d'exploitation : Red Hat Enterprise Linux (RHEL) 8

    architecture : x86\$164 () AMD64
  + Système d'exploitation : Amazon Linux 2

    architecture : x86\$164 () AMD64
  + Système d'exploitation : Windows Server 2019 ou version ultérieure

    architecture : x86\$164 () AMD64
  + Système d'exploitation : Debian 11 (Bullseye) ou version ultérieure

    architecture : x86\$164 () AMD64
+ Le périphérique principal de Greengrass doit autoriser le trafic entrant sur le port 443.
+ Le périphérique principal de Greengrass doit autoriser le trafic sortant sur les ports 443 et 8883.
+ Les ports suivants sont réservés pour être utilisés par AWS IoT SiteWise : 80, 443, 3001, 4569, 4572, 8000, 8081, 8082, 8084, 8085, 8086, 8445, 9000, 9500, 11080 et 50010. L'utilisation d'un port réservé pour le trafic peut entraîner l'interruption de la connexion.
**Note**  
Le port 8087 n'est requis que pour les versions 2.0.15 et ultérieures de ce composant.
+ Le [rôle d'appareil Greengrass](https://docs.aws.amazon.com/greengrass/v2/developerguide/device-service-role.html) doit disposer d'autorisations vous permettant d'utiliser des AWS IoT SiteWise passerelles sur vos appareils. AWS IoT Greengrass V2 Pour plus d'informations, consultez la section [Exigences](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/configure-gateway-ggv2.html#gateway-requirements) du *guide de AWS IoT SiteWise l'utilisateur*.

### Points de terminaison et ports
<a name="iotsitewise-processor-component-endpoints"></a>

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](allow-device-traffic.md).


| Endpoint |  Port | Obligatoire | Description | 
| --- | --- | --- | --- | 
|  `model.iotsitewise.region.amazonaws.com`  | 443 | Oui |  Obtenez des informations sur vos AWS IoT SiteWise actifs et vos modèles d'actifs.  | 
|  `edge.iotsitewise.region.amazonaws.com`  | 443 | Oui |  Obtenez des informations sur la configuration de la AWS IoT SiteWise passerelle du périphérique principal.  | 
|  `ecr.region.amazonaws.com`  | 443 | Oui |  Téléchargez les images Docker de la passerelle AWS IoT SiteWise Edge depuis Amazon Elastic Container Registry.  | 
|  `iot.region.amazonaws.com`  | 443 | Oui |  Obtenez des terminaux pour votre. Compte AWS  | 
|  `sts.region.amazonaws.com`  | 443 | Oui |  Obtenez l'identifiant de votre Compte AWS.  | 
|  `monitor.iotsitewise.region.amazonaws.com`  | 443 | Non |  Obligatoire si vous accédez aux AWS IoT SiteWise Monitor portails sur l'appareil principal.  | 

## Dépendances
<a name="iotsitewise-processor-component-dependencies"></a>

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](#iotsitewise-processor-component-changelog) 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](https://console.aws.amazon.com//greengrass). Sur la page de détails du composant, recherchez la liste des **dépendances**.

Le tableau suivant répertorie les dépendances pour les versions 2.0.x à 2.1.x de ce composant.


| Dépendance | Versions compatibles | Type de dépendance | 
| --- | --- | --- | 
| [Service d'échange de jetons](token-exchange-service-component.md) | >=2,0,3 <3,0,0 | Stricte | 
| [Gestionnaire de flux](stream-manager-component.md) | >=2,0.10 <3,0.0 | Stricte | 
| [Greengrass CLI](greengrass-cli-component.md) | >=2,3,0 <3,0,0 | Stricte | 

Pour plus d'informations sur les dépendances des composants, consultez la [référence de la recette des composants](component-recipe-reference.md#recipe-reference-component-dependencies).

## Configuration
<a name="iotsitewise-processor-component-configuration"></a>

Ce composant ne possède aucun paramètre de configuration.

## Fichier journal local
<a name="iotsitewise-processor-component-log-file"></a>

Ce composant utilise le fichier journal suivant.

------
#### [ Linux ]

```
/greengrass/v2/logs/aws.iot.SiteWiseEdgeProcessor.log
```

------
#### [ Windows ]

```
C:\greengrass\v2\logs\aws.iot.SiteWiseEdgeProcessor.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. Remplacez `/greengrass/v2` ou *C:\$1greengrass\$1v2* par le chemin d'accès au dossier AWS IoT Greengrass racine.

------
#### [ Linux ]

  ```
  sudo tail -f /greengrass/v2/logs/aws.iot.SiteWiseEdgeProcessor.log
  ```

------
#### [ Windows (PowerShell) ]

  ```
  Get-Content C:\greengrass\v2\logs\aws.iot.SiteWiseEdgeProcessor.log -Tail 10 -Wait
  ```

------

## Licences
<a name="iotsitewise-processor-component-licenses"></a>

Ce composant inclut les logiciels/licences tiers suivants :

### Licences tierces
<a name="w2ab1c24b8d120c25b5b1b1"></a>
+ Apache-2.0
+ MIT
+ Clause BSD-2
+ Clause BSD-3
+ CDDL-1.0
+ CDDL-1.1
+ DISQUE
+ Zlib
+ GPL-3.0 avec exception GCC
+ Domaine public
+ Python-2.0
+ Unicode-DFS-2015
+ Clause BSD-1
+ OpenSSL 
+ EPL-1,0
+ EPL-2.0
+ GPL 2.0- with-classpath-exception
+ MPL-2.0
+ CC0-1,0
+ JSON

<a name="component-core-software-license"></a>Ce composant est publié dans le cadre du contrat de [licence logicielle Greengrass Core](https://greengrass-release-license.s3.us-west-2.amazonaws.com/greengrass-license-v1.pdf).

## Journal des modifications
<a name="iotsitewise-processor-component-changelog"></a>

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


|  **Version**  |  **Modifications**  | 
| --- | --- | 
| 3.5.1 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 3.4.0 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 3.3.1 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 3.3.0 | [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html) [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html) | 
|  3.2.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  3.2.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  3.1.3  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  3.1.1  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  3.1.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  3.0.0  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 2.2.1 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 2,137 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 2,135 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 2.1.34 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 2.1.33 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 2.1.32 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 2.1.31 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 2,129 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 2.1.28 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 2.1.24 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
| 2.1.23 |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  2.1.21  |   La mise à niveau de la version 2.0.x vers la version 2.1.x entraînera une perte de données locales.  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  2,0,16  |  Cette version contient des corrections de bogues et des améliorations.  | 
|  2,0,15  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  2,0,14  |  Cette version contient des corrections de bogues et des améliorations.  | 
|  2.0.13  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  2.0.9  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  2.0.7  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  2.0.6  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  2.0.5  |  [\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/fr_fr/greengrass/v2/developerguide/iotsitewise-processor-component.html)  | 
|  2.0.2  |  Première version.  | 

## Consultez aussi
<a name="iotsitewise-processor-component-see-also"></a>
+ [Qu'est-ce que c'est AWS IoT SiteWise ?](https://docs.aws.amazon.com/iot-sitewise/latest/userguide/what-is-sitewise.html) dans le *guide de AWS IoT SiteWise l'utilisateur*.