CloudWatch Registri - AWS IoT Core

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

CloudWatch Registri

L'azione CloudWatch Logs (cloudwatchLogs) invia dati ad Amazon CloudWatch Logs. Puoi utilizzare batchMode per caricare e indicare data e ora di più record di log del dispositivo in un unico messaggio. Puoi anche specificare il gruppo di log in cui l'azione invia i dati.

Requisiti

Questa operazione della regola presenta i seguenti requisiti:

  • Un IAM ruolo che AWS IoT può assumere per eseguire le operazioni logs:CreateLogStreamlogs:DescribeLogStreams, elogs:PutLogEvents. Per ulteriori informazioni, consulta Concedere a qualsiasi AWS IoT regola l'accesso richiesto.

    Nella AWS IoT console, è possibile scegliere o creare un ruolo per consentire l'esecuzione di questa azione relativa AWS IoT alla regola.

  • Se si utilizza una AWS KMS key (KMSchiave) gestita dal cliente per crittografare i dati di registro in CloudWatch Logs, il servizio deve disporre dell'autorizzazione a utilizzare la KMS chiave per conto del chiamante. Per ulteriori informazioni, consulta Encrypt log data in CloudWatch Logs using AWS KMS nella Amazon CloudWatch Logs User Guide.

MQTTrequisiti di formato dei messaggi per batchMode

Se si utilizza l'azione della regola CloudWatch Logs con batchMode disattivata, non sono previsti requisiti di formattazione dei MQTT messaggi. Nota: il valore predefinito del parametro batchMode è false. Tuttavia, se si utilizza l'azione della regola CloudWatch Logs con batchMode attivata (il valore del parametro ètrue), i MQTT messaggi contenenti registri lato dispositivo devono essere formattati in modo da contenere un timestamp e un payload dei messaggi. Nota: timestamp rappresenta l'ora in cui si è verificato l'evento ed è espressa come numero di millisecondi dopo le 00:00:00 del 1° gennaio 1970. UTC

Di seguito è riportato un esempio del formato di pubblicazione:

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

A seconda di come vengono generati i log lato dispositivo, potrebbe essere necessario filtrarli e riformattarli prima che vengano inviati per soddisfare questo requisito. Per ulteriori informazioni, consulta Message payload. MQTT

Indipendentemente dal batchMode parametro, message i contenuti devono rispettare i limiti di dimensione dei AWS IoT messaggi. Per ulteriori informazioni, consulta Endpoint e quote per AWS IoT Core.

Parametri

Quando si crea una AWS IoT regola con questa azione, è necessario specificare le seguenti informazioni:

logGroupName

Il gruppo di CloudWatch log a cui l'azione invia i dati.

Supporta modelli sostitutivi: API e solo AWS CLI

roleArn

Il IAM ruolo che consente l'accesso al gruppo di CloudWatch log. Per ulteriori informazioni, consulta Requisiti.

Supporta modelli di sostituzione: no

(opzionale) batchMode

Indica se i batch di record di registro verranno estratti e caricati in. CloudWatch I valori includono true o false (impostazione predefinita). Per ulteriori informazioni, consulta Requisiti.

Supporta modelli di sostituzione: no

Esempi

L'JSONesempio seguente definisce un'azione CloudWatch Logs in una regola. AWS IoT

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

Consulta anche