CloudWatch Registros - 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.

CloudWatch Registros

La acción CloudWatch Logs (cloudwatchLogs) envía datos a Amazon CloudWatch Logs. Puede utilizar batchMode para cargar y marcar la hora de varios registros de dispositivos en un solo mensaje. También puede especificar el grupo de registro al que la acción envía los datos.

Requisitos

Esta regla tiene los siguientes requisitos:

  • Una función de IAM que AWS IoT puede asumir la responsabilidad de realizar logs:CreateLogStream las logs:DescribeLogStreams logs:PutLogEvents operaciones y. 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 una clave KMS administrada AWS KMS key por el cliente para cifrar los datos de registro en CloudWatch Logs, el servicio debe tener permiso para usar la clave KMS en nombre de la persona que llama. Para obtener más información, consulte Cifrar datos de registro en CloudWatch Logs utilizando AWS KMS la Guía del usuario de Amazon CloudWatch Logs.

Requisitos de formato de mensaje MQTT para batchMode

Si utilizas la acción de la regla de CloudWatch registros batchMode desactivada, no hay requisitos de formato de mensajes en MQTT. (Nota: el valor por defecto del parámetro batchMode es false.) Sin embargo, si utiliza la acción de la regla CloudWatch Registros con la opción batchMode activada (el valor del parámetro estrue), los mensajes MQTT que contienen registros del dispositivo deben formatearse de forma que contengan una marca de tiempo y una carga útil de mensajes. Nota: timestamp representa la hora en que se produjo el suceso y se expresa como un número de milisegundos después del 1 de enero de 1970 00:00:00 UTC.

A continuación se muestra un ejemplo del formato de publicación:

[ {"timestamp": 1673520691093, "message": "Test message 1"}, {"timestamp": 1673520692879, "message": "Test message 2"}, {"timestamp": 1673520693442, "message": "Test message 3"} ]

Según cómo se generen los registros del dispositivo, es posible que sea necesario filtrarlos y reformatearlos antes de enviarlos para cumplir con este requisito. Para obtener más información, consulte Carga de mensajes MQTT.

Independientemente del batchMode parámetro, el message contenido debe cumplir con las limitaciones de tamaño de los mensajes. AWS IoT Para obtener más información, consulte Puntos de conexión y cuotas de AWS IoT Core.

Parámetros

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

logGroupName

El grupo de CloudWatch registros al que la acción envía los datos.

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

roleArn

La función de IAM que permite el acceso al grupo de CloudWatch registros. Para obtener más información, consulte Requisitos.

Admite plantillas de sustitución: No

(opcional) batchMode

Indica si los lotes de registros se van a extraer y cargar en ellos. CloudWatch Los valores incluyen true o false (predeterminado). Para obtener más información, consulte Requisitos.

Admite plantillas de sustitución: No

Ejemplos

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

{ "topicRulePayload": { "sql": "SELECT * FROM 'some/topic'", "ruleDisabled": false, "awsIotSqlVersion": "2016-03-23", "actions": [ { "cloudwatchLogs": { "logGroupName": "IotLogs", "roleArn": "arn:aws:iam::123456789012:role/aws_iot_cw", "batchMode": false } } ] } }

Véase también