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 :
-
Rôle IAM qui AWS IoT peut assumer d'exécuter les
logs:PutLogEvents
opérationslogs:CreateLogStream
logs:DescribeLogStreams
, et. Pour plus d’informations, consultez 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 clé KMS 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 clé KMS 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.
Exigences relatives au format de message MQTT pour batchMode
Si vous utilisez l'action Règle CloudWatch Logs en batchMode
désactivant, aucune exigence de formatage des messages MQTT 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 messages MQTT 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, exprimée en nombre de 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 MQTT Message payload
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
-
Rôle IAM qui autorise l'accès au groupe de CloudWatch journaux. Pour plus d’informations, consultez 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
oufalse
(par défaut). Pour plus d’informations, consultez Prérequis.Prend en charge les modèles de substitution : Non
Exemples
L'exemple JSON 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
-
Qu'est-ce qu'Amazon CloudWatch Logs ? dans le guide de l'utilisateur d'Amazon CloudWatch Logs