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
laslogs: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
ofalse
(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
-
¿Qué es Amazon CloudWatch Logs? en la Guía del usuario CloudWatch de Amazon Logs