Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
CloudWatch Protokolle
Die Aktion CloudWatch Logs (cloudwatchLogs) sendet Daten an Amazon CloudWatch Logs. Sie können batchMode verwenden, um mehrere Geräteprotokolldatensätze in einer Nachricht hochzuladen und mit einem Zeitstempel zu versehen. Sie können auch die Protokollgruppe angeben, an die die Aktion Daten sendet.
Voraussetzungen
Diese Regelaktion hat die folgenden Anforderungen:
-
Eine IAM-Rolle, die die Ausführung der
logs:PutLogEventsOperationenlogs:CreateLogStreamlogs:DescribeLogStreams, und übernehmen AWS IoT kann. Weitere Informationen finden Sie unter Gewährung einer AWS IoT regeln Sie den Zugriff, den es benötigt.In der AWS IoT Konsole können Sie eine Rolle auswählen oder erstellen, die AWS IoT die Ausführung dieser Regelaktion ermöglicht.
-
Wenn Sie einen vom Kunden verwalteten Schlüssel AWS KMS key (KMS-Schlüssel) verwenden, um Protokolldaten in CloudWatch Logs zu verschlüsseln, muss der Dienst die Berechtigung haben, den KMS-Schlüssel im Namen des Anrufers zu verwenden. Weitere Informationen finden Sie unter Verschlüsseln von Protokolldaten unter Verwendung von CloudWatch Protokollen AWS KMS im Amazon CloudWatch Logs-Benutzerhandbuch.
Anforderungen an das MQTT-Nachrichtenformat für BatchMode
Wenn Sie die Regelaktion CloudWatch Logs bei batchMode deaktivierter Option verwenden, gibt es keine Anforderungen an die Formatierung von MQTT-Nachrichten. (Hinweis: Der Standardwert des batchMode Parameters ist false.) Wenn Sie die Regelaktion CloudWatch Logs jedoch bei batchMode aktivierter Option verwenden (der Parameterwert isttrue), müssen MQTT-Nachrichten, die geräteseitige Protokolle enthalten, so formatiert werden, dass sie einen Zeitstempel und eine Nachrichtennutzlast enthalten. Hinweis: timestamp stellt den Zeitpunkt dar, zu dem das Ereignis eingetreten ist, und wird als Anzahl der Millisekunden nach dem 1. Januar 1970 00:00:00 UTC ausgedrückt.
Nachfolgend sehen Sie ein Beispiel des Veröffentlichungsformats:
[
{"timestamp": 1673520691093, "message": "Test message 1"},
{"timestamp": 1673520692879, "message": "Test message 2"},
{"timestamp": 1673520693442, "message": "Test message 3"}
]
Je nachdem, wie die geräteseitigen Protokolle generiert werden, müssen sie möglicherweise gefiltert und neu formatiert werden, bevor sie gesendet werden, um diese Anforderung zu erfüllen. Weitere Informationen finden Sie unter MQTT-Nachrichtennutzlast.
Unabhängig vom batchMode Parameter muss der message Inhalt den Beschränkungen der Nachrichtengröße entsprechen. AWS IoT Weitere Informationen finden Sie unter AWS IoT Core
Endpunkte und -Kontingente.
Parameters
Wenn Sie eine AWS IoT Regel mit dieser Aktion erstellen, müssen Sie die folgenden Informationen angeben:
logGroupName-
Die CloudWatch Protokollgruppe, an die die Aktion Daten sendet.
Unterstützt Substitutionsvorlagen: API und nur AWS CLI
roleArn-
Die IAM-Rolle, die den Zugriff auf die CloudWatch Protokollgruppe ermöglicht. Weitere Informationen finden Sie unter Voraussetzungen.
Unterstützt Ersatzvorlagen: Nein
- (Optional)
batchMode -
Gibt an, ob Stapel von Protokolldatensätzen extrahiert und in sie hochgeladen werden. CloudWatch Zu den Werten gehört
trueoderfalse(Standard). Weitere Informationen finden Sie unter Voraussetzungen.Unterstützt Ersatzvorlagen: Nein
Beispiele
Das folgende JSON-Beispiel definiert eine CloudWatch Logs-Aktion in einer AWS IoT Regel.
{ "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 } } ] } }
Weitere Informationen finden Sie auch unter
-
Was ist Amazon CloudWatch Logs? im Amazon CloudWatch Logs-Benutzerhandbuch