Erstellen Sie mithilfe der CloudWatch Amazon-Anomalieerkennung Alarme für benutzerdefinierte Metriken - AWS Prescriptive Guidance

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 Sie mithilfe der CloudWatch Amazon-Anomalieerkennung Alarme für benutzerdefinierte Metriken

Erstellt von Ram Kandaswamy () und Raheem Jiwani () AWS AWS

Übersicht

In der Amazon Web Services (AWS) Cloud können Sie Amazon verwenden, um Alarme CloudWatch zu erstellen, die Messwerte überwachen und Benachrichtigungen senden oder automatisch Änderungen vornehmen, wenn ein Schwellenwert überschritten wird.

Um zu vermeiden, dass Sie durch statische Schwellenwerte eingeschränkt werden, können Sie Alarme erstellen, die auf vergangenen Mustern basieren und Sie benachrichtigen, wenn bestimmte Messwerte außerhalb des normalen Betriebsfensters liegen. Sie könnten beispielsweise Ihre API Antwortzeiten von Amazon API Gateway aus überwachen und Benachrichtigungen über Anomalien erhalten, die Sie daran hindern, ein Service Level Agreement einzuhalten (). SLA

Dieses Muster beschreibt, wie die CloudWatch Anomalieerkennung für benutzerdefinierte Messwerte verwendet wird. Das Muster zeigt Ihnen, wie Sie eine benutzerdefinierte Metrik in Amazon CloudWatch Logs Insights erstellen oder eine benutzerdefinierte Metrik mit einer AWS Lambda-Funktion veröffentlichen und anschließend die Anomalieerkennung einrichten und Benachrichtigungen mit Amazon Simple Notification Service (AmazonSNS) erstellen.

Voraussetzungen und Einschränkungen

Voraussetzungen

  • Ein aktives AWS-Konto.

  • Ein vorhandenes SNS Thema, das für das Senden von E-Mail-Benachrichtigungen konfiguriert ist. Weitere Informationen dazu finden Sie unter Erste Schritte mit Amazon SNS in der SNS Amazon-Dokumentation.

  • Eine bestehende Anwendung, konfiguriert mit CloudWatch Logs.

Einschränkungen

  • CloudWatch Metriken unterstützen keine Millisekunden-Zeitintervalle. Weitere Informationen zur Granularität regulärer und benutzerdefinierter Metriken finden Sie auf Amazon CloudWatch FAQs.

Architektur

Das Diagramm zeigt den folgenden Workflow:

CloudWatch Verwenden eines SNS Amazon-Themas, um eine E-Mail-Benachrichtigung zu senden, wenn ein Alarm ausgelöst wird.
  1. Protokolle, die Metriken verwenden, die von CloudWatch Logs erstellt und aktualisiert wurden, werden gestreamt. CloudWatch

  2. Ein Alarm wird auf der Grundlage von Schwellenwerten ausgelöst und sendet eine Warnung zu einem Thema. SNS

  3. Amazon SNS sendet Ihnen eine E-Mail-Benachrichtigung.

Technologie-Stack

  • CloudWatch

  • AWS-Lambda

  • Amazon SNS

Tools

Epen

AufgabeBeschreibungErforderliche Fähigkeiten

Option 1 — Erstellen Sie eine benutzerdefinierte Metrik mit einer Lambda-Funktion.

Laden Sie die lambda_function.py Datei (angehängt) herunter und ersetzen Sie dann die lambda_function.py Beispieldatei im aws-lambda-developer-guideRepository in der AWS Dokumentation GitHub. Dadurch erhalten Sie eine Lambda-Beispielfunktion, die benutzerdefinierte Metriken an CloudWatch Logs sendet. Die Lambda-Funktion verwendet den Boto3 für die Integration API mit. CloudWatch 

Nachdem Sie die Lambda-Funktion ausgeführt haben, können Sie sich bei der AWS Management Console anmelden, die CloudWatch Konsole öffnen und die veröffentlichte Metrik ist in Ihrem veröffentlichten Namespace verfügbar.

DevOps Ingenieur, AWS DevOps

Option 2 — Erstellen Sie benutzerdefinierte Metriken aus CloudWatch Protokollgruppen.

Melden Sie sich bei der AWS Management Console an, öffnen Sie die CloudWatch Konsole und wählen Sie dann Protokollgruppen aus. Wählen Sie die Protokollgruppe aus, für die Sie eine Metrik erstellen möchten. 

Wählen Sie Aktionen und dann Metrikfilter erstellen aus. Geben Sie unter Filtermuster das Filtermuster ein, das Sie verwenden möchten. Weitere Informationen finden Sie in der CloudWatch Dokumentation unter Filter- und Mustersyntax

Um Ihr Filtermuster zu testen, geben Sie unter Testmuster ein oder mehrere Protokollereignisse ein. Jedes Protokollereignis muss innerhalb einer einzelnen Zeile liegen, da Zeilenumbrüche verwendet werden, um Protokollereignisse im Anzeigebereich Log event messages (Ereignismeldungen protokollieren) zu trennen. Nachdem Sie das Muster getestet haben, können Sie unter Metrikdetails einen Namen und einen Wert für Ihre Metrik eingeben. 

Weitere Informationen und Schritte zum Erstellen einer benutzerdefinierten Metrik finden Sie in der CloudWatch Dokumentation unter Erstellen eines Metrikfilters für eine Protokollgruppe.

DevOps Ingenieur, AWS DevOps

Erstellen Sie einen Alarm für Ihre benutzerdefinierte Metrik.

Wählen Sie auf der CloudWatch Konsole Alarme und dann Create Alarm aus. Wählen Sie Metrik auswählen und geben Sie den Namen der Metrik, die Sie zuvor erstellt haben, in das Suchfeld ein. Wählen Sie den Tab Graphed Metrics und konfigurieren Sie die Optionen entsprechend Ihren Anforderungen.

Wählen Sie unter Bedingungen die Option Anomalieerkennung statt Statische Schwellenwerte aus. Dies zeigt Ihnen ein Band, das auf zwei standardmäßigen Standardabweichungen basiert. Sie können Schwellenwerte einrichten und diese an Ihre Anforderungen anpassen.

Wählen Sie Weiter.

Anmerkung

Das Band ist dynamisch und hängt von der Qualität der Datenpunkte ab. Wenn Sie mit der Aggregation weiterer Daten beginnen, werden das Band und die Schwellenwerte automatisch aktualisiert. 

DevOps Ingenieur, AWS DevOps

SNSBenachrichtigungen einrichten.

Wählen Sie unter Benachrichtigung das SNS Thema aus, das benachrichtigt werden soll, wenn sich der Alarm im ALARM Status, OK Status oder INSUFFICIENT_DATA Status befindet.

Um zu erreichen, dass der Alarm mehrere Benachrichtigungen für den gleichen Alarmstatus oder für verschiedene Statuswerte sendet, wählen Sie Benachrichtigung hinzufügen. Wählen Sie Weiter. Geben Sie einen Namen und eine Beschreibung für den Alarm ein. Der Name darf nur ASCII Zeichen enthalten. Wählen Sie anschließend Weiter.

Vergewissern Sie sich unter Vorschau und Erstellen, dass die Informationen und Bedingungen korrekt sind, und wählen Sie dann Alarm erstellen aus.

DevOps Ingenieur, AWS DevOps

Zugehörige Ressourcen

Anlagen

Um auf zusätzliche Inhalte zuzugreifen, die mit diesem Dokument verknüpft sind, entpacken Sie die folgende Datei: attachment.zip