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
L'action Firehose (firehose
) envoie les données d'un MQTT message vers un flux Amazon Data Firehose.
Prérequis
Cette action réglementaire est assortie des exigences suivantes :
-
IAMRôle qui AWS IoT peut assumer la réalisation de l'
firehose:PutRecord
opération. Pour de plus amples informations, veuillez consulter Accorder à une AWS IoT règle l'accès dont elle a besoin.Dans la AWS IoT console, vous pouvez choisir ou créer un rôle pour autoriser l'exécution AWS IoT de cette action de règle.
-
Si vous utilisez Firehose pour envoyer des données vers un compartiment Amazon S3 et que vous utilisez un AWS KMS client géré AWS KMS key pour chiffrer les données au repos dans Amazon S3, Firehose doit avoir accès à votre compartiment et être autorisé à l'utiliser au nom de l'appelant AWS KMS key . Pour plus d'informations, consultez Accorder à Firehose l'accès à une destination Amazon S3 dans le manuel Amazon Data Firehose Developer Guide.
Paramètres
Lorsque vous créez une AWS IoT règle avec cette action, vous devez spécifier les informations suivantes :
batchMode
-
(Facultatif) S'il faut fournir le flux Firehose sous forme de lot en utilisant.
PutRecordBatch
La valeur par défaut estfalse
.Lorsque
batchMode
c'est le castrue
et que l'SQLinstruction de la règle est évaluée à un tableau, chaque élément du tableau forme un enregistrement dans laPutRecordBatch
demande. Le tableau résultant ne peut pas contenir plus de 500 enregistrements.Prend en charge les modèles de substitution : Non
deliveryStreamName
-
Le flux Firehose dans lequel les données du message doivent être écrites.
Supporte les modèles de substitution : API et AWS CLI uniquement
separator
-
(Facultatif) Séparateur de caractères utilisé pour séparer les enregistrements écrits dans le flux Firehose. Si vous omettez ce paramètre, le flux n'utilise aucun séparateur. Valeurs valides :
,
(virgule),\t
(tab),\n
(nouvelle ligne),\r\n
(nouvelle ligne Windows).Prend en charge les modèles de substitution : Non
roleArn
-
Le IAM rôle qui permet d'accéder au stream Firehose. Pour de plus amples informations, veuillez consulter Prérequis.
Prend en charge les modèles de substitution : Non
Exemples
L'JSONexemple suivant définit une action Firehose dans une AWS IoT règle.
{ "topicRulePayload": { "sql": "SELECT * FROM 'some/topic'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "firehose": { "deliveryStreamName": "my_firehose_stream", "roleArn": "arn:aws:iam::123456789012:role/aws_iot_firehose" } } ] } }
L'JSONexemple suivant définit une action Firehose avec des modèles de substitution dans une AWS IoT règle.
{ "topicRulePayload": { "sql": "SELECT * FROM 'some/topic'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "firehose": { "deliveryStreamName": "${topic()}", "roleArn": "arn:aws:iam::123456789012:role/aws_iot_firehose" } } ] } }
Consultez aussi
-
Qu'est-ce qu'Amazon Data Firehose ? dans le guide du développeur Amazon Data Firehose