

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.

# 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*