Erstellen einer - EventBridge Regel zum Erfassen von Gruppenlebenszyklusereignissen und zum Veröffentlichen von Benachrichtigungen - AWS Resource Groups

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.

Erstellen einer - EventBridge Regel zum Erfassen von Gruppenlebenszyklusereignissen und zum Veröffentlichen von Benachrichtigungen

Sie können Gruppenlebenszyklusereignisse für Ihre Ressourcengruppen in aktivierenAWS Resource Groups, um Ereignisse in Amazon zu veröffentlichen EventBridge. Anschließend können Sie Regeln erstellen EventBridge, die auf diese Ereignisse reagieren, indem Sie sie AWS-Services zur weiteren Verarbeitung an andere senden.

AWS CLI

Der Prozess zum Erstellen einer Regel in EventBridge , die Ereignisse erfasst und an den gewünschten Zielservice sendet, verwendet zwei separate CLI-Befehle:

Schritt 1: Erstellen der EventBridge Regel zur Erfassung der Ereignisse

Mit dem folgenden AWS CLI put-rule Beispielbefehl wird eine EventBridge Regel erstellt, die all eLebenszyklusereignisänderungen für Ressourcengruppen erfasst.

$ aws events put-rule \ --name "CatchAllResourceGroupEvents" \ --event-pattern '{"source":["aws.resource-groups"]}' { "RuleArn": "arn:aws:events:us-east-1:123456789012:rule/CatchAllResourceGroupEvents" }

Die Ausgabe enthält den Amazon-Ressourcennamen (ARN) der neuen Regel.

Anmerkung

Parameterwerte, die Zeichenfolgen in Anführungszeichen enthalten, haben je nach verwendetem Betriebssystem und Shell unterschiedliche Formatierungsregeln. Für die Beispiele in diesem Handbuch zeigen wir Befehle, die auf einer Linux-BASH-Shell funktionieren. Anweisungen zum Formatieren von Zeichenfolgen mit eingebetteten Anführungszeichen für andere Betriebssysteme, z. B. die Windows-Eingabeaufforderung, finden Sie unter Verwenden von Anführungszeichen in Zeichenfolgen im AWS Command Line Interface -Benutzerhandbuch.

Wenn Parameterzeichenfolgen komplexer werden, kann es einfacher und weniger fehleranfällig sein, einen Parameterwert aus einer Textdatei zu akzeptieren, anstatt ihn direkt in die Befehlszeile einzugeben.

Das folgende Ereignismuster beschränkt die Ereignisse auf diejenigen, die sich auf die angegebene Gruppe beziehen, die durch ihren ARN identifiziert wird. Dieses Ereignismuster ist eine komplexe JSON-Zeichenfolge, die viel weniger lesbar ist, wenn sie in eine einzeilige, ordnungsgemäß mit Escape-Zeichen versehene JSON-Zeichenfolge komprimiert wird. Sie können sie stattdessen in einer Datei speichern.

Speichern Sie die JSON-Zeichenfolge des Ereignismusters in einer Datei. Im folgenden Codebeispiel lautet die Datei eventpattern.txt.

{ "source": [ "aws.resource-groups" ], "detail": { "group": { "arn": [ "my-resource-group-arn" ] } } }

Führen Sie dann den folgenden Befehl aus, um die Regel zu erstellen und das benutzerdefinierte Ereignismuster aus der Datei abzurufen.

$ aws events put-rule \ --name "CatchResourceGroupEventsForMyGroup" \ --event-pattern file://eventpattern.txt { "RuleArn": "arn:aws:events:us-east-1:123456789012:rule/CatchResourceGroupEventsForMyGroup" }

Um andere Arten von Resource-Groups-Ereignissen zu erfassen, ersetzen Sie die --event-pattern Zeichenfolge durch Filter wie die im Abschnitt Beispiel für EventBridge benutzerdefinierte Ereignismuster für verschiedene Anwendungsfälle.

Schritt 2: Anfügen eines Ziels, das die Ereignisse verarbeiten kann, an die EventBridge Regel

Da Sie nun über eine Regel verfügen, die die für Sie interessanten Ereignisse erfasst, können Sie ein oder mehrere Ziele anfügen, um eine Art der Verarbeitung der Ereignisse durchzuführen.

Der folgende AWS CLI put-targets Befehl fügt ein Amazon Simple Notification Service (Amazon SNS)-Thema mit dem Namen my-sns-topic an die Regel an, die Sie im vorherigen Beispiel erstellt haben. Alle Subscriber des Themas erhalten eine Benachrichtigung, wenn eine Änderung an der in der Regel angegebenen Gruppe auftritt.

$ aws events put-targets \ --rule CatchResourceGroupEventsForMyGroup \ --targets Id=1,Arn=arn:aws:sns:us-east-1:123456789012:my-sns-topic { "FailedEntryCount": 0, "FailedEntries": [] }

Zu diesem Zeitpunkt werden alle Gruppenänderungen, die dem Ereignismuster in Ihrer Regel entsprechen, automatisch an das konfigurierte Ziel oder die konfigurierten Ziele gesendet. Wenn es sich bei dem Ziel wie im vorherigen Beispiel um ein Amazon SNS-Thema handelt, erhalten alle Abonnenten des Themas eine Nachricht, die das Ereignis enthält, wie unter beschriebenStruktur und Syntax von Resource-Groups-Lebenszyklusereignissen.

Weitere Informationen finden Sie in den folgenden Ressourcen:

Erstellen einer Regel, um nur bestimmte Gruppenlebenszyklus-Ereignistypen zu erfassen

Sie können eine Regel mit einem benutzerdefinierten Ereignismuster erstellen, das nur die Ereignisse erfasst, an denen Sie interessiert sind. Ausführliche Informationen zum Filtern eingehender Ereignisse mithilfe eines benutzerdefinierten Ereignismusters finden Sie unter Amazon- EventBridge Ereignisse im Amazon- EventBridge Benutzerhandbuch.

Angenommen, Sie möchten, dass eine Regel nur die Ressourcengruppen-Benachrichtigungen verarbeitet, die die Erstellung einer neuen Ressourcengruppe angeben. Sie könnten ein benutzerdefiniertes Ereignismuster ähnlich dem folgenden Beispiel verwenden.

{ "source": [ "aws.resource-groups" ], "detail-type": [ "ResourceGroups Group State Change" ], "detail": { "state-change": "create" } }

Dieser Filter erfasst nur die Ereignisse, die genau diese Werte in den angegebenen Feldern haben. Eine vollständige Liste der Felder, die Sie abgleichen können, finden Sie unter Struktur und Syntax von Resource-Groups-Lebenszyklusereignissen.