CloudWatch Metriken - AWS IoT Greengrass

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 Metriken

Die CloudWatch Amazon-Metrikenkomponente (aws.greengrass.Cloudwatch) veröffentlicht benutzerdefinierte Metriken von Greengrass-Kerngeräten an Amazon CloudWatch. Die Komponente ermöglicht es den Komponenten, CloudWatch Metriken zu veröffentlichen, mit denen Sie die Umgebung des Greengrass-Core-Geräts überwachen und analysieren können. Weitere Informationen finden Sie unter Verwenden von CloudWatch Amazon-Metriken im CloudWatch Amazon-Benutzerhandbuch.

Um eine CloudWatch Metrik mit dieser Komponente zu veröffentlichen, veröffentlichen Sie eine Nachricht zu einem Thema, das von dieser Komponente abonniert wird. Standardmäßig abonniert diese Komponente das cloudwatch/metric/put lokale Thema „Veröffentlichen/Abonnieren“. Sie können andere Themen, einschließlich AWS IoT Core MQTT Themen, angeben, wenn Sie diese Komponente bereitstellen.

Diese Komponente sammelt Metriken, die sich im selben Namespace befinden, und veröffentlicht sie in regelmäßigen CloudWatch Abständen.

Anmerkung

Diese Komponente bietet ähnliche Funktionen wie der CloudWatch Metrik-Konnektor in AWS IoT Greengrass V1. Weitere Informationen finden Sie unter CloudWatch Metrik-Konnektor im AWS IoT Greengrass V1-Entwicklerhandbuch.

Versionen

Diese Komponente hat die folgenden Versionen:

  • 3.1.x

  • 3.0.x

  • 2.1.x

  • 2.0.x

Informationen zu den Änderungen in den einzelnen Versionen der Komponente finden Sie im Changelog.

Typ

v3.x

Diese Komponente ist eine generische Komponente (aws.greengrass.generic). Der Greengrass-Kern führt die Lebenszyklusskripte der Komponente aus.

v2.x

Diese Komponente ist eine Lambda-Komponente (aws.greengrass.lambda). Der Greengrass-Kern führt die Lambda-Funktion dieser Komponente mithilfe der Lambda-Launcher-Komponente aus.

Weitere Informationen finden Sie unter Komponententypen.

Betriebssystem

v3.x

Diese Komponente kann auf Kerngeräten installiert werden, auf denen die folgenden Betriebssysteme ausgeführt werden:

  • Linux

  • Windows

v2.x

Diese Komponente kann nur auf Linux-Kerngeräten installiert werden.

Voraussetzungen

Für diese Komponente gelten die folgenden Anforderungen:

3.x
  • Python-Version 3.7 wurde auf dem Core-Gerät installiert und zur PATH Umgebungsvariablen hinzugefügt.

  • Die Greengrass-Geräterolle muss die cloudwatch:PutMetricData Aktion zulassen, wie in der folgenden IAM Beispielrichtlinie gezeigt.

    { "Version": "2012-10-17", "Statement": [ { "Action": [ "cloudwatch:PutMetricData" ], "Effect": "Allow", "Resource": "*" } ] }

    Weitere Informationen finden Sie in der CloudWatchAmazon-Berechtigungsreferenz im CloudWatch Amazon-Benutzerhandbuch.

2.x
  • Ihr Kerngerät muss die Anforderungen für die Ausführung von Lambda-Funktionen erfüllen. Wenn Sie möchten, dass das Kerngerät containerisierte Lambda-Funktionen ausführt, muss das Gerät die entsprechenden Anforderungen erfüllen. Weitere Informationen finden Sie unter Anforderungen an die Lambda-Funktion.

  • Python-Version 3.7 wurde auf dem Core-Gerät installiert und zur PATH Umgebungsvariablen hinzugefügt.

  • Die Greengrass-Geräterolle muss die cloudwatch:PutMetricData Aktion zulassen, wie in der folgenden IAM Beispielrichtlinie gezeigt.

    { "Version": "2012-10-17", "Statement": [ { "Action": [ "cloudwatch:PutMetricData" ], "Effect": "Allow", "Resource": "*" } ] }

    Weitere Informationen finden Sie in der CloudWatchAmazon-Berechtigungsreferenz im CloudWatch Amazon-Benutzerhandbuch.

  • Um Ausgabedaten von dieser Komponente zu erhalten, müssen Sie das folgende Konfigurationsupdate für die ältere Abonnement-Router-Komponente (aws.greengrass.LegacySubscriptionRouter) zusammenführen, wenn Sie diese Komponente bereitstellen. Diese Konfiguration gibt das Thema an, zu dem diese Komponente Antworten veröffentlicht.

    Legacy subscription router v2.1.xLegacy subscription router v2.0.x
    Legacy subscription router v2.1.x
    { "subscriptions": { "aws-greengrass-cloudwatch": { "id": "aws-greengrass-cloudwatch", "source": "component:aws.greengrass.Cloudwatch", "subject": "cloudwatch/metric/put/status", "target": "cloud" } } }
    Legacy subscription router v2.0.x
    { "subscriptions": { "aws-greengrass-cloudwatch": { "id": "aws-greengrass-cloudwatch", "source": "arn:aws:lambda:region:aws:function:aws-greengrass-cloudwatch:version", "subject": "cloudwatch/metric/put/status", "target": "cloud" } } }
    • Ersetzen region mit dem AWS-Region , das Sie verwenden.

    • Ersetzen version mit der Version der Lambda-Funktion, die diese Komponente ausführt. Um die Version der Lambda-Funktion zu finden, müssen Sie sich das Rezept für die Version dieser Komponente ansehen, die Sie bereitstellen möchten. Öffnen Sie die Detailseite dieser Komponente in der AWS IoT Greengrass Konsole und suchen Sie nach dem Schlüssel-Wert-Paar der Lambda-Funktion. Dieses Schlüssel-Wert-Paar enthält den Namen und die Version der Lambda-Funktion.

    Wichtig

    Sie müssen die Lambda-Funktionsversion auf dem Legacy-Abonnement-Router jedes Mal aktualisieren, wenn Sie diese Komponente bereitstellen. Dadurch wird sichergestellt, dass Sie die richtige Lambda-Funktionsversion für die Komponentenversion verwenden, die Sie bereitstellen.

    Weitere Informationen finden Sie unter Erstellen von Bereitstellungen.

Endpunkte und Ports

Diese Komponente muss in der Lage sein, ausgehende Anfragen an die folgenden Endpunkte und Ports auszuführen, zusätzlich zu den Endpunkten und Ports, die für den Basisbetrieb erforderlich sind. Weitere Informationen finden Sie unter Zulassen von Gerätedatenverkehr über einen Proxy oder eine Firewall.

Endpunkt Port Erforderlich Beschreibung

monitoring.region.amazonaws.com

443 Ja

Metriken hochladen. CloudWatch

Abhängigkeiten

Wenn Sie eine Komponente bereitstellen, stellt sie AWS IoT Greengrass auch kompatible Versionen ihrer Abhängigkeiten bereit. Das bedeutet, dass Sie die Anforderungen für die Komponente und all ihre Abhängigkeiten erfüllen müssen, um die Komponente erfolgreich bereitstellen zu können. In diesem Abschnitt werden die Abhängigkeiten für die veröffentlichten Versionen dieser Komponente sowie die semantischen Versionseinschränkungen aufgeführt, die die Komponentenversionen für jede Abhängigkeit definieren. Sie können auch die Abhängigkeiten für jede Version der Komponente in der AWS IoT Greengrass Konsole anzeigen. Suchen Sie auf der Seite mit den Komponentendetails nach der Liste der Abhängigkeiten.

3.0.0 - 3.1.0

In der folgenden Tabelle sind die Abhängigkeiten für die Versionen 3.0.0 bis 3.1.0 dieser Komponente aufgeführt.

-Abhängigkeit Kompatible Versionen Art der Abhängigkeit
Grüngraskern >=2.0.0 <3.0.0 Weich
Token-Austauschdienst >=0.0.0 Hart
2.1.4 - 2.1.8

In der folgenden Tabelle sind die Abhängigkeiten für die Versionen 2.1.4 und 2.1.8 dieser Komponente aufgeführt.

-Abhängigkeit Kompatible Versionen Art der Abhängigkeit
Grüngraskern >=2.0.0 <3.0.0 Hart
Lambda-Launcher ^2.0.0 Hart
Lambda-Laufzeiten ^2,0.0 Weich
Token-Austauschdienst ^2.0.0 Hart
2.1.2 - 2.1.3

In der folgenden Tabelle sind die Abhängigkeiten für die Versionen 2.1.2 und 2.1.3 dieser Komponente aufgeführt.

-Abhängigkeit Kompatible Versionen Art der Abhängigkeit
Grüngraskern >=2.0.0 <2.8.0 Hart
Lambda-Launcher ^2.0.0 Hart
Lambda-Laufzeiten ^2,0.0 Weich
Token-Austauschdienst ^2.0.0 Hart
2.1.1

In der folgenden Tabelle sind die Abhängigkeiten für Version 2.1.1 dieser Komponente aufgeführt.

-Abhängigkeit Kompatible Versionen Art der Abhängigkeit
Grüngraskern >=2.0.0 <2.7.0 Hart
Lambda-Launcher ^2.0.0 Hart
Lambda-Laufzeiten ^2,0.0 Weich
Token-Austauschdienst ^2.0.0 Hart
2.0.8 - 2.1.0

In der folgenden Tabelle sind die Abhängigkeiten für die Versionen 2.0.8 bis 2.1.0 dieser Komponente aufgeführt.

-Abhängigkeit Kompatible Versionen Art der Abhängigkeit
Grüngraskern >=2.0.0 <2.6.0 Hart
Lambda-Launcher ^2.0.0 Hart
Lambda-Laufzeiten ^2,0.0 Weich
Token-Austauschdienst ^2.0.0 Hart
2.0.7

In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.7 dieser Komponente aufgeführt.

-Abhängigkeit Kompatible Versionen Art der Abhängigkeit
Grüngraskern >=2.0.0 <2.5.0 Hart
Lambda-Launcher ^2.0.0 Hart
Lambda-Laufzeiten ^2,0.0 Weich
Token-Austauschdienst ^2.0.0 Hart
2.0.6

In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.6 dieser Komponente aufgeführt.

-Abhängigkeit Kompatible Versionen Art der Abhängigkeit
Grüngraskern >=2.0.0 <2.4.0 Hart
Lambda-Launcher ^2.0.0 Hart
Lambda-Laufzeiten ^2,0.0 Weich
Token-Austauschdienst ^2.0.0 Hart
2.0.5

In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.5 dieser Komponente aufgeführt.

-Abhängigkeit Kompatible Versionen Art der Abhängigkeit
Grüngraskern >=2.0.0 <2.3.0 Hart
Lambda-Launcher ^2.0.0 Hart
Lambda-Laufzeiten ^2,0.0 Weich
Token-Austauschdienst ^2.0.0 Hart
2.0.4

In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.4 dieser Komponente aufgeführt.

-Abhängigkeit Kompatible Versionen Art der Abhängigkeit
Grüngraskern >=2.0.0 <2.2.0 Hart
Lambda-Launcher ^2.0.0 Hart
Lambda-Laufzeiten ^2,0.0 Weich
Token-Austauschdienst ^2.0.0 Hart
2.0.3

In der folgenden Tabelle sind die Abhängigkeiten für Version 2.0.3 dieser Komponente aufgeführt.

-Abhängigkeit Kompatible Versionen Art der Abhängigkeit
Grüngraskern >=2.0.3 <2.1.0 Hart
Lambda-Launcher >=1.0.0 Hart
Lambda-Laufzeiten >=1,0.0 Weich
Token-Austauschdienst >=1.0.0 Hart

Weitere Informationen zu Komponentenabhängigkeiten finden Sie in der Referenz zu den Komponentenrezepten.

Konfiguration

Diese Komponente stellt die folgenden Konfigurationsparameter bereit, die Sie bei der Bereitstellung der Komponente anpassen können.

v3.x
PublishInterval

(Optional) Die maximale Wartezeit in Sekunden, bis die Komponente gebündelte Metriken für einen bestimmten Namespace veröffentlicht. Um die Komponente so zu konfigurieren, dass sie Metriken so veröffentlicht, wie sie sie empfängt, d. h. ohne Batchverarbeitung, geben Sie Folgendes an. 0

Die Komponente veröffentlicht CloudWatch erst, nachdem sie 20 Metriken im selben Namespace empfangen hat, oder nach dem von Ihnen angegebenen Intervall.

Anmerkung

Die Komponente gibt nicht die Reihenfolge an, in der Ereignisse veröffentlicht werden.

Dieser Wert kann maximal 900 Sekunden betragen.

Standard: 10 Sekunden

MaxMetricsToRetain

(Optional) Die maximale Anzahl von Metriken in allen Namespaces, die im Speicher gespeichert werden sollen, bevor die Komponente sie durch neuere Metriken ersetzt.

Dieses Limit gilt, wenn das Kerngerät keine Verbindung zum Internet hat, sodass die Komponente die Metriken zwischenspeichert, um sie später zu veröffentlichen. Wenn der Puffer voll ist, ersetzt die Komponente die ältesten Metriken durch neuere. Metriken in einem bestimmten Namespace ersetzen nur Metriken im selben Namespace.

Anmerkung

Wenn der Host-Prozess für die Komponente unterbrochen wird, speichert die Komponente keine Metriken. Dies kann beispielsweise während einer Bereitstellung oder beim Neustart des Kerngeräts passieren.

Dieser Wert muss mindestens 2.000 Metriken umfassen.

Standard: 5.000 Metriken

InputTopic

(Optional) Das Thema, das die Komponente abonniert, um Nachrichten zu empfangen. Wenn Sie true für angebenPubSubToIoTCore, können Sie in diesem MQTT Thema Platzhalter (+ und #) verwenden.

Standard: cloudwatch/metric/put

OutputTopic

(Optional) Das Thema, zu dem die Komponente Statusantworten veröffentlicht.

Standard: cloudwatch/metric/put/status

PubSubToIoTCore

(Optional) Zeichenkettenwert, der definiert, ob AWS IoT Core MQTT Themen veröffentlicht und abonniert werden sollen. Unterstützte Werte sind true und false.

Standard: false

UseInstaller

(Optional) Boolescher Wert, der definiert, ob das Installationsskript in dieser Komponente verwendet werden soll, um die Abhängigkeiten dieser Komponente zu installieren. SDK

Setzen Sie diesen Wert auf, false wenn Sie ein benutzerdefiniertes Skript verwenden möchten, um Abhängigkeiten zu installieren, oder wenn Sie Laufzeitabhängigkeiten in ein vorgefertigtes Linux-Image aufnehmen möchten. Um diese Komponente verwenden zu können, müssen Sie die folgenden Bibliotheken, einschließlich aller Abhängigkeiten, installieren und sie dem standardmäßigen Greengrass-Systembenutzer zur Verfügung stellen.

Standard: true

PublishRegion

(Optional) Der Ort AWS-Region , an dem die CloudWatch Metriken veröffentlicht werden sollen. Dieser Wert überschreibt die Standardregion für das Core-Gerät. Dieser Parameter ist nur für regionsübergreifende Metriken erforderlich.

accessControl

(Optional) Das Objekt, das die Autorisierungsrichtlinie enthält, die es der Komponente ermöglicht, die angegebenen Themen zu veröffentlichen und zu abonnieren. Wenn Sie benutzerdefinierte Werte für InputTopic und angebenOutputTopic, müssen Sie die Ressourcenwerte in diesem Objekt aktualisieren.

Standard:

{ "aws.greengrass.ipc.pubsub": { "aws.greengrass.Cloudwatch:pubsub:1": { "policyDescription": "Allows access to subscribe to input topics.", "operations": [ "aws.greengrass#SubscribeToTopic" ], "resources": [ "cloudwatch/metric/put" ] }, "aws.greengrass.Cloudwatch:pubsub:2": { "policyDescription": "Allows access to publish to output topics.", "operations": [ "aws.greengrass#PublishToTopic" ], "resources": [ "cloudwatch/metric/put/status" ] } }, "aws.greengrass.ipc.mqttproxy": { "aws.greengrass.Cloudwatch:mqttproxy:1": { "policyDescription": "Allows access to subscribe to input topics.", "operations": [ "aws.greengrass#SubscribeToIoTCore" ], "resources": [ "cloudwatch/metric/put" ] }, "aws.greengrass.Cloudwatch:mqttproxy:2": { "policyDescription": "Allows access to publish to output topics.", "operations": [ "aws.greengrass#PublishToIoTCore" ], "resources": [ "cloudwatch/metric/put/status" ] } } }
Beispiel: Aktualisierung der Konfigurationszusammenführung
{ "PublishInterval": 0, "PubSubToIoTCore": true }
v2.x
Anmerkung

Die Standardkonfiguration dieser Komponente umfasst Lambda-Funktionsparameter. Wir empfehlen, dass Sie nur die folgenden Parameter bearbeiten, um diese Komponente auf Ihren Geräten zu konfigurieren.

lambdaParams

Ein Objekt, das die Parameter für die Lambda-Funktion dieser Komponente enthält. Dieses Objekt enthält die folgenden Informationen:

EnvironmentVariables

Ein Objekt, das die Parameter der Lambda-Funktion enthält. Dieses Objekt enthält die folgenden Informationen:

PUBLISH_INTERVAL

(Optional) Die maximale Wartezeit in Sekunden, bis die Komponente gebündelte Metriken für einen bestimmten Namespace veröffentlicht. Um die Komponente so zu konfigurieren, dass sie Metriken so veröffentlicht, wie sie sie empfängt, d. h. ohne Batchverarbeitung, geben Sie Folgendes an. 0

Die Komponente veröffentlicht CloudWatch erst, nachdem sie 20 Metriken im selben Namespace empfangen hat, oder nach dem von Ihnen angegebenen Intervall.

Anmerkung

Die Komponente garantiert nicht die Reihenfolge, in der Ereignisse veröffentlicht werden.

Dieser Wert kann höchstens 900 Sekunden betragen.

Standard: 10 Sekunden

MAX_METRICS_TO_RETAIN

(Optional) Die maximale Anzahl von Metriken in allen Namespaces, die im Speicher gespeichert werden sollen, bevor die Komponente sie durch neuere Metriken ersetzt.

Dieses Limit gilt, wenn das Kerngerät keine Verbindung zum Internet hat, sodass die Komponente die Metriken zwischenspeichert, um sie später zu veröffentlichen. Wenn der Puffer voll ist, ersetzt die Komponente die ältesten Metriken durch neuere. Metriken in einem bestimmten Namespace ersetzen nur Metriken im selben Namespace.

Anmerkung

Wenn der Host-Prozess für die Komponente unterbrochen wird, speichert die Komponente keine Metriken. Dies kann beispielsweise während einer Bereitstellung oder beim Neustart des Kerngeräts passieren.

Dieser Wert muss mindestens 2.000 Metriken umfassen.

Standard: 5.000 Metriken

PUBLISH_REGION

(Optional) Der Ort AWS-Region , für den die CloudWatch Metriken veröffentlicht werden sollen. Dieser Wert überschreibt die Standardregion für das Core-Gerät. Dieser Parameter ist nur für regionsübergreifende Metriken erforderlich.

containerMode

(Optional) Der Containerisierungsmodus für diese Komponente. Wählen Sie aus den folgenden Optionen aus:

  • NoContainer— Die Komponente wird nicht in einer isolierten Laufzeitumgebung ausgeführt.

  • GreengrassContainer— Die Komponente läuft in einer isolierten Laufzeitumgebung innerhalb des AWS IoT Greengrass Containers.

Standard: GreengrassContainer

containerParams

(Optional) Ein Objekt, das die Container-Parameter für diese Komponente enthält. Die Komponente verwendet diese Parameter, wenn Sie GreengrassContainer für angebencontainerMode.

Dieses Objekt enthält die folgenden Informationen:

memorySize

(Optional) Die Speichermenge (in Kilobyte), die der Komponente zugewiesen werden soll.

Der Standardwert ist 64 MB (65.535 KB).

pubsubTopics

(Optional) Ein Objekt, das die Themen enthält, in denen die Komponente den Empfang von Nachrichten abonniert. Sie können jedes Thema angeben und angeben, ob die Komponente MQTT Themen von AWS IoT Core oder lokale Themen zum Veröffentlichen/Abonnieren abonniert.

Dieses Objekt enthält die folgenden Informationen:

0— Dies ist ein Array-Index als Zeichenfolge.

Ein Objekt, das die folgenden Informationen enthält:

type

(Optional) Der Typ der Veröffentlichungs-/Abonnementnachrichten, die diese Komponente zum Abonnieren von Nachrichten verwendet. Wählen Sie aus den folgenden Optionen aus:

  • PUB_SUB — Abonnieren Sie lokale Veröffentlichen/Abonnement-Nachrichten. Wenn Sie diese Option wählen, darf das Thema keine Platzhalter enthalten. MQTT Weitere Informationen zum Senden von Nachrichten von einer benutzerdefinierten Komponente aus, wenn Sie diese Option angeben, finden Sie unterLokale Nachrichten veröffentlichen/abonnieren.

  • IOT_CORE— AWS IoT Core MQTT Nachrichten abonnieren. Wenn Sie diese Option wählen, kann das Thema MQTT Platzhalter enthalten. Weitere Informationen zum Senden von Nachrichten aus benutzerdefinierten Komponenten, wenn Sie diese Option angeben, finden Sie unterNachrichten veröffentlichen/abonnieren AWS IoT Core MQTT.

Standard: PUB_SUB

topic

(Optional) Das Thema, das die Komponente abonniert, um Nachrichten zu empfangen. Wenn Sie IotCore für angebentype, können Sie in diesem MQTT Thema Platzhalter (+und#) verwenden.

Beispiel: Aktualisierung der Konfigurationszusammenführung (Containermodus)
{ "containerMode": "GreengrassContainer" }
Beispiel: Aktualisierung der Konfigurationszusammenführung (kein Container-Modus)
{ "containerMode": "NoContainer" }

Eingabedaten

Diese Komponente akzeptiert Metriken zum folgenden Thema und veröffentlicht die Metriken unter CloudWatch. Standardmäßig abonniert diese Komponente lokale Veröffentlichungs-/Abonnementnachrichten. Weitere Informationen zum Veröffentlichen von Nachrichten aus Ihren benutzerdefinierten Komponenten in dieser Komponente finden Sie unter. Lokale Nachrichten veröffentlichen/abonnieren

Ab der Komponentenversion v3.0.0 können Sie diese Komponente optional so konfigurieren, dass sie ein MQTT Thema abonniert, indem Sie den PubSubToIoTCore Konfigurationsparameter auf setzen. true Weitere Informationen zum Veröffentlichen von Nachrichten zu einem MQTT Thema in Ihren benutzerdefinierten Komponenten finden Sie unter. Nachrichten veröffentlichen/abonnieren AWS IoT Core MQTT

Standardthema: cloudwatch/metric/put

Die Nachricht akzeptiert die folgenden Eigenschaften. Eingabenachrichten müssen im JSON Format vorliegen.

request

Die Metrik in dieser Nachricht.

Das Anforderungsobjekt enthält die Metrikdaten, in denen veröffentlicht werden soll CloudWatch. Die metrischen Werte müssen den Spezifikationen des PutMetricDataVorgangs entsprechen.

Typ: object der die folgenden Informationen enthält:

namespace

Der benutzerdefinierte Namespace für die Metrikdaten in dieser Anfrage. CloudWatch verwendet Namespaces als Container für metrische Datenpunkte.

Anmerkung

Sie können keinen Namespace angeben, der mit der reservierten Zeichenfolge beginnt. AWS/

Typ: string

Gültiges Muster: [^:].*

metricData

Die Daten für die Metrik.

Typ: object der die folgenden Informationen enthält:

metricName

Name der Metrik.

Typ: string

value

Der Wert für die Metrik.

Anmerkung

CloudWatch lehnt zu kleine oder zu große Werte ab. Der Wert muss zwischen 8.515920e-109 und 1.174271e+108 (Basis 10) oder 2e-360 und 2e360 (Basis 2) liegen. CloudWatch unterstützt keine speziellen Werte wie NaN+Infinity, und-Infinity.

Typ: double

dimensions

(Optional) Die Dimensionen für die Metrik. Dimensionen liefern zusätzliche Informationen über die Metrik und ihre Daten. Eine Metrik kann bis zu 10 Dimensionen definieren.

Diese Komponente enthält automatisch eine Dimension mit dem NamencoreName, wobei der Wert dem Namen des Kerngeräts entspricht.

Typ: array von Objekten, die jeweils die folgenden Informationen enthalten:

name

(Optional) Der Name der Dimension.

Typ: string

value

(Optional) Der Dimensionswert.

Typ: string

timestamp

(Optional) Die Zeit, zu der die metrischen Daten empfangen wurden, ausgedrückt in Sekunden in Unix-Epochenzeit.

Standardmäßig wird der Zeitpunkt verwendet, zu dem die Komponente die Nachricht empfängt.

Typ: double

Anmerkung

Wenn Sie diese Komponente zwischen den Versionen 2.0.3 und 2.0.7 verwenden, empfehlen wir, den Zeitstempel für jede Metrik separat abzurufen, wenn Sie mehrere Metriken aus einer einzigen Quelle senden. Verwenden Sie keine Variable, um den Zeitstempel zu speichern.

unit

(Optional) Die Einheit der Metrik.

Typ: string

Gültige Werte: SecondsMicroseconds,Milliseconds,Bytes,,Kilobytes,Megabytes,Gigabytes,Terabytes,Bits,Kilobits,Megabits,Gigabits,Terabits,Percent,Count,Bytes/Second,Kilobytes/Second,Megabytes/Second,Gigabytes/Second,,Terabytes/Second,Bits/Second,Kilobits/Second,Megabits/Second,Gigabits/Second,Terabits/Second,Count/Second, None

Standardeinstellung: None.

Anmerkung

Alle Kontingente, die für die CloudWatch PutMetricData API gelten, gelten für Metriken, die Sie mit dieser Komponente veröffentlichen. Die folgenden Kontingente sind besonders wichtig:

  • Limit von 40 KB für die API Nutzlast

  • 20 Metriken pro Anfrage API

  • 150 Transaktionen pro Sekunde (TPS) für PutMetricData API

Weitere Informationen finden Sie unter CloudWatch Servicekontingenten im CloudWatch Benutzerhandbuch.

Beispieleingabe
{ "request": { "namespace": "Greengrass", "metricData": { "metricName": "latency", "dimensions": [ { "name": "hostname", "value": "test_hostname" } ], "timestamp": 1539027324, "value": 123.0, "unit": "Seconds" } } }

Ausgabedaten

Diese Komponente veröffentlicht Antworten standardmäßig als Ausgabedaten zum folgenden lokalen Veröffentlichungs-/Abonnement-Thema. Weitere Informationen zum Abonnieren von Nachrichten zu diesem Thema in Ihren benutzerdefinierten Komponenten finden Sie unter. Lokale Nachrichten veröffentlichen/abonnieren

Sie können diese Komponente optional so konfigurieren, dass sie zu einem MQTT Thema veröffentlicht wird, indem Sie den PubSubToIoTCore Konfigurationsparameter auf festlegentrue. Weitere Informationen zum Abonnieren von Nachrichten zu einem MQTT Thema in Ihren benutzerdefinierten Komponenten finden Sie unterNachrichten veröffentlichen/abonnieren AWS IoT Core MQTT.

Anmerkung

Die Komponentenversionen 2.0.x veröffentlichen Antworten standardmäßig als Ausgabedaten zu einem MQTT Thema. Sie müssen das Thema subject in der Konfiguration für die ältere Abonnement-Router-Komponente als das angeben.

Standardthema: cloudwatch/metric/put/status

Beispielausgabe: Erfolg

Die Antwort umfasst den Namespace der Metrikdaten und das RequestId Feld aus der CloudWatch Antwort.

{ "response": { "cloudwatch_rid": "70573243-d723-11e8-b095-75ff2EXAMPLE", "namespace": "Greengrass", "status": "success" } }
Beispielausgabe: Fehler
{ "response" : { "namespace": "Greengrass", "error": "InvalidInputException", "error_message": "cw metric is invalid", "status": "fail" } }
Anmerkung

Wenn die Komponente einen Fehler erkennt, der erneut versucht werden kann, z. B. einen Verbindungsfehler, versucht sie erneut, im nächsten Batch zu veröffentlichen.

Lizenzen

Diese Komponente umfasst die folgende Software/Lizenzierung von Drittanbietern:

Diese Komponente wird im Rahmen der Greengrass Core Software-Lizenzvereinbarung veröffentlicht.

Lokale Protokolldatei

Diese Komponente verwendet die folgende Protokolldatei.

Linux
/greengrass/v2/logs/aws.greengrass.Cloudwatch.log
Windows
C:\greengrass\v2\logs\aws.greengrass.Cloudwatch.log
Um die Protokolle dieser Komponente einzusehen
  • Führen Sie den folgenden Befehl auf dem Kerngerät aus, um die Protokolldatei dieser Komponente in Echtzeit anzuzeigen. Ersetzen Sie /greengrass/v2 oder C:\greengrass\v2 mit dem Pfad zum AWS IoT Greengrass Stammordner.

    Linux
    sudo tail -f /greengrass/v2/logs/aws.greengrass.Cloudwatch.log
    Windows (PowerShell)
    Get-Content C:\greengrass\v2\logs\aws.greengrass.Cloudwatch.log -Tail 10 -Wait

Änderungsprotokoll

In der folgenden Tabelle werden die Änderungen in den einzelnen Versionen der Komponente beschrieben.

v3.x

Version

Änderungen

3.1.0

Fehlerkorrekturen und Verbesserungen

3.0.0

Diese Version der CloudWatch Metrikkomponente erwartet andere Konfigurationsparameter als Version 2.x. Wenn Sie eine nicht standardmäßige Konfiguration für Version 2.x verwenden und ein Upgrade von Version 2.x auf Version 3.x durchführen möchten, müssen Sie die Konfiguration der Komponente aktualisieren. Weitere Informationen finden Sie unter Konfiguration der Metrikkomponenten. CloudWatch

Neue Features
  • Integriert die Unterstützung für Kerngeräte, auf denen Windows ausgeführt wird.

  • Ändert den Komponententyp von einer Lambda-Komponente in eine generische Komponente. Diese Komponente ist jetzt nicht mehr von der älteren Abonnement-Router-Komponente abhängig, um Abonnements zu erstellen.

  • Fügt einen neuen InputTopic Konfigurationsparameter hinzu, um das Thema anzugeben, das die Komponente für den Empfang von Nachrichten abonniert.

  • Fügt einen neuen OutputTopic Konfigurationsparameter hinzu, um das Thema anzugeben, zu dem die Komponente Statusantworten veröffentlicht.

  • Fügt einen neuen PubSubToIoTCore Konfigurationsparameter hinzu, um anzugeben, ob AWS IoT Core MQTT Themen veröffentlicht und abonniert werden sollen.

  • Fügt den neuen UseInstaller Konfigurationsparameter hinzu, mit dem Sie optional das Installationsskript deaktivieren können, das Komponentenabhängigkeiten installiert.

Fehlerkorrekturen und Verbesserungen

Integriert die Unterstützung für doppelte Zeitstempel in Eingabedaten.

v2.x

Version

Änderungen

2.1.8

Die Version wurde für die Version 2.13.0 von Greengrass Nucleus aktualisiert.

2.1.3

Die Version wurde für die Version 2.11.0 von Greengrass Nucleus aktualisiert.

2.1.2

Die Version wurde für die Version 2.7.0 von Greengrass Nucleus aktualisiert.

2.1.1

Die Version wurde für die Version 2.6.0 von Greengrass Nucleus aktualisiert.

2.1.0

Neue Features

2.0.8

Fehlerkorrekturen und Verbesserungen
  • Integriert die Unterstützung für doppelte Zeitstempel in Eingabedaten.

  • Die Version wurde für die Version 2.5.0 von Greengrass Nucleus aktualisiert.

2.0.7

Die Version wurde für die Version 2.4.0 von Greengrass Nucleus aktualisiert.

2.0.6

Die Version wurde für die Version 2.3.0 von Greengrass Nucleus aktualisiert.

2.0.5

Die Version wurde für die Version 2.2.0 von Greengrass Nucleus aktualisiert.

2.0.4

Die Version wurde für die Version 2.1.0 von Greengrass Nucleus aktualisiert.

2.0.3

Erste Version

Weitere Informationen finden Sie auch unter