Verwenden von Amazon- CloudWatch Alarmen - Amazon CloudWatch

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.

Verwenden von Amazon- CloudWatch Alarmen

Sie können Metrik- und zusammengesetzte Alarme in Amazon erstellen CloudWatch.

  • Ein Metrikalarm überwacht eine einzelne CloudWatch Metrik oder das Ergebnis eines mathematischen Ausdrucks basierend auf CloudWatch Metriken. Der Alarm führt eine oder mehrere Aktionen durch, die vom Wert der Metrik oder des Ausdrucks im Vergleich zu einem Schwellenwert in einer Reihe von Zeiträumen abhängt. Die Aktion kann das Senden einer Benachrichtigung an ein Amazon SNS-Thema, das Ausführen einer Amazon EC2-Aktion oder einer Amazon EC2-Auto Scaling-Aktion oder das Erstellen eines OpsItem - oder -Vorfalls in Systems Manager sein.

  • Ein zusammengesetzter Alarm enthält einen Regelausdruck, der die Alarmstatus anderer Alarme, die Sie erstellt haben, berücksichtigt. Der zusammengesetzte Alarm geht nur dann in den ALARM-Status über, wenn alle Bedingungen der Regel erfüllt sind. Die im Regelausdruck eines zusammengesetzten Alarms angegebenen Alarme können Metrikalarme und andere zusammengesetzte Alarme umfassen.

    Die Verwendung zusammengesetzter Alarme kann das Alarmrauschen reduzieren. Sie können mehrere metrische Alarme erstellen und auch einen zusammengesetzten Alarm erstellen und Alarme nur für den zusammengesetzten Alarm einrichten. Beispielsweise kann ein zusammengesetzter Alarm nur dann in den ALARM-Status übergehen, wenn sich alle zugrunde liegenden Metrikalarme im ALARM-Status befinden.

    Zusammengesetzte Alarme können Amazon SNS-Benachrichtigungen senden, wenn sie den Status ändern, und können Systems Manager OpsItems oder Vorfälle erstellen, wenn sie in den ALARM-Status wechseln, aber keine EC2-Aktionen oder Auto Scaling-Aktionen ausführen.

Anmerkung

Sie können in Ihrem AWS-Konto so viele Alarme erstellen, wie Sie möchten.

Sie können Dashboards mit Alarmen versehen, so dass Sie Ihre AWS-Ressourcen und Anwendungen über mehrere Regionen hinweg überwachen und Warnmeldungen erhalten können. Nachdem Sie einen Alarm zu einem Dashboard hinzugefügt haben, wird der Alarm grau, wenn er sich im INSUFFICIENT_DATA-Zustand befindet, und rot, wenn er sich im ALARM-Zustand befindet. Der Alarm wird ohne Farbe angezeigt, wenn er sich im OK-Zustand befindet.

Sie können auch kürzlich besuchte Alarme über die Option Favoriten und kürzlich aufgerufene im Navigationsbereich der CloudWatch Konsole als Favorit markieren. Die Option Favoriten und kürzlich aufgerufene enthält Spalten für Ihre bevorzugten Alarme und die zuletzt besuchten Alarme.

Ein Alarm ruft Aktionen nur auf, wenn sich der Status des Alarms ändert. Eine Ausnahme bilden Alarme mit Auto-Scaling-Aktionen. Bei Auto-Scaling-Aktionen ruft der Alarm die Aktion weiterhin einmal pro Minute auf, sodass der Alarm im neuen Zustand bleibt.

Ein Alarm kann eine Metrik im selben Konto beobachten. Wenn Sie die kontoübergreifende Funktionalität in Ihrer CloudWatch Konsole aktiviert haben, können Sie auch Alarme erstellen, die Metriken in anderen AWS Konten überwachen. Das Erstellen von kontoübergreifenden zusammengesetzten Alarmen wird nicht unterstützt. Das Erstellen von kontoübergreifenden Alarmen, die mathematische Ausdrücke verwenden, wird unterstützt, außer dass die ANOMALY_DETECTION_BAND-, INSIGHT_RULE- und SERVICE_QUOTA-Funktionen für kontoübergreifende Alarme nicht unterstützt werden.

Anmerkung

CloudWatch testet oder validiert die von Ihnen angegebenen Aktionen nicht und erkennt auch keine Amazon EC2 Auto Scaling- oder Amazon SNS-Fehler, die sich aus dem Versuch ergeben, nicht vorhandene Aktionen aufzurufen. Stellen Sie sicher, dass die Alarmaktionen vorhanden sind.

Metrikalarm-Status

Ein Metrikalarm kann die folgenden Status aufweisen:

  • OK – Die Metrik oder der Ausdruck liegt innerhalb des festgelegten Schwellenwerts.

  • ALARM – Die Metrik oder der Ausdruck liegt außerhalb des festgelegten Schwellenwerts.

  • INSUFFICIENT_DATA – Der Alarm wurde soeben gestartet; die Metrik ist nicht verfügbar oder es sind nicht genügend Daten verfügbar, damit die Metrik den Alarmstatus bestimmen kann.

Auswerten eines Alarms

Wenn Sie einen Alarm erstellen, geben Sie drei Einstellungen an, CloudWatch mit denen ausgewertet werden kann, wann der Alarmstatus geändert werden soll:

  • Zeitraum ist die Zeitspanne, die für die Auswertung der Metrik oder des Ausdrucks verwendet wird, um jeden einzelnen Datenpunkt für einen Alarm zu erstellen. Sie wird in Sekunden angegeben.

  • Evaluation Periods (Auswertungszeiträume) ist die Anzahl der neuesten Zeiträume, oder Datenpunkte, die beim Ermitteln des Alarmzustands zu bewerten sind.

  • Datapoints to Alarm (Datenpunkte zum Alarm) ist die Anzahl der Datenpunkte innerhalb des Auswertungszeitraums, die überschritten werden müssen, um zu bewirken, dass der Alarm in den ALARM-Status versetzt wird. Die überschrittenen Datenpunkte müssen nicht aufeinanderfolgend sein, aber sie müssen alle innerhalb der letzten Datenpunkte liegen (dem Auswertungszeitraum entsprechend).

Für einen Zeitraum von einer Minute oder länger wird jede Minute ein Alarm ausgewertet, und die Auswertung basiert auf dem durch den Zeitraum und die Bewertungszeiträume definierten Zeitfenster. Wenn der Zeitraum beispielsweise 5 Minuten (300 Sekunden) und der Bewertungszeiträume 1 ist, wird der Alarm am Ende von Minute 5 auf der Grundlage von Daten zwischen Minuten 1 und 5 ausgewertet. Am Ende von Minute 6 wird der Alarm dann auf der Grundlage der Daten aus den Minuten 2 bis 6 ausgewertet.

Wenn der Alarmzeitraum 10 Sekunden oder 30 Sekunden beträgt, wird der Alarm alle 10 Sekunden ausgewertet.

In der folgenden Abbildung ist die Alarmschwelle für einen Metrikalarm auf drei Einheiten festgelegt. Sowohl der Auswertungszeitraum als auch die Datenpunkte zum Alarm sind 3. Das heißt, wenn alle vorhandenen Datenpunkte in den letzten drei aufeinanderfolgenden Perioden über dem Schwellenwert liegen, wechselt der Alarm in den Status ALARM. In der Abbildung geschieht dies im dritten bis zum fünften Zeitraum. Bei Zeitraum 6 fällt der Wert unter den Schwellenwert, sodass einer der auszuwertenden Zeiträume keinen Schwellenwert verletzt, und der Alarmstatus ändert sich wieder in OK. Im neunten Zeitraum wird der Schwellenwert erneut verletzt, jedoch nur für einen Zeitraum. Daher bleibt der Alarmstatus OK.


        Alarm zum Auslösen des Schwellenwertalarms

Wenn Sie Evaluation Periods (Auswertungszeiträume) und Datapoints to Alarm (Datenpunkte zum Alarm) als unterschiedliche Werte konfigurieren, legen Sie einen „M von N“-Alarm fest. Datapoints to Alarm (Datenpunkte zum Alarm) ist („M“), Evaluation Periods (Auswertungszeiträume) ist („N“). Das Auswertungsintervall ist die Anzahl der Auswertungsperioden multipliziert mit der Zeitraumlänge. Wenn Sie beispielsweise 4 von 5 Datenpunkten mit einem Zeitraum von 1 Minute konfigurieren, beträgt das Auswertungsintervall 5 Minuten. Wenn Sie 3 von 3 Datenpunkten mit einem Zeitraum von 10 Minuten konfigurieren, beträgt das Auswertungsintervall 30 Minuten.

Anmerkung

Wenn Datenpunkte kurz nach dem Erstellen eines Alarms fehlen und die Metrik CloudWatch vor dem Erstellen des Alarms an gemeldet wurde, CloudWatch ruft die neuesten Datenpunkte aus ab, bevor der Alarm bei der Auswertung des Alarms erstellt wurde.

Alarmaktionen

Sie können angeben, welche Aktionen ein Alarm ausführt, wenn er den Zustand zwischen den Zuständen OK, ALARM und INSUPFIZIENT_DATA ändert.

Die meisten Aktionen können für den Übergang in jeden der drei Zustände festgelegt werden. Mit Ausnahme der Auto-Scaling-Aktionen finden die Aktionen nur bei Zustandsübergängen statt und werden nicht erneut ausgeführt, wenn der Zustand über Stunden oder Tage anhält. Die Tatsache, dass für einen Alarm mehrere Aktionen zulässig sind, können Sie nutzen, um eine E-Mail zu senden, wenn ein Schwellenwert durchbrochen wird, und dann eine weitere, wenn die Durchbrechungsbedingung endet. So können Sie überprüfen, ob Ihre Skalierungs- oder Wiederherstellungsaktionen wie erwartet ausgelöst werden und wie gewünscht funktionieren.

Folgende Aktionen werden als Alarmaktionen unterstützt.

Lambda-Alarmaktionen

CloudWatch Alarme garantieren einen asynchronen Aufruf der Lambda-Funktion für eine bestimmte Statusänderung, außer in den folgenden Fällen:

  • Wenn die Funktion nicht vorhanden ist.

  • Wenn nicht berechtigt CloudWatch ist, die Lambda-Funktion aufzurufen.

Wenn den Lambda-Service nicht erreichen CloudWatch kann oder die Nachricht aus einem anderen Grund abgelehnt wird, versucht es CloudWatch erneut, bis der Aufruf erfolgreich ist. Lambda stellt die Nachricht in die Warteschlange und verarbeitet Ausführungswiederholungen. Weitere Informationen zu diesem Ausführungsmodell, einschließlich Informationen darüber, wie Lambda Fehler behandelt, finden Sie unter Asynchroner Aufruf im -AWS LambdaEntwicklerhandbuch.

Sie können eine Lambda-Funktion im selben Konto oder in anderen AWS Konten aufrufen.

Wenn Sie einen Alarm angeben, um eine Lambda-Funktion als Alarmaktion aufzurufen, können Sie wählen, ob Sie den Funktionsnamen, den Funktionsalias oder eine bestimmte Version einer Funktion angeben möchten.

Wenn Sie eine Lambda-Funktion als Alarmaktion angeben, müssen Sie eine Ressourcenrichtlinie für die Funktion erstellen, damit der CloudWatch Service-Prinzipal die Funktion aufrufen kann.

Eine Möglichkeit dies zu tun ist mit der AWS CLI, wie im folgenden Beispiel gezeigt:

aws lambda add-permission \ --function-name my-function-name \ --statement-id AlarmAction \ --action 'lambda:InvokeFunction' \ --principal lambda.alarms.cloudwatch.amazonaws.com \ --source-account 111122223333 \ --source-arn arn:aws:cloudwatch:us-east-1:111122223333:alarm:alarm-name

Alternativ können Sie eine Richtlinie erstellen, die einem der folgenden Beispiele ähnelt, und sie dann der Funktion zuweisen.

Im folgenden Beispiel wird das Konto angegeben, in dem sich der Alarm befindet, sodass nur Alarme in diesem Konto (111122223333) die Funktion aufrufen können.

{ "Version": "2012-10-17", "Id": "default", "Statement": [ { "Sid": "AlarmAction", "Effect": "Allow", "Principal": { "Service": "lambda.alarms.cloudwatch.amazonaws.com" }, "Action": "lambda:InvokeFunction", "Resource": "arn:aws:lambda:us-east-1:444455556666:function:function-name", "Condition": { "StringEquals": { "AWS:SourceAccount": "111122223333" } } } }

Das folgende Beispiel hat einen engeren Gültigkeitsbereich, sodass nur der angegebene Alarm im angegebenen Konto die Funktion aufrufen kann.

{ "Version": "2012-10-17", "Id": "default", "Statement": [ { "Sid": "AlarmAction", "Effect": "Allow", "Principal": { "Service": "lambda.alarms.cloudwatch.amazonaws.com" }, "Action": "lambda:InvokeFunction", "Resource": "arn:aws:lambda:us-east-1:444455556666:function:function-name", "Condition": { "StringEquals": { "AWS:SourceAccount": "111122223333", "AWS:SourceArn": "arn:aws:cloudwatch:us-east-1:111122223333:alarm:alarm-name" } } } }

Es wird nicht empfohlen, eine Richtlinie zu erstellen, in der kein Quellkonto angegeben ist, da solche Richtlinien anfällig für „Probleme durch verwirrte Stellvertreter“ sind.

Von CloudWatch an Lambda gesendetes Ereignisobjekt

Wenn Sie eine Lambda-Funktion als Alarmaktion konfigurieren, CloudWatch stellt der Lambda-Funktion beim Aufruf der Funktion eine JSON-Nutzlast bereit. Diese JSON-Nutzlast dient als Ereignisobjekt für die Funktion. Sie können Daten aus diesem JSON-Objekt extrahieren und in Ihrer Funktion verwenden. Das folgende ist ein Beispiel eines Ereignisobjekts aus einem Metrikalarm.

{ 'source': 'aws.cloudwatch', 'alarmArn': 'arn:aws:cloudwatch:us-east-1:444455556666:alarm:lambda-demo-metric-alarm', 'accountId': '444455556666', 'time': '2023-08-04T12:36:15.490+0000', 'region': 'us-east-1', 'alarmData': { 'alarmName': 'lambda-demo-metric-alarm', 'state': { 'value': 'ALARM', 'reason': 'test', 'timestamp': '2023-08-04T12:36:15.490+0000' }, 'previousState': { 'value': 'INSUFFICIENT_DATA', 'reason': 'Insufficient Data: 5 datapoints were unknown.', 'reasonData': '{"version":"1.0","queryDate":"2023-08-04T12:31:29.591+0000","statistic":"Average","period":60,"recentDatapoints":[],"threshold":5.0,"evaluatedDatapoints":[{"timestamp":"2023-08-04T12:30:00.000+0000"},{"timestamp":"2023-08-04T12:29:00.000+0000"},{"timestamp":"2023-08-04T12:28:00.000+0000"},{"timestamp":"2023-08-04T12:27:00.000+0000"},{"timestamp":"2023-08-04T12:26:00.000+0000"}]}', 'timestamp': '2023-08-04T12:31:29.595+0000' }, 'configuration': { 'description': 'Metric Alarm to test Lambda actions', 'metrics': [ { 'id': '1234e046-06f0-a3da-9534-EXAMPLEe4c', 'metricStat': { 'metric': { 'namespace': 'AWS/Logs', 'name': 'CallCount', 'dimensions': { 'InstanceId': 'i-12345678' } }, 'period': 60, 'stat': 'Average', 'unit': 'Percent' }, 'returnData': True } ] } } }

Das folgende ist ein Beispiel eines Ereignisobjekts aus einem zusammengesetzten Alarm.

{ 'source': 'aws.cloudwatch', 'alarmArn': 'arn:aws:cloudwatch:us-east-1:111122223333:alarm:SuppressionDemo.Main', 'accountId': '111122223333', 'time': '2023-08-04T12:56:46.138+0000', 'region': 'us-east-1', 'alarmData': { 'alarmName': 'CompositeDemo.Main', 'state': { 'value': 'ALARM', 'reason': 'arn:aws:cloudwatch:us-east-1:111122223333:alarm:CompositeDemo.FirstChild transitioned to ALARM at Friday 04 August, 2023 12:54:46 UTC', 'reasonData': '{"triggeringAlarms":[{"arn":"arn:aws:cloudwatch:us-east-1:111122223333:alarm:CompositeDemo.FirstChild","state":{"value":"ALARM","timestamp":"2023-08-04T12:54:46.138+0000"}}]}', 'timestamp': '2023-08-04T12:56:46.138+0000' }, 'previousState': { 'value': 'ALARM', 'reason': 'arn:aws:cloudwatch:us-east-1:111122223333:alarm:CompositeDemo.FirstChild transitioned to ALARM at Friday 04 August, 2023 12:54:46 UTC', 'reasonData': '{"triggeringAlarms":[{"arn":"arn:aws:cloudwatch:us-east-1:111122223333:alarm:CompositeDemo.FirstChild","state":{"value":"ALARM","timestamp":"2023-08-04T12:54:46.138+0000"}}]}', 'timestamp': '2023-08-04T12:54:46.138+0000', 'actionsSuppressedBy': 'WaitPeriod', 'actionsSuppressedReason': 'Actions suppressed by WaitPeriod' }, 'configuration': { 'alarmRule': 'ALARM(CompositeDemo.FirstChild) OR ALARM(CompositeDemo.SecondChild)', 'actionsSuppressor': 'CompositeDemo.ActionsSuppressor', 'actionsSuppressorWaitPeriod': 120, 'actionsSuppressorExtensionPeriod': 180 } } }

Konfigurieren, wie CloudWatch Alarme fehlende Daten behandeln

Manchmal wird nicht jeder erwartete Datenpunkt für eine Metrik an gemeldet CloudWatch. Dies kann z. B. der Fall sein, wenn eine Verbindung unterbrochen wird, ein Server ausfällt oder wenn eine Metrik Daten grundsätzlich nur intermittierend meldet.

CloudWatch Mit können Sie angeben, wie fehlende Datenpunkte bei der Auswertung eines Alarms behandelt werden sollen. Dies hilft Ihnen, Ihren Alarm so zu konfigurieren, dass er nur dann in den ALARM-Zustand wechselt, wenn dies für den überwachten Datentyp angemessen ist. Sie können Fehlalarme vermeiden, wenn fehlende Daten kein Problem darstellen.

Ähnlich wie sich jeder Alarm immer in einem von drei Zuständen befindet, CloudWatch fällt jeder spezifische Datenpunkt, der gemeldet wird, in eine von drei Kategorien:

  • Keine Verletzung (innerhalb des Schwellenwerts)

  • Verletzung (verletzt den Schwellenwert)

  • Fehlen

Für jeden Alarm können Sie angeben, CloudWatch um fehlende Datenpunkte wie einen der folgenden zu behandeln:

  • notBreaching – Fehlende Datenpunkte werden als „gut“ und innerhalb der Schwelle liegend behandelt

  • breaching – Fehlende Datenpunkte werden als „ungültig“ und außerhalb der Schwelle liegend behandelt

  • ignore – Der aktuelle Alarmstatus wird beibehalten

  • missing – Wenn alle Datenpunkte im Alarmauswertungsbereich fehlen, wechselt der Alarm zu INSUPFIZIENT_DATA.

Die beste Wahl ist abhängig von der Art der Metrik. Für eine Metrik, die kontinuierlich Daten meldet, wie z. B. CPUUtilization einer Instance, sollten Sie fehlende Datenpunkte als breaching behandeln, da sie darauf hinweisen können, dass etwas nicht stimmt. Aber für eine Metrik, die nur Datenpunkte generiert, wenn ein Fehler auftritt, z. B. ThrottledRequests in Amazon DynamoDB, sollten Sie fehlende Daten als notBreaching behandeln. Das Standardverhalten ist missing.

Wenn Sie die beste Option für Ihren Alarm wählen, werden unnötige und irreführende Änderungen an Alarmbedingungen verhindert und der Zustand Ihres Systems wird genauer angeben.

Wichtig

Alarme, die Metriken im AWS/DynamoDB-Namespace bewerten, ignorieren immer fehlende Daten, auch wenn Sie eine andere Option wählen, wie der Alarm fehlende Daten behandeln soll. Wenn für eine AWS/DynamoDB-Metrik Daten fehlen, verbleiben Alarme, die diese Metrik auswerten, in ihrem aktuellen Zustand.

Wie der Alarmstatus bei fehlenden Daten ausgewertet wird

Immer wenn ein Alarm bewertet, ob der Status geändert werden soll, CloudWatch versucht , eine höhere Anzahl von Datenpunkten abzurufen als die als Auswertungszeiträume angegebene Anzahl. Die genaue Anzahl der Datenpunkte, die er abzurufen versucht, hängt von der Länge des Alarmzeitraums und davon ab, ob er auf einer Metrik mit Standardauflösung oder hoher Auflösung basiert. Der Zeitrahmen der Datenpunkte, die sie abzurufen versucht, ist der Auswertungsbereich.

Sobald diese Datenpunkte CloudWatch abgerufen hat, geschieht Folgendes:

  • Wenn keine Datenpunkte im Auswertungsbereich fehlen, CloudWatch wertet den Alarm auf der Grundlage der zuletzt erfassten Datenpunkte aus. Die Anzahl der ausgewerteten Datenpunkte entspricht den Auswertungszeiträumen für den Alarm. Die zusätzlichen Datenpunkte von weiter hinten im Auswertungsbereich werden nicht benötigt und ignoriert.

  • Wenn einige Datenpunkte im Auswertungsbereich fehlen, aber die Gesamtzahl der vorhandenen Datenpunkte, die erfolgreich aus dem Auswertungsbereich abgerufen wurden, gleich oder größer als die Auswertungszeiträume des Alarms ist, CloudWatch wertet den Alarmstatus auf der Grundlage der neuesten realen Datenpunkte aus, die erfolgreich abgerufen wurden, einschließlich der erforderlichen zusätzlichen Datenpunkte aus weiter unten im Auswertungsbereich. In diesem Fall wird der von Ihnen eingestellte Wert für die Behandlung fehlender Daten nicht benötigt und ignoriert.

  • Wenn einige Datenpunkte im Auswertungsbereich fehlen und die Anzahl der tatsächlich abgerufenen Datenpunkte geringer ist als die Anzahl der Auswertungszeiträume des Alarms, CloudWatch füllt die fehlenden Datenpunkte mit dem Ergebnis aus, das Sie für die Behandlung fehlender Daten angegeben haben, und wertet dann den Alarm aus. Alle realen Datenpunkte im Auswertungsbereich sind jedoch in der Auswertung enthalten. CloudWatch verwendet fehlende Datenpunkte nur so selten wie möglich.

Anmerkung

Ein Sonderfall dieses Verhaltens ist, dass CloudWatch Alarme den letzten Satz von Datenpunkten für einen bestimmten Zeitraum wiederholt neu bewerten können, nachdem die Metrik nicht mehr funktioniert hat. Diese Neuauswertung kann dazu führen, dass der Alarm den Status ändert und Aktionen erneut ausführt, wenn er den Status unmittelbar vor dem Stoppen des Messdatenstroms geändert hatte. Um dieses Verhalten zu verhindern, verwenden Sie kürzere Zeiträume.

Die folgenden Tabellen zeigen Beispiele für das Verhalten der Alarmauswertung. In der ersten Tabelle sind Datenpunkte zu Alarm- und Auswertungszeiträumen beide 3. ruft bei der Auswertung des Alarms die fünf letzten Datenpunkte CloudWatch ab, falls einige der letzten drei Datenpunkte fehlen. 5 ist der Auswertungsbereich für den Alarm.

In Spalte 1 werden die fünf letzten Datenpunkte angezeigt, da der Auswertungsbereich 5 beträgt. Diese Datenpunkte werden mit dem letzten Datenpunkt auf der rechten Seite angezeigt. 0 ist ein nicht überschreitender Datenpunkt, X ein überschreitender Datenpunkt und - ein fehlender Datenpunkt.

In Spalte 2 ist angegeben, wie viele der 3 erforderlichen Datenpunkte fehlen. Obwohl die 5 zuletzt hinzugekommenen Datenpunkte ausgewertet werden, sind zur Bewertung des Alarmstatus nur 3 davon nötig (gemäß der Einstellung für Evaluation Periods (Auswertungszeiträume)). Die Anzahl der Datenpunkte in Spalte 2 ist die Anzahl der Datenpunkte, die ausgefüllt sein muss. Dabei wird die Einstellung zur Behandlung fehlender Daten verwendet.

In den Spalten 3-6 sind die Spaltenüberschriften die möglichen Werte für die Behandlung fehlender Daten. Die Zeilen in diesen Spalten zeigen den Alarmstatus an, der für jede dieser möglichen Methoden zur Behandlung fehlender Daten festgelegt ist.

Datenpunkte Anzahl der Datenpunkte, die ausgefüllt werden müssen MISSING IGNORE ÜBERSCHREITEND NICHT ÜBERSCHREITEND

0 - X - X

0

OK

OK

OK

OK

- - - - 0

2

OK

OK

OK

OK

- - - - -

3

INSUFFICIENT_DATA

Aktuellen Status beibehalten

ALARM

OK

0 X X - X

0

ALARM

ALARM

ALARM

ALARM

- - X - -

2

ALARM

Aktuellen Status beibehalten

ALARM

OK

In der zweiten Zeile der vorhergehenden Tabelle bleibt der Alarm OK, auch wenn fehlende Daten als Überschreitung behandelt werden, weil der eine vorhandene Datenpunkt nicht überschreitend ist. Dies wird zusammen mit zwei fehlenden Datenpunkten ausgewertet, die als Überschreitung behandelt werden. Wenn dieser Alarm das nächste Mal ausgewertet wird, werden die Daten, die noch fehlen, auf ALARM gesetzt, da dieser nicht verletzende Datenpunkt nicht mehr im Auswertebereich liegt.

Die dritte Zeile, in der alle fünf letzten Datenpunkte fehlen, veranschaulicht, wie sich die verschiedenen Einstellungen für die Behandlung fehlender Daten auf den Alarmzustand auswirken. Wenn fehlende Datenpunkte als Verletzung betrachtet werden, geht der Alarm in den ALARM-Status, während, wenn sie als nicht verletzt betrachtet werden, dann geht der Alarm in den OK-Zustand über. Wenn fehlende Datenpunkte ignoriert werden, behält der Alarm den aktuellen Zustand vor den fehlenden Datenpunkten bei. Und wenn fehlende Datenpunkte nur als fehlend angesehen werden, dann hat der Alarm nicht genügend aktuelle reale Daten, um eine Auswertung durchzuführen und geht in den Zustand INSUFFIZIENT_DATA.

In der vierten Zeile geht der Alarm in allen Fällen in den Zustand ALARM über, da die drei jüngsten Datenpunkte verletzt werden und die Auswertungszeiträume und Datenpunkte zum Alarm des Alarms beide auf 3 gesetzt sind. In diesem Fall wird der fehlende Datenpunkt ignoriert und die Einstellung für die Auswertung fehlender Daten ist nicht erforderlich, da drei reale Datenpunkte ausgewertet werden müssen.

Zeile 5 stellt einen Sonderfall der Alarmauswertung dar, der als vorzeitiger Alarmzustand bezeichnet wird. Weitere Informationen finden Sie unter Vermeidung vorzeitiger Übergänge in den Alarmzustand.

In der nächsten Tabelle ist Period (Zeitraum) erneut auf 5 Minuten gesetzt, und Datapoints to Alarm (Datenpunkte zum Alarm) ist nur 2, während Evaluation Periods (Auswertungszeiträume) 3 ist. Die ist ein 2-aus-3, M-aus-N-Alarm.

Der Auswertungsbereich beträgt 5. Dies ist die maximale Anzahl der zuletzt abgerufenen Datenpunkte und kann verwendet werden, falls einige Datenpunkte fehlen.

Datenpunkte Anzahl fehlender Datenpunkte FEHLEND IGNORE ÜBERSCHREITEND NICHT ÜBERSCHREITEND

0 - X - X

0

ALARM

ALARM

ALARM

ALARM

0 0 X 0 X

0

ALARM

ALARM

ALARM

ALARM

0 - X - -

1

OK

OK

ALARM

OK

- - - - 0

2

OK

OK

ALARM

OK

- - - - X

2

ALARM

Aktuellen Status beibehalten

ALARM

OK

In den Zeilen 1 und 2 geht der Alarm immer in den ALARM-Zustand, da 2 der 3 letzten Datenpunkte verletzt werden. In Zeile 2 werden die beiden ältesten Datenpunkte im Auswertebereich nicht benötigt, da keiner der 3 jüngsten Datenpunkte fehlt, daher werden diese beiden älteren Datenpunkte ignoriert.

In den Zeilen 3 und 4 geht der Alarm nur dann in den ALARM-Zustand, wenn fehlende Daten als Verletzung behandelt werden. In diesem Fall werden die beiden letzten fehlenden Datenpunkte beide als Verletzung behandelt. In Zeile 4 stellen diese beiden fehlenden Datenpunkte, die als Verletzung behandelt werden, die zwei notwendigen Datenpunkte bereit, um den ALARM-Zustand auszulösen.

Zeile 5 stellt einen Sonderfall der Alarmauswertung dar, der als vorzeitiger Alarmzustand bezeichnet wird. Weitere Informationen finden Sie im folgenden Abschnitt.

Vermeidung vorzeitiger Übergänge in den Alarmzustand

CloudWatch Die Alarmauswertung umfasst Logik, um Fehlalarme zu vermeiden, bei denen der Alarm vorzeitig in den ALARM-Zustand wechselt, wenn Daten zeitweilig sind. Das Beispiel, das in Zeile 5 in den Tabellen im vorherigen Abschnitt gezeigt wird, veranschaulicht diese Logik. In diesen Zeilen und in den folgenden Beispielen beträgt der Auswertungszeitraum 3 und der Auswertungsbereich 5 Datenpunkte. Datenpunkte zum Alarm sind 3, mit Ausnahme des Beispiels M von N, wo Datenpunkte zum Alarm 2 sind.

Angenommen, die neuesten Daten eines Alarms sind - - - - X, mit vier fehlenden Datenpunkten und dann einem Datenpunkt, der verletzt wird, als neuestem Datenpunkt. Da der nächste Datenpunkt möglicherweise nicht verletzt wird, geht der Alarm nicht sofort in den ALARM-Zustand, wenn die Daten entweder - - - - X oder - - - X - sind und Datenpunkte zum Alarm 3 sind. Auf diese Weise werden Fehlalarme vermieden, wenn der nächste Datenpunkt nicht verletzt wird und dazu führt, dass die Daten - - - X O oder - - X - O sind.

Wenn jedoch die letzten paar Datenpunkte - - X - - sind, geht der Alarm in den ALARM-Zustand, auch wenn fehlende Datenpunkte als fehlend behandelt werden. Dies liegt daran, dass Alarme immer in den ALARM-Zustand gehen, wenn der älteste verfügbare verletzende Datenpunkt in der Anzahl der Datenpunkte während der Auswertungszeiträume mindestens so alt ist wie der Wert von Mit Alarm zu versehende Datenpunkte und alle anderen neueren Datenpunkte eine Verletzung darstellen oder fehlen. In diesem Fall geht der Alarm auch dann in den ALARM-Zustand, wenn die Gesamtzahl der verfügbaren Datenpunkte kleiner als M (Datenpunkte zum Alarm) ist.

Diese Alarmlogik gilt auch für „M von N“ Alarme. Wenn der älteste verletzte Datenpunkt während des Auswertungsbereichs mindestens so alt ist wie der Wert von Datenpunkte zum Alarm und alle neueren Datenpunkte entweder verletzt oder fehlen, geht der Alarm unabhängig vom Wert von M (Datenpunkte zum Alarm).

Hochauflösende Alarme

Wenn Sie einen Alarm für eine hochauflösende Metrik festlegen, können Sie einen hochauflösenden Alarm für einen Zeitraum von 10 Sekunden oder 30 Sekunden oder einen regelmäßigen Alarm für einen Zeitraum festlegen, der ein Mehrfaches von 60 Sekunden beträgt. Für hochauflösende Alarme ist eine höhere Gebühr zu zahlen. Weitere Informationen zu hochauflösenden Metriken finden Sie unter Veröffentlichen von benutzerdefinierten -Metriken.

Alarme bei mathematischen Ausdrücken

Sie können einen Alarm für das Ergebnis eines mathematischen Ausdrucks festlegen, der auf einer oder mehreren CloudWatch Metriken basiert. Ein mathematischer Ausdruck, der für einen Alarm verwendet wird, kann bis zu 10 Metriken umfassen. Jede Metrik muss den gleichen Zeitraum verwenden.

Für einen Alarm, der auf einem mathematischen Ausdruck basiert, können Sie angeben, wie fehlende Datenpunkte behandelt CloudWatch werden sollen. In diesem Fall wird der Datenpunkt als fehlend betrachtet, wenn der mathematische Ausdruck keinen Wert für diesen Datenpunkt liefert.

Alarme, die auf mathematischen Ausdrücken basieren, können keine Amazon-EC2-Aktionen ausführen.

Weitere Informationen über metrische mathematische Ausdrücke und Syntax finden Sie unter Verwenden von Metrikberechnungen.

Perzentilbasierte CloudWatch Alarme und Stichproben mit wenigen Daten

Wenn Sie ein Perzentil als Statistik für einen Alarm festlegen, können Sie angeben, was zu tun ist, wenn nicht genügend Daten für eine gute statistische Bewertung vorliegen. Sie können festlegen, dass der Alarm trotzdem statistisch bewertet wird und der Alarmstatus möglicherweise geändert wird. Alternativ können Sie festlegen, dass der Alarm die Metrik bei einer kleinen Stichprobe ignoriert und mit der Bewertung wartet, bis ausreichend Daten vorliegen, um statistische Signifikanz zu erzielen.

Für Perzentile zwischen0,5 (inklusive) und 1,00 (exklusive) wird diese Einstellung verwendet, wenn weniger als 10/(1-Perzentil) Datenpunkte im Bewertungszeitraum vorhanden sind. Diese Einstellung würde beispielsweise verwendet werden, wenn weniger als 1 000 Beispiele für einen Alarm auf einem p99 Perzentil vorhanden sind. Für Perzentile zwischen 0 und 0,5 (exklusive) wird die Einstellung verwendet, wenn weniger als 10/Perzentil Datenpunkte vorhanden sind.

Allgemeine Funktionen von CloudWatch Alarmen

Die folgenden Funktionen gelten für alle CloudWatch Alarme:

  • Die Anzahl der Alarme, die Sie erstellen können, ist unbegrenzt. Um einen Alarm zu erstellen oder zu aktualisieren, verwenden Sie die - CloudWatch Konsole, die PutMetricAlarm-API-Aktion oder den -put-metric-alarmBefehl in der AWS CLI.

  • Alarmnamen dürfen nur UTF-8-Zeichen und keine ASCII-Kontrolleingabezeichen enthalten

  • Sie können einen oder alle der aktuell konfigurierten Alarme auflisten und alle Alarme in einem bestimmten Status auflisten, indem Sie die CloudWatch Konsole, die DescribeAlarms API-Aktion oder den Befehl describe-alarms in der verwendenAWS CLI.

  • Sie können Alarme mithilfe der EnableAlarmActions API-Aktionen DisableAlarmActions und oder der enable-alarm-actions Befehle disable-alarm-actions und in der deaktivieren und aktivierenAWS CLI.

  • Sie können einen Alarm testen, indem Sie ihn mithilfe der SetAlarmState -API-Aktion oder des -set-alarm-stateBefehls in der auf einen beliebigen Status setzenAWS CLI. Diese temporäre Statusänderung dauert nur bis zum nächsten Alarmvergleich.

  • Sie können einen Alarm für eine benutzerdefinierte Metrik erstellen, bevor Sie diese benutzerdefinierte Metrik selbst erstellen. Damit der Alarm gültig ist, müssen Sie alle Dimensionen für die benutzerdefinierte Metrik zusätzlich zum Namen des Namespace und der Metrik sowie der Alarmdefinition einfügen. Dazu können Sie die PutMetricAlarm -API-Aktion oder den -put-metric-alarmBefehl in der verwendenAWS CLI.

  • Sie können den Verlauf eines Alarms mithilfe der - CloudWatch Konsole, der DescribeAlarmHistory -API-Aktion oder des -describe-alarm-historyBefehls im AWS CLI. CloudWatch preserves-Alarmverlauf für zwei Wochen anzeigen. Jeder Statusübergang wird mit einem eindeutigen Zeitstempel versehen. In seltenen Fällen kann es vorkommen, dass der Verlauf mehr als eine Benachrichtigung für eine Statusänderung anzeigt. Mit dem Zeitstempel können Sie eindeutige Änderungen des Status bestätigen.

  • Sie können Alarme über die Option Favoriten und aktuelle im Navigationsbereich der CloudWatch Konsole als Favorit markieren, indem Sie den Mauszeiger über den gewünschten Alarm bewegen und das Sternsymbol daneben auswählen.

  • Die Anzahl der Auswertungszeiträume für einen Alarm multipliziert mit der Länge der einzelnen Auswertungszeiträume darf einen Tag nicht überschreiten.

Anmerkung

Einige AWS Ressourcen senden CloudWatch unter bestimmten Bedingungen keine Metrikdaten an .

Beispielsweise sendet Amazon EBS möglicherweise keine Messdaten für ein verfügbares Volume, das nicht an eine Amazon-EC2-Instance angehängt ist, da für dieses Volume keine Messdatenaktivität überwacht werden muss. Wenn Sie einen Alarm für eine solche Metrik festgelegt haben, werden Sie möglicherweise feststellen, dass sich ihr Status auf INSUFFICIENT_DATA ändert. Dies kann darauf hindeuten, dass Ihre Ressource inaktiv ist, und bedeutet nicht unbedingt, dass es ein Problem gibt. Sie können festlegen, wie jeder Alarm fehlende Daten behandelt. Weitere Informationen finden Sie unter Konfigurieren, wie CloudWatch Alarme fehlende Daten behandeln.