AWS IoT SiteWise Alarme mit AWS IoT TwinMaker Grafana-Dashboards verbinden - AWS IoT TwinMaker

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.

AWS IoT SiteWise Alarme mit AWS IoT TwinMaker Grafana-Dashboards verbinden

Anmerkung

Diese Funktion befindet sich in der öffentlichen Vorschauversion und kann sich ändern.

AWS IoT TwinMaker ist in der Lage, Alarme AWS IoT SiteWise und Ereignisse in AWS IoT TwinMaker Komponenten zu importieren. Auf diese Weise können Sie den Alarmstatus abfragen und Alarmschwellenwerte konfigurieren, ohne einen benutzerdefinierten Datenkonnektor für die AWS IoT SiteWise Datenmigration implementieren zu müssen. Sie können das AWS IoT TwinMaker Grafana-Plugin verwenden, um den Alarmstatus zu visualisieren und den Alarmschwellenwert in Grafana zu konfigurieren, ohne API-Aufrufe zu tätigen AWS IoT TwinMaker oder direkt mit AWS IoT SiteWise Alarmen zu interagieren.

AWS IoT SiteWise Voraussetzungen für die Alarmkonfiguration

Bevor Sie Alarme erstellen und in Ihr Grafana-Dashboard integrieren, stellen Sie sicher, dass Sie die folgenden Voraussetzungen überprüft haben:

  • Machen Sie sich mit dem AWS IoT SiteWise Modell und dem Asset-System vertraut. Weitere Informationen finden Sie unter Erstellen von Asset-Modellen und Erstellen von Assets im AWS IoT SiteWise Benutzerhandbuch.

  • Machen Sie sich mit den IoT-Events-Alarmmodellen vertraut und erfahren Sie, wie Sie sie an ein AWS IoT SiteWise Modell anhängen. Weitere Informationen finden Sie im AWS IoT SiteWise Benutzerhandbuch unter Definieren von AWS IoT Ereignisalarmen.

  • Integrieren Sie AWS IoT TwinMaker sich in Grafana, damit Sie auf Ihre AWS IoT TwinMaker Ressourcen in Grafana zugreifen können. Weitere Informationen finden Sie unter AWS IoT TwinMaker Grafana-Dashboard-Integration.

Definieren Sie die AWS IoT SiteWise IAM-Rolle der Alarmkomponente

AWS IoT TwinMaker verwendet die Workspace-IAM-Rolle, um den Alarmschwellenwert in Grafana abzufragen und zu konfigurieren. Die folgenden Berechtigungen sind in der AWS IoT TwinMaker Workspace-Rolle erforderlich, um mit AWS IoT SiteWise Alarmen in Grafana interagieren zu können:

{ "Effect": "Allow", "Action": [ "iotevents:DescribeAlarmModel", ], "Resource": ["{IoTEventsAlarmModelArn}"] },{ "Effect": "Allow", "Action": [ "iotsitewise:BatchPutAssetPropertyValue" ], "Resource": ["{IoTSitewiseAssetArn}"] }

Erstellen Sie in der AWS IoT TwinMaker Konsole eine Entität, die Ihr AWS IoT SiteWise Asset darstellt. Stellen Sie sicher, dass Sie eine Komponente für diese Entität hinzufügen, die com.amazon.iotsitewise.alarm als Komponententyp verwendet wird, und wählen Sie die entsprechenden Asset- und Alarmmodelle aus.

Der Bildschirm „Komponente hinzufügen“ zeigt eine Komponente vom Typ com.amazon.iotsitewise.alarm.

Der obige Screenshot ist ein Beispiel für die Erstellung dieser Entität mit dem Typ. com.amazon.iotsitewise.alarm

Wenn Sie diese Komponente erstellen, AWS IoT TwinMaker werden automatisch die zugehörigen Alarm-Eigenschaften aus AWS IoT SiteWise und importiert AWS IoT Events. Sie können dieses Typmuster für Alarmkomponenten wiederholen, um Alarmkomponenten für alle in Ihrem Workspace benötigten Ressourcen zu erstellen.

Abfragen und Aktualisierungen über die AWS IoT TwinMaker API

Nachdem Sie die Alarmkomponenten erstellt haben, können Sie den Alarmstatus und den Schwellenwert über die AWS IoT TwinMaker API abfragen und die Alarmschwellenwerte aktualisieren.

Im Folgenden finden Sie ein Beispiel für eine Anfrage zur Abfrage des Alarmstatus:

aws iottwinmaker get-property-value-history --cli-input-json \ '{ "workspaceId": "{workspaceId}", "entityId": "{entityId}", "componentName": "{componentName}", "selectedProperties": ["alarm_status"], "startTime": "{startTimeIsoString}", "endTime": "{endTimeIsoString}" }'

Im Folgenden finden Sie ein Beispiel für eine Anfrage zur Abfrage des Alarmschwellenwerts.

aws iottwinmaker get-property-value-history --cli-input-json \ '{ "workspaceId": "{workspaceId}", "entityId": "{entityId}", "componentName": "{componentName}", "selectedProperties": ["alarm_threshold"], "startTime": "{startTimeIsoString}", "endTime": "{endTimeIsoString}" }'

Im Folgenden finden Sie ein Beispiel für eine Anfrage zur Aktualisierung des Alarmschwellenwerts:

aws iottwinmaker batch-put-property-values --cli-input-json \ '{ "workspaceId": "{workspaceId}", "entries": [ { "entityPropertyReference": { "entityId": "{entityId}", "componentName": "{componentName}", "propertyName": "alarm_threshold" }, "propertyValues": [ { "value": { "doubleValue": "{newThreshold}" }, "time": "{effectiveTimeIsoString}" } ] } ] }'

Konfigurieren Sie Ihr Grafana-Dashboard für Alarme

Es muss eine zweite Dashboard-IAM-Rolle mit Schreibzugriff erstellt werden. Dies ist eine normale Rolle, aber mit der Berechtigung, dass die Aktion iottwinmaker:BatchPutPropertyValues zum TwinMaker Workspace-Arn hinzugefügt werden kann, wie im folgenden Beispiel.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iottwinmaker:Get*", "iottwinmaker:List*", "iottwinmaker:BatchPutPropertyValues" ], "Resource": [ "{workspaceArn}", "{workspaceArn}/*" ] }, { "Effect": "Allow", "Action": "iottwinmaker:ListWorkspaces", "Resource": "*" } ] }

Alternativ können Sie stattdessen diese Aussage am Ende Ihrer IAM-Rolle hinzufügen:

{ "Effect": "Allow", "Action": [ "iottwinmaker:BatchPutPropertyValues" ], "Resource": [ "{workspaceArn}", "{workspaceArn}/*" ] }

Für die Datenquelle muss der Write-ARN mit der Dashboard-Write-Rolle festgelegt sein, die Sie erstellt haben.

Nachdem Sie Ihre IAM-Rolle geändert haben, melden Sie sich in Ihrem Grafana-Dashboard an, um die aktualisierte Rolle arn anzunehmen. Aktivieren Sie das Kontrollkästchen Schreibberechtigungen für das Alarm Configuration Panel definieren und kopieren Sie den ARN für die Rolle Write.

Die Registerkarte „Einstellungen“ des Grafana-Dashboards mit aktiviertem Kontrollkästchen und hervorgehobenem Arn-Eingabefeld.

Verwenden Sie das Grafana-Dashboard zur Alarmvisualisierung

Gehen Sie wie folgt vor, um Ihrem Dashboard ein Alarmkonfigurationsfeld hinzuzufügen und es zu konfigurieren:

  1. Wählen Sie den Arbeitsbereich in den Panel-Optionen aus.

  2. Stellen Sie Ihre Datenquelle in der Abfragekonfiguration ein.

  3. Verwenden Sie den folgenden Abfragetyp:. Get Property Value History by Entity

  4. Wählen Sie eine Entität oder Entitätsvariable aus, der Sie einen Alarm hinzufügen möchten.

  5. Nachdem Sie die Entität ausgewählt haben, wählen Sie eine Komponente oder Komponentenvariable aus, auf die Sie eine Eigenschaft anwenden möchten.

  6. Wählen Sie für die Eigenschaft: alarm_status undalarm_threshold.

    Wenn die Verbindung hergestellt ist, sollten Sie die ID für die Alarm-ID und den aktuellen Schwellenwert sehen.

    Anmerkung

    In der öffentlichen Vorschau werden keine Benachrichtigungen angezeigt. Sie sollten Ihren Alarmstatus und den Schwellenwert überprüfen, um sicherzustellen, dass die Eigenschaften korrekt angewendet wurden.

  7. Es sollte die standardmäßige Abfragereihenfolge „Aufsteigend“ verwendet werden, damit der neueste Wert angezeigt wird.

  8. Der Filterbereich der Abfrage kann leer gelassen werden. Eine vollständige Konfiguration ist unten abgebildet:

    Das Alarmkonfigurationstest-/-Edit-Panel von Grafana Labs mit einer vollständigen Konfiguration.
  9. Mit der Schaltfläche „Alarm bearbeiten“ können Sie einen Dialog aufrufen, in dem Sie den aktuellen Alarmschwellenwert ändern können.

  10. Wählen Sie Speichern, um den neuen Schwellenwert festzulegen.

    Das Dialogfeld „Alarm bearbeiten“ mit den Schaltflächen „Abbrechen“ und „Speichern“.
    Anmerkung

    Dieses Fenster sollte nur mit einem Live-Zeitbereich verwendet werden, der die Gegenwart einschließt. Wenn Sie es für Zeitbereiche verwenden, die in der Vergangenheit enden und beginnen, werden möglicherweise unerwartete Werte angezeigt, wenn Alarmschwellenwerte immer als aktueller Schwellenwert bearbeitet werden.