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 utilise une logique d'évaluation des alarmes publique AWS APIs et connue pour détecter les points de données retardés ou manquants dans les métriques 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 problèmes liés à Amazon CloudWatch (CloudWatch) Alarm.
Comment fonctionne-t-il ?
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 elle se situe dans les 2 592 000 secondes (30 jours). -
Vérifie si une alarme est basée sur une métrique ou des mathématiques métriques ou s'il s'agit d'une alarme de détection d'anomalie.
-
Vérifie si l'état des 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 s'il manquait un ou plusieurs points de données à 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'un ou de plusieurs indicateurs retardés ou manqués.
-
Vérifie si les actions activées d'une alarme ont was/were été effectuées.
-
Génère un rapport de dépannage combinant tous les résultats de diagnostic.
Exécuter cette automatisation (console)
Type de document
Automatisation
Propriétaire
Amazon
Plateformes
Linux,macOS, 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
{ "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 :
-
Accédez
AWSSupport-TroubleshootCloudWatchAlarm
à Systems Manager sous Documents. -
Sélectionnez Execute automation (Exécuter l'automatisation).
-
Pour les paramètres d'entrée, entrez ce qui suit :
-
AutomationAssumeRole (Facultatif) :
Type :
String
Description : (Facultatif) Le nom de ressource Amazon (ARN) du rôle AWS AWS Identity and Access Management (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 lance ce runbook.
-
CloudWatchMetricAlarmName (Obligatoire) :
Type :
String
Description : (Obligatoire) Nom de l'alarme métrique Amazon CloudWatch (CloudWatch) à résoudre.
Modèle autorisé :
^[a-zA-Z0-9.:;,\\-_&() ]{1,255}$
-
AlarmTriggerTimestamp (Obligatoire) :
Type :
String
Description : (Obligatoire) Horodatage UTC lorsque 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 être une heure comprise dans les 30 derniers jours à compter d'aujourd'hui et au format.
YYYY-MM-DDTHH:mm:ssZ
Exemple :2024-10-29T09:04:00Z
Modèle autorisé :
^(\\d{4})-(\\d{2})-(\\d{2})T(\\d{2}):(\\d{2}):(\\d{2})Z$
-
-
Sélectionnez Exécuter.
-
L'automatisation démarre.
-
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 elle se situe dans les 2 592 000 secondes (30 jours). -
UpdateSSMDocumentInputChecksVariable
Met à jour la variable
SSMDocumentInputChecks
avec la valeurSSMDocumentInputChecks
deVerifyRunbookInputs
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 des mathématiques métriques ou s'il s'agit d'une alarme de détection d'anomalie.
-
CheckAlarmInInsufficientDataState
Vérifie si l'état des données d'une alarme est insuffisant.
-
UpdateInsufficientDataChecksVariable
Met à jour la variable
InsufficientDataChecks
avec la valeurInsufficientDataChecks
deCheckAlarmInInsufficientDataState
l'étape. -
BranchOnAlarmHasInsufficientData
Branche 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 valeurMetricMismatchChecks
deCheckMetricMismatch
l'étape. -
BranchOnMetricsMatched
Branche sur la
MetricsMatched
valeur de l'CheckMetricMismatch
étape, l'étape par défaut estCheckMissingDatapoint
. -
CheckMissingDatapoint
Vérifie s'il manquait un ou plusieurs points de données à une métrique à un horodatage donné.
-
UpdateMetricMissingDatapointsChecksVariable
Met à jour la variable
MetricMissingDatapointsChecks
avec la valeurMetricMissingDatapointsChecks
deCheckMissingDatapoint
l'étape. -
BranchOnMetricMissingDatapoint
Branche 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 valeurAlarmHistoryChecks
deGetAlarmHistoryDetails
l'étape. -
BranchOnAlarmHistoryFound
Branche 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'un ou de plusieurs indicateurs retardés ou manqués.
-
UpdateDelayedMetricChecksVariable
Met à jour la variable
DelayedMetricChecks
avec la valeurDelayedMetricChecks
deCheckDelayedMetric
l'étape. -
BranchOnMetricDelayedAndDatapointsMeetThreshold
Branche sur l'étape
MetricDelayed
etDatapointsMeetThreshold
les valeurs de l'CheckDelayedMetric
étape, l'étape par défaut estGenerateReport
. -
CheckActionDelivered
Vérifie si les actions activées d'une alarme ont was/were été effectuées.
-
UpdateActionDeliveredChecksVariable
Met à jour la variable
ActionDeliveredChecks
avec le résultatActionDeliveredChecks
deCheckActionDelivered
l'étape. -
GenerateReport
Compile le résultat des étapes précédentes et produit un rapport.
-
-
Une fois l'exécution terminée, consultez la section Sorties pour obtenir les résultats détaillés de l'exécution :
-
GenerateReport.Rapport
Un 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