CloudWatch Journaux - AWS IoT Core

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.

CloudWatch Journaux

L'action CloudWatch Logs (cloudwatchLogs) envoie des données à Amazon CloudWatch Logs. Vous pouvez l'utiliser batchMode pour télécharger et horodater plusieurs enregistrements du journal de l'appareil dans un seul message. Vous pouvez spécifier le groupe de journaux auquel l'action envoie des données.

Prérequis

Cette action réglementaire est assortie des exigences suivantes :

  • IAMRôle qui AWS IoT peut assumer l'exécution des logs:PutLogEvents opérations logs:CreateLogStreamlogs:DescribeLogStreams, et. 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 une KMS clé gérée par AWS KMS key le client pour chiffrer les données du journal dans CloudWatch Logs, le service doit être autorisé à utiliser la KMS clé au nom de l'appelant. Pour plus d'informations, consultez la section Chiffrer les données des CloudWatch journaux dans les journaux à l'aide AWS KMS du guide de l'utilisateur Amazon CloudWatch Logs.

MQTTexigences relatives au format des messages pour batchMode

Si vous utilisez l'action Règle de CloudWatch journalisation alors que vous êtes batchMode désactivée, aucune exigence de formatage des MQTT messages n'est requise. (Remarque : la valeur par défaut du paramètre batchMode est false.) Toutefois, si vous utilisez l'action Règle CloudWatch Logs en activant batchMode (la valeur du paramètre esttrue), les MQTT messages contenant des journaux côté appareil doivent être formatés pour contenir un horodatage et une charge utile de message. Remarque : timestamp représente l'heure à laquelle l'événement s'est produit et est exprimée en millisecondes après le 1er janvier 1970 00:00:00 UTC

Voici un exemple de format de publication :

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

Selon la façon dont les journaux côté appareil sont générés, il peut être nécessaire de les filtrer et de les reformater avant d'être envoyés afin de respecter cette exigence. Pour plus d'informations, consultez la section Charge utile des MQTT messages.

Quel que soit le batchMode paramètre, message le contenu doit respecter les limites de taille des AWS IoT messages. Pour plus d’informations, consultez Points de terminaison et quotas AWS IoT Core.

Paramètres

Lorsque vous créez une AWS IoT règle avec cette action, vous devez spécifier les informations suivantes :

logGroupName

Le groupe de CloudWatch journaux dans lequel l'action envoie des données.

Supporte les modèles de substitution : API et AWS CLI uniquement

roleArn

IAMRôle qui autorise l'accès au groupe de CloudWatch journaux. Pour de plus amples informations, veuillez consulter Prérequis.

Prend en charge les modèles de substitution : Non

(facultatif) batchMode

Indique si des lots d'enregistrements de journal seront extraits et chargés dans CloudWatch. Les valeurs incluent true ou false (par défaut). 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 CloudWatch Logs dans une AWS IoT règle.

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

Consultez aussi