CloudWatch Amazon-Alarme verwenden - 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.

CloudWatch Amazon-Alarme verwenden

In Amazon können Sie metrische und zusammengesetzte Alarme erstellen CloudWatch.

  • Ein metrischer Alarm überwacht eine einzelne CloudWatch Metrik oder das Ergebnis eines mathematischen Ausdrucks, der auf CloudWatch Metriken basiert. 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 SNS-Thema, das Ausführen einer Amazon EC2-Aktion oder einer Amazon EC2 Auto Scaling Scaling-Aktion oder das Erstellen eines OR-Vorfalls in OpsItem 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 SNS-Benachrichtigungen senden, wenn sie ihren Status ändern, und können Systems Manager OpsItems oder Incidents auslösen, wenn sie in den ALARM-Status wechseln, können aber keine EC2-Aktionen oder Auto Scaling Scaling-Aktionen ausführen.

Anmerkung

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

Sie können Alarme zu Dashboards hinzufügen, sodass Sie Ihre AWS Ressourcen und Anwendungen in mehreren Regionen überwachen und Benachrichtigungen darüber 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 kürzlich besuchte Alarme auch über die Option Favoriten und zuletzt verwendete Alarme im Navigationsbereich der CloudWatch Konsole zu Favoriten hinzufügen. 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 Funktion in Ihrer CloudWatch Konsole aktiviert haben, können Sie auch Alarme erstellen, die Messwerte anderer 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 auf einen Versuch zurückzuführen sind, nicht existierende 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, anhand derer CloudWatch bewertet werden kann, wann der Alarmstatus geändert werden muss:

  • 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 kurz nach dem Erstellen eines Alarms Datenpunkte fehlen und die Metrik CloudWatch vor der Erstellung des Alarms gemeldet wurde, CloudWatch ruft es bei der Auswertung des Alarms die neuesten Datenpunkte ab, die vor der Erstellung des Alarms erstellt wurden.

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 alarms garantiert einen asynchronen Aufruf der Lambda-Funktion für eine bestimmte Zustandsänderung, außer in den folgenden Fällen:

  • Wenn die Funktion nicht existiert.

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

Wenn der Lambda-Dienst nicht erreicht werden CloudWatch kann oder die Nachricht aus einem anderen Grund zurückgewiesen wird, versuchen Sie es CloudWatch erneut, bis der Aufruf erfolgreich ist. Lambda stellt die Nachricht in eine Warteschlange und verarbeitet Ausführungswiederholungen. Weitere Informationen zu diesem Ausführungsmodell, einschließlich Informationen darüber, wie Lambda mit Fehlern umgeht, finden Sie unter Asynchronous invocation im AWS Lambda Developer Guide.

Sie können eine Lambda-Funktion in demselben 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 Dienstprinzipal die Funktion aufrufen kann.

Eine Möglichkeit, dies zu tun, ist die Verwendung von AWS CLI, wie im folgenden Beispiel:

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.

Ereignisobjekt, das von an CloudWatch Lambda gesendet wurde

Wenn Sie eine Lambda-Funktion als Alarmaktion konfigurieren, CloudWatch übermittelt sie eine JSON-Nutzlast an die Lambda-Funktion, wenn sie die Funktion aufruft. 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 } } }

Konfiguration, wie Alarme fehlende Daten behandeln CloudWatch

Manchmal wird nicht jeder erwartete Datenpunkt für eine Metrik 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 ermöglicht es Ihnen, festzulegen, 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, an den 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 , dass fehlende Datenpunkte wie folgt behandelt werden sollen:

  • 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 auswertet, ob der Status geändert werden soll, CloudWatch versucht er, eine höhere Anzahl von Datenpunkten abzurufen als die als Bewertungszeiträume angegebene Zahl. 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 wurden, passiert Folgendes:

  • Wenn keine Datenpunkte im Bewertungsbereich fehlen, wird der Alarm anhand der zuletzt erfassten Datenpunkte CloudWatch ausgewertet. 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 Bewertungsbereich fehlen, aber die Gesamtzahl der vorhandenen Datenpunkte, die erfolgreich aus dem Bewertungsbereich abgerufen wurden, gleich oder größer als die Bewertungszeiträume des Alarms ist, CloudWatch bewertet der Alarmstatus auf der Grundlage der letzten erfolgreich abgerufenen realen Datenpunkte, einschließlich der erforderlichen zusätzlichen Datenpunkte, die weiter hinten im Bewertungsbereich liegen. In diesem Fall wird der von Ihnen eingestellte Wert für die Behandlung fehlender Daten nicht benötigt und ignoriert.

  • Wenn einige Datenpunkte im Bewertungsbereich fehlen und die Anzahl der tatsächlich abgerufenen Datenpunkte niedriger ist als die Anzahl der Evaluierungsperioden des Alarms, CloudWatch füllt die fehlenden Datenpunkte mit dem Ergebnis auf, das Sie für die Behandlung fehlender Daten angegeben haben, und wertet dann den Alarm aus. Es werden jedoch alle realen Datenpunkte im Bewertungsbereich in die Auswertung einbezogen. CloudWatch verwendet fehlende Datenpunkte nur so wenige Male wie möglich.

Anmerkung

Ein besonderer Fall dieses Verhaltens besteht darin, dass CloudWatch Alarme den letzten Satz von Datenpunkten für einen bestimmten Zeitraum wiederholt neu auswerten, nachdem die Metrik aufgehört hat zu fließen. 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 haben die Datenpunkte für Alarm - und Bewertungszeiträume jeweils den Wert 3. CloudWatch ruft bei der Auswertung des Alarms die 5 neuesten Datenpunkte ab, falls einige der letzten 3 Datenpunkte fehlen. 5 ist der Bewertungsbereich 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 Auswertung von Alarmen beinhaltet Logik zur Vermeidung von Fehlalarmen, bei denen der Alarm vorzeitig in den ALARM-Zustand übergeht, wenn die Daten unterbrochen werden. 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 einrichten, der auf einer oder mehreren Metriken basiert. CloudWatch Ein mathematischer Ausdruck, der für einen Alarm verwendet wird, kann bis zu 10 Metriken umfassen. Jede Metrik muss den gleichen Zeitraum verwenden.

Bei einem Alarm, der auf einem mathematischen Ausdruck basiert, können Sie angeben, wie fehlende Datenpunkte behandelt werden CloudWatch 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.

Auf Perzentilen basierende CloudWatch Alarme und Stichproben mit niedrigen Datenmengen

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.

Gemeinsame Merkmale von Alarmen CloudWatch

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 PutMetricAlarmAPI-Aktion oder den put-metric-alarmBefehl in AWS CLI.

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

  • Sie können einige oder alle aktuell konfigurierten Alarme und alle Alarme in einem bestimmten Status auflisten, indem Sie die CloudWatch Konsole, die DescribeAlarmsAPI-Aktion oder den Befehl describe-alarms in der verwenden. AWS CLI

  • Sie können Alarme deaktivieren und aktivieren, indem Sie die EnableAlarmActionsAPI-Aktionen DisableAlarmActionsund oder die enable-alarm-actionsBefehle disable-alarm-actionsund in der verwenden. AWS CLI

  • Sie können einen Alarm testen, indem Sie ihn mit der SetAlarmStateAPI-Aktion oder dem set-alarm-stateBefehl im auf einen beliebigen Status setzen AWS 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 PutMetricAlarmAPI-Aktion oder den put-metric-alarmBefehl in der verwenden AWS CLI.

  • Sie können den Verlauf eines Alarms mithilfe der CloudWatch Konsole, der DescribeAlarmHistoryAPI-Aktion oder des describe-alarm-historyBefehls in der anzeigen AWS CLI. CloudWatch speichert den Alarmverlauf für zwei Wochen. 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 zuletzt verwendete Alarme im Navigationsbereich der CloudWatch Konsole zu Favoriten hinzufügen, indem Sie den Mauszeiger über den Alarm bewegen, den Sie als Favorit markieren möchten, und das Sternsymbol neben dem Alarm 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 Konfiguration, wie Alarme fehlende Daten behandeln CloudWatch .