View a markdown version of this page

AWSSupport-TroubleshootCloudWatchAlarm - AWS Systems Manager Runbook-Referenz für Automation

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.

AWSSupport-TroubleshootCloudWatchAlarm

Beschreibung

Das AWSSupport-TroubleshootCloudWatchAlarm Runbook hilft bei der Identifizierung und Behebung von Problemen mit falsch konfigurierten oder problematischen Amazon CloudWatch (CloudWatch) -Alarmen. Es nutzt öffentliche AWS APIs und eine bekannte Logik zur Alarmauswertung, um verzögerte oder fehlende Datenpunkte in den überwachten Metriken zu erkennen, was zu verpassten oder verzögerten Alarmaktionen führen kann. Dieses Runbook bietet einen strukturierten Ansatz zur Untersuchung und Lösung von Amazon () CloudWatch -Problemen. CloudWatch Alarm-related

Wie funktioniert es?

Das Runbook AWSSupport-TroubleshootCloudWatchAlarm führt die folgenden Schritte aus:

  • Überprüft die Amazon CloudWatch (CloudWatch) -Alarmdetails und den Wert des AlarmTriggerTimestamp Parameters, um zu überprüfen, ob der Wert innerhalb von 2.592.000 Sekunden (30 Tagen) liegt.

  • Überprüft, ob ein Alarm auf einer metrischen oder metrischen Mathematik basiert oder ob es sich um einen Anomaliedetektor handelt.

  • Prüft, ob ein Alarm einen unzureichenden Datenstatus hat.

  • Prüft, ob die im Alarm verwendete (n) Metrik (en) mit dem ListMetrics Wert übereinstimmt.

  • Überprüft, ob einer Metrik zu einem bestimmten Zeitpunkt Datenpunkt (e) fehlten.

  • Ruft den neuesten Verlauf für einen bestimmten Zeitstempel ab.

  • Prüft, ob aufgrund einer oder mehrerer verspäteter oder verpasster Metriken kein Alarm ausgelöst wurde.

  • Prüft, ob die aktivierte (n) Aktion (en) eines Alarms ausgelöst wurde ( was/were n).

  • Generiert einen Bericht zur Problembehandlung, in dem alle Diagnoseergebnisse zusammengefasst sind.

Führen Sie diese Automatisierung aus (Konsole)

Art des Dokuments

Automatisierung

Eigentümer

Amazon

Plattformen

LinuxmacOS, Windows

Parameter

Erforderliche IAM-Berechtigungen

Der AutomationAssumeRole Parameter erfordert die folgenden Aktionen, um das Runbook erfolgreich zu verwenden.

  • cloudwatch:DescribeAlarms

  • cloudwatch:DescribeAlarmHistory

  • cloudwatch:DescribeAnomalyDetectors

  • cloudwatch:GetMetricData

  • cloudwatch:GetMetricStatistics

  • cloudwatch:ListMetrics

JSON
{ "Version":"2012-10-17", "Statement": [ { "Sid": "", "Effect": "Allow", "Action": [ "cloudwatch:DescribeAlarms", "cloudwatch:DescribeAlarmHistory", "cloudwatch:DescribeAnomalyDetectors", "cloudwatch:GetMetricData", "cloudwatch:GetMetricStatistics", "cloudwatch:ListMetrics" ], "Resource": "*" } ] }

Anweisungen

Folgen Sie diesen Schritten, um die Automatisierung zu konfigurieren:

  1. Navigieren Sie AWSSupport-TroubleshootCloudWatchAlarm im Systems Manager unter Dokumente zu.

  2. Wählen Sie Execute automation (Automatisierung ausführen).

  3. Geben Sie für die Eingabeparameter Folgendes ein:

    • AutomationAssumeRole (Fakultativ):

      • Typ: String

      • Beschreibung: (Optional) Der Amazon-Ressourcenname (ARN) der AWS AWS Identity and Access Management (IAM) -Rolle, die es Systems Manager Automation ermöglicht, die Aktionen in Ihrem Namen auszuführen. Wenn keine Rolle angegeben ist, verwendet Systems Manager Automation die Berechtigungen des Benutzers, der dieses Runbook startet.

    • CloudWatchMetricAlarmName(Erforderlich):

      • Typ: String

      • Beschreibung: (Erforderlich) Der Name des Amazon CloudWatch (CloudWatch) -Metrik-Alarms, für den die Fehlerbehebung erforderlich ist.

      • Zulässiges Muster: ^[a-zA-Z0-9.:;,\\-_&() ]{1,255}$

    • AlarmTriggerTimestamp (Erforderlich):

      • Typ: String

      • Beschreibung: (Erforderlich) Der UTC-Zeitstempel, zu dem das Alarmproblem aufgetreten ist. Diese Informationen sind wichtig, um das Problem zu beheben und den Kontext zu verstehen, in dem es aufgetreten ist. Der Zeitstempelwert sollte eine Zeit innerhalb der letzten 30 Tage ab heute sein und das folgende Format YYYY-MM-DDTHH:mm:ssZ haben. Beispiel: 2024-10-29T09:04:00Z

      • Zulässiges Muster: ^(\\d{4})-(\\d{2})-(\\d{2})T(\\d{2}):(\\d{2}):(\\d{2})Z$

  4. Wählen Sie Ausführen aus.

  5. Die Automatisierung wird initiiert.

  6. Das Dokument führt die folgenden Schritte aus:

    • VerifyRunbookInputs

      Überprüft die Amazon CloudWatch (CloudWatch) -Alarmdetails und den Wert des AlarmTriggerTimestamp Parameters, um zu überprüfen, ob der Wert innerhalb von 2.592.000 Sekunden (30 Tagen) liegt.

    • UpdateSSMDocumentInputChecksVariable

      Aktualisiert die Variable SSMDocumentInputChecks mit dem Wert SSMDocumentInputChecks von step. VerifyRunbookInputs

    • BranchOnAlarmIsVerified

      Verzweigungen bei der Überprüfung der Eingaben von Runbook AlarmTriggerTimestamp undCloudWatchAlarmName.

    • CheckMetricAlarmType

      Prüft, ob ein Alarm auf einer metrischen oder metrischen Mathematik basiert oder ob es sich um einen Anomaliedetektor handelt.

    • CheckAlarmInInsufficientDataState

      Prüft, ob ein Alarm einen unzureichenden Datenstatus hat.

    • UpdateInsufficientDataChecksVariable

      Aktualisiert die Variable InsufficientDataChecks mit dem Wert InsufficientDataChecks aus CheckAlarmInInsufficientDataState Schritt.

    • BranchOnAlarmHasInsufficientData

      Verzweigt auf den AlarmHasInsufficientData Wert von CheckAlarmInInsufficientDataState Schritt, der Standardschritt istCheckMetricMismatch.

    • CheckMetricMismatch

      Überprüft, ob die im Alarm verwendete (n) Metrik (en) mit dem ListMetrics Wert übereinstimmt.

    • UpdateMetricMismatchChecksVariable

      Aktualisiert die Variable MetricMismatchChecks mit dem Wert MetricMismatchChecks aus CheckMetricMismatch Schritt.

    • BranchOnMetricsMatched

      Verzweigt auf den MetricsMatched Wert von CheckMetricMismatch Schritt, der Standardschritt istCheckMissingDatapoint.

    • CheckMissingDatapoint

      Überprüft, ob in einer Metrik zu einem bestimmten Zeitstempel Datenpunkt (e) fehlten.

    • UpdateMetricMissingDatapointsChecksVariable

      Aktualisiert die Variable MetricMissingDatapointsChecks mit dem Wert aus Schritt. MetricMissingDatapointsChecks CheckMissingDatapoint

    • BranchOnMetricMissingDatapoint

      Verzweigt auf den MetricMissingDatapoint Wert von CheckMissingDatapoint Schritt, der Standardschritt istGetAlarmHistoryDetails.

    • GetAlarmHistoryDetails

      Ruft den neuesten Verlauf für einen bestimmten Zeitstempel ab.

    • UpdateAlarmHistoryChecksVariable

      Aktualisiert die Variable AlarmHistoryChecks mit dem Wert AlarmHistoryChecks aus GetAlarmHistoryDetails Schritt.

    • BranchOnAlarmHistoryFound

      Verzweigt auf den AlarmHistoryFound Wert von GetAlarmHistoryDetails Schritt, der Standardschritt istCheckDelayedMetric.

    • CheckDelayedMetric

      Prüft, ob aufgrund einer oder mehrerer verspäteter oder verpasster Metriken kein Alarm ausgelöst wurde.

    • UpdateDelayedMetricChecksVariable

      Aktualisiert die Variable DelayedMetricChecks mit dem Wert DelayedMetricChecks aus CheckDelayedMetric Schritt.

    • BranchOnMetricDelayedAndDatapointsMeetThreshold

      Verzweigt auf den MetricDelayed und die DatapointsMeetThreshold Werte von CheckDelayedMetric Schritt, der Standardschritt istGenerateReport.

    • CheckActionDelivered

      Prüft, ob die aktivierte (n) Aktion (en) eines Alarms ausgelöst wurde ( was/were n).

    • UpdateActionDeliveredChecksVariable

      Aktualisiert die Variable ActionDeliveredChecks mit der Ausgabe ActionDeliveredChecks von CheckActionDelivered step.

    • GenerateReport

      Kompiliert die Ausgabe der vorherigen Schritte und gibt einen Bericht aus.

  7. Nach Abschluss der Ausführung finden Sie im Abschnitt Ausgaben die detaillierten Ergebnisse der Ausführung:

    • GenerateReport.Report

      Ein Bericht über die bereitgestellte Amazon CloudWatch (CloudWatch) -Metrik Alarm.

                    ------------------------------------------------------------------------------------------
                    |                     AWS CloudWatch Alarm Troubleshooting Results                       |
                    ------------------------------------------------------------------------------------------
                    |     Alarm Name                        -               Demo-Alarm                       |
                    |     Timestamp                         -               2025-03-04T06:31:00Z             |
                    ------------------------------------------------------------------------------------------
                    |     ✅ No Issue(s) Found                                                               |
                    ------------------------------------------------------------------------------------------
    
    
    
                    ==========================================================================================
                    1. Validating SSM Document input parameters:
                    ==========================================================================================
                    ✅ [PASSED]: Found a metric alarm with name Demo-Alarm
    
    
                    ==========================================================================================
                    2. Checking alarm's data state:
                    ==========================================================================================
                    ✅ [PASSED]: The alarm is not in INSUFFICIENT_DATA state, alarm's state is: ALARM
    
    
                    ==========================================================================================
                    3. Checking if the alarm experienced metric mismatches:
                    ==========================================================================================
                    ✅ [PASSED]: Metric matches with the configured metric for Alarm.
    
    
                    ==========================================================================================
                    4. Checking if the alarm's metric(s) experienced missing datapoint(s):
                    ==========================================================================================
                    ✅ [PASSED]: Metric has datapoints
    
    
                    ==========================================================================================
                    5. Retrieving alarm's history for timestamp 2025-03-04T06:31:00Z:
                    ==========================================================================================
                    ✅ [PASSED]: Found most recent alarm history item for the provided timestamp: '2025-03-04T06:31:00Z'
    
    
                    ==========================================================================================
                    6. Checking if the alarm experienced metric delays or the alarm's datapoint(s) did not meet the configured threshold:
                    ==========================================================================================
                    ✅ [PASSED]: CloudWatch alarm did not experience any delayed metric
    
    
                    ==========================================================================================
                    7. Checking if the alarm has actions enabled and if action(s) were delivered:
                    ==========================================================================================
                    ✅ [PASSED]: Successfully executed action arn:aws:sns:us-east-1:12345678910:Demo_Alarms_Topic
    
    
                    ------------------------------------------------------------------------------------------
    
                    ✅ All the checks have passed for CloudWatch alarm, Demo-Alarm, the alarm's configuration is correct.
                

Referenzen

Systems Manager Automation