View a markdown version of this page

AWSSupport-TroubleshootCloudWatchAlarm - AWS Systems Manager Référence du dossier d’exploitation Automation

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

AWSSupport-TroubleshootCloudWatchAlarm

Description

Le AWSSupport-TroubleshootCloudWatchAlarm runbook permet d'identifier et de résoudre les problèmes liés à des alarmes Amazon CloudWatch () CloudWatch mal configurées ou problématiques. Il exploite des AWS API publiques et une logique d'évaluation des alarmes connue pour détecter les points de données retardés ou manquants dans les mesures surveillées, ce qui peut entraîner des actions d'alarme manquées ou retardées. Ce runbook propose une approche structurée pour étudier et résoudre les Alarm-related problèmes liés à Amazon CloudWatch (CloudWatch).

Fonctionnement

Le runbook AWSSupport-TroubleshootCloudWatchAlarm exécute les étapes suivantes :

  • Vérifie les détails de l'alarme Amazon CloudWatch (CloudWatch) et la valeur du AlarmTriggerTimestamp paramètre pour vérifier si le délai est de 2 592 000 secondes (30 jours).

  • Vérifie si une alarme est basée sur une métrique ou un calcul métrique ou s'il s'agit d'une alarme de détection d'anomalies.

  • Vérifie si l'état de données d'une alarme est insuffisant.

  • Vérifie si la ou les métriques utilisées dans l'alarme correspondent à ListMetrics la valeur.

  • Vérifie si un ou plusieurs points de données manquaient à une métrique à un horodatage donné.

  • Obtient l'historique le plus récent pour un horodatage donné.

  • Vérifie si une alarme ne s'est pas déclenchée en raison d'une ou de plusieurs métriques retardées ou manquantes.

  • Vérifie si les actions activées d'une alarme ont été was/were déclenchées.

  • Génère un rapport de dépannage combinant tous les résultats du diagnostic.

Exécutez cette automatisation (console)

Type de document

 Automatisation

Propriétaire

Amazon

Plateformes

LinuxmacOS, Windows

Paramètres

Autorisations IAM requises

Le AutomationAssumeRole paramètre nécessite les actions suivantes pour utiliser correctement le runbook.

  • 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": "*" } ] }

Instructions

Pour configurer l'automatisation, procédez comme suit :

  1. Accédez à AWSSupport-TroubleshootCloudWatchAlarm la section Documents dans Systems Manager.

  2. Sélectionnez Execute automation (Exécuter l'automatisation).

  3. Pour les paramètres d'entrée, entrez les informations suivantes :

    • AutomationAssumeRole (Facultatif) :

      • Type : String

      • Description : (Facultatif) Le nom de ressource Amazon (ARN) du rôle AWS Gestion des identités et des accès AWS (IAM) qui permet à Systems Manager Automation d'effectuer les actions en votre nom. Si aucun rôle n'est spécifié, Systems Manager Automation utilise les autorisations de l'utilisateur qui démarre ce runbook.

    • CloudWatchMetricAlarmName(Obligatoire) :

      • Type : String

      • Description : (Obligatoire) Le nom de l'alarme métrique Amazon CloudWatch (CloudWatch) à résoudre.

      • Schéma autorisé : ^[a-zA-Z0-9.:;,\\-_&() ]{1,255}$

    • AlarmTriggerTimestamp (Obligatoire) :

      • Type : String

      • Description : (Obligatoire) L'horodatage UTC auquel le problème d'alarme s'est produit. Ces informations sont cruciales pour résoudre le problème et comprendre le contexte dans lequel il s'est produit. La valeur d'horodatage doit correspondre à une date des 30 derniers jours à compter d'aujourd'hui et au format. YYYY-MM-DDTHH:mm:ssZ Exemple : 2024-10-29T09:04:00Z

      • Schéma autorisé : ^(\\d{4})-(\\d{2})-(\\d{2})T(\\d{2}):(\\d{2}):(\\d{2})Z$

  4. Sélectionnez Exécuter.

  5. L'automatisation démarre.

  6. Le document exécute les étapes suivantes :

    • VerifyRunbookInputs

      Vérifie les détails de l'alarme Amazon CloudWatch (CloudWatch) et la valeur du AlarmTriggerTimestamp paramètre pour vérifier si le délai est de 2 592 000 secondes (30 jours).

    • UpdateSSMDocumentInputChecksVariable

      Met à jour la variable SSMDocumentInputChecks avec la valeur SSMDocumentInputChecks de VerifyRunbookInputs l'étape.

    • BranchOnAlarmIsVerified

      Branches sur la vérification des entrées de Runbook AlarmTriggerTimestamp et. CloudWatchAlarmName

    • CheckMetricAlarmType

      Vérifie si une alarme est basée sur une métrique ou un calcul métrique ou s'il s'agit d'une alarme de détection d'anomalies.

    • CheckAlarmInInsufficientDataState

      Vérifie si l'état de données d'une alarme est insuffisant.

    • UpdateInsufficientDataChecksVariable

      Met à jour la variable InsufficientDataChecks avec la valeur InsufficientDataChecks de CheckAlarmInInsufficientDataState l'étape.

    • BranchOnAlarmHasInsufficientData

      Branches sur la AlarmHasInsufficientData valeur de l'CheckAlarmInInsufficientDataStateétape, l'étape par défaut estCheckMetricMismatch.

    • CheckMetricMismatch

      Vérifie si la ou les métriques utilisées dans l'alarme correspondent à ListMetrics la valeur.

    • UpdateMetricMismatchChecksVariable

      Met à jour la variable MetricMismatchChecks avec la valeur MetricMismatchChecks de CheckMetricMismatch l'étape.

    • BranchOnMetricsMatched

      Branches sur la MetricsMatched valeur de l'CheckMetricMismatchétape, l'étape par défaut estCheckMissingDatapoint.

    • CheckMissingDatapoint

      Vérifie si un ou plusieurs points de données manquaient à une métrique à un horodatage donné.

    • UpdateMetricMissingDatapointsChecksVariable

      Met à jour la variable MetricMissingDatapointsChecks avec la valeur MetricMissingDatapointsChecks de CheckMissingDatapoint l'étape.

    • BranchOnMetricMissingDatapoint

      Branches sur la MetricMissingDatapoint valeur de l'CheckMissingDatapointétape, l'étape par défaut estGetAlarmHistoryDetails.

    • GetAlarmHistoryDetails

      Obtient l'historique le plus récent pour un horodatage donné.

    • UpdateAlarmHistoryChecksVariable

      Met à jour la variable AlarmHistoryChecks avec la valeur AlarmHistoryChecks de GetAlarmHistoryDetails l'étape.

    • BranchOnAlarmHistoryFound

      Branches sur la AlarmHistoryFound valeur de l'GetAlarmHistoryDetailsétape, l'étape par défaut estCheckDelayedMetric.

    • CheckDelayedMetric

      Vérifie si une alarme ne s'est pas déclenchée en raison d'une ou de plusieurs métriques retardées ou manquantes.

    • UpdateDelayedMetricChecksVariable

      Met à jour la variable DelayedMetricChecks avec la valeur DelayedMetricChecks de CheckDelayedMetric l'étape.

    • BranchOnMetricDelayedAndDatapointsMeetThreshold

      Branches sur l'étape MetricDelayed et DatapointsMeetThreshold les valeurs de l'CheckDelayedMetricétape, l'étape par défaut estGenerateReport.

    • CheckActionDelivered

      Vérifie si les actions activées d'une alarme ont été was/were déclenchées.

    • UpdateActionDeliveredChecksVariable

      Met à jour la variable ActionDeliveredChecks avec la sortie ActionDeliveredChecks de CheckActionDelivered l'étape.

    • GenerateReport

      Compile le résultat des étapes précédentes et génère un rapport.

  7. Une fois l'exécution terminée, consultez la section Sorties pour obtenir les résultats détaillés de l'exécution :

    • GenerateReport.Report

      Rapport de l'alarme métrique Amazon CloudWatch (CloudWatch) fournie.

                    ------------------------------------------------------------------------------------------
                    |                     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.
                

Références

Systems Manager Automation