Firehose - AWS IoT Core

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Firehose

La acción Firehose (firehose) envía datos de un mensaje MQTT a una transmisión de Amazon Data Firehose.

Requisitos

Esta regla tiene los siguientes requisitos:

  • Un rol de IAM que AWS IoT puede asumir para realizar la operación. firehose:PutRecord Para obtener más información, consulte Otorgar a una AWS IoT regla el acceso que requiere.

    En la AWS IoT consola, puede elegir o crear un rol que permita AWS IoT realizar esta acción de regla.

  • Si utilizas Firehose para enviar datos a un bucket de Amazon S3 y utilizas un AWS KMS cliente gestionado AWS KMS key para cifrar los datos en reposo en Amazon S3, Firehose debe tener acceso a tu bucket y permiso para usarlo AWS KMS key en nombre de la persona que llama. Para obtener más información, consulte Conceder a Firehose acceso a un destino de Amazon S3 en la Guía para desarrolladores de Amazon Data Firehose.

Parámetros

Al crear una AWS IoT regla con esta acción, debe especificar la siguiente información:

batchMode

(Opcional) Si se debe entregar la transmisión Firehose como un lote utilizando. PutRecordBatch El valor predeterminado es false.

Cuando batchMode es true y la instrucción de SQL de la regla se evalúa como una matriz, cada elemento de la matriz forma un registro en la solicitud PutRecordBatch. La matriz resultante no puede tener más de 500 registros.

Admite plantillas de sustitución: No

deliveryStreamName

La secuencia Firehose en la que escribir los datos del mensaje.

Soporta plantillas de sustitución: API y únicamente AWS CLI

separator

(Opcional) Un separador de caracteres que se utiliza para separar los registros escritos en la transmisión Firehose. Si omite este parámetro, el flujo no utiliza ningún separador. Valores válidos: , (coma), \t (tabulador), (nueva línea), \n (nueva línea de Windows). \r\n

Admite plantillas de sustitución: No

roleArn

La función de IAM que permite el acceso a la transmisión de Firehose. Para obtener más información, consulte Requisitos.

Admite plantillas de sustitución: No

Ejemplos

El siguiente ejemplo de JSON define una acción Firehose en una AWS IoT regla.

{ "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" } } ] } }

El siguiente ejemplo de JSON define una acción Firehose con plantillas de sustitución en una AWS IoT regla.

{ "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" } } ] } }

Véase también