

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

# `AWSSupport-TroubleshootCloudWatchAlarm`
<a name="automation-awssupport-troubleshoot-cloudwatchalarm"></a>

 **Descripción** 

 El `AWSSupport-TroubleshootCloudWatchAlarm` manual ayuda a identificar y solucionar problemas relacionados con las alarmas Amazon CloudWatch () CloudWatch problemáticas o mal configuradas. Utiliza una lógica de evaluación de alarmas pública AWS APIs y conocida para detectar puntos de datos retrasados o ausentes en las métricas monitoreadas, lo que puede provocar que se omitan o se retrasen las acciones de alarma. Este manual proporciona un enfoque estructurado para investigar y resolver los problemas relacionados con Amazon CloudWatch (CloudWatch) Alarm. 

 **¿Cómo funciona?** 

 El manual de ejecución `AWSSupport-TroubleshootCloudWatchAlarm` lleva a cabo los siguientes pasos: 
+ Verifica los detalles de la alarma de Amazon CloudWatch (CloudWatch) y el valor del `AlarmTriggerTimestamp` parámetro para comprobar si está dentro de 2 592 000 segundos (30 días).
+ Comprueba si una alarma se basa en una métrica o matemática métrica o si se trata de una alarma detectora de anomalías.
+ Comprueba si una alarma tiene un estado de datos insuficiente.
+ Comprueba si las métricas utilizadas en la alarma coinciden con el `ListMetrics` valor.
+ Verifica si a una métrica le faltaban puntos de datos en una marca de tiempo determinada.
+ Obtiene el historial más reciente de una marca de tiempo determinada.
+ Comprueba si una alarma no se ha activado debido a un retraso o a un error en las métricas.
+ Comprueba si se han realizado las acciones habilitadas de una was/were alarma.
+ Genera un informe de solución de problemas que combina todos los resultados del diagnóstico.

 [Ejecuta esta automatización (consola)](https://console.aws.amazon.com/systems-manager/automation/execute/AWSSupport-TroubleshootCloudWatchAlarm) 

**Tipo de documento**

Automatización

**Propietario**

Amazon

**Plataformas**

Linux, macOS, Windows

**Parámetros**

**Permisos de IAM necesarios**

El parámetro `AutomationAssumeRole` requiere las siguientes acciones para utilizar el manual de procedimientos correctamente.
+ `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": "*"
        }
    ]
}
```

------

 **Instrucciones** 

Siga estos pasos para configurar la automatización:

1. Navegue hasta [https://console.aws.amazon.com/systems-manager/documents/AWSSupport-TroubleshootCloudWatchAlarm/description](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-TroubleshootCloudWatchAlarm/description)Systems Manager, en Documentos.

1. Elija Execute automation (Ejecutar automatización).

1. Para los parámetros de entrada, introduzca lo siguiente:
   + **AutomationAssumeRole (Opcional):**
     + Tipo: `String`
     + Descripción: (opcional) el Nombre de recurso de Amazon (ARN) del rol de AWS AWS Identity and Access Management (IAM) que permite a Systems Manager Automation realizar las acciones en su nombre. Si no se especifica ningún rol, Systems Manager Automation utiliza los permisos del usuario que inicia este runbook.
   + **CloudWatchMetricAlarmName(Obligatorio):**
     + Tipo: `String`
     + Descripción: (Obligatorio) El nombre de la alarma métrica de Amazon CloudWatch (CloudWatch) para solucionar el problema.
     + Valor permitido: `^[a-zA-Z0-9.:;,\\-_&() ]{1,255}$`
   + **AlarmTriggerTimestamp (Obligatorio):**
     + Tipo: `String`
     + Descripción: (Obligatorio) La marca horaria UTC en la que se produjo el problema de la alarma. Esta información es crucial para solucionar el problema y comprender el contexto en el que ocurrió. El valor de la marca de tiempo debe ser una hora de los últimos 30 días a partir de hoy y estar en ese formato. `YYYY-MM-DDTHH:mm:ssZ` Ejemplo: `2024-10-29T09:04:00Z`
     + Valor permitido: `^(\\d{4})-(\\d{2})-(\\d{2})T(\\d{2}):(\\d{2}):(\\d{2})Z$`

1. Seleccione Ejecutar.

1. Se inicia la automatización.

1. Este documento realiza los siguientes pasos:
   + **`VerifyRunbookInputs`**

     Verifica los detalles de la alarma de Amazon CloudWatch (CloudWatch) y el valor del `AlarmTriggerTimestamp` parámetro para comprobar si está dentro de 2 592 000 segundos (30 días).
   + **`UpdateSSMDocumentInputChecksVariable`**

     Actualiza la variable `SSMDocumentInputChecks` con el valor `SSMDocumentInputChecks` del paso. `VerifyRunbookInputs`
   + **`BranchOnAlarmIsVerified`**

     Se basa en la verificación de entradas de Runbook `AlarmTriggerTimestamp` y`CloudWatchAlarmName`.
   + **`CheckMetricAlarmType`**

     Comprueba si una alarma se basa en una métrica o matemática métrica o si es una alarma detectora de anomalías.
   + **`CheckAlarmInInsufficientDataState`**

     Comprueba si una alarma tiene un estado de datos insuficiente.
   + **`UpdateInsufficientDataChecksVariable`**

     Actualiza la variable `InsufficientDataChecks` con el valor `InsufficientDataChecks` del `CheckAlarmInInsufficientDataState` paso.
   + **`BranchOnAlarmHasInsufficientData`**

     Se ramifica según el `AlarmHasInsufficientData` valor del `CheckAlarmInInsufficientDataState` paso, el paso por defecto es`CheckMetricMismatch`.
   + **`CheckMetricMismatch`**

     Comprueba si las métricas utilizadas en la alarma coinciden con el `ListMetrics` valor.
   + **`UpdateMetricMismatchChecksVariable`**

     Actualiza la variable `MetricMismatchChecks` con el valor `MetricMismatchChecks` del `CheckMetricMismatch` paso.
   + **`BranchOnMetricsMatched`**

     Se ramifica según el `MetricsMatched` valor del `CheckMetricMismatch` paso, el paso por defecto es`CheckMissingDatapoint`.
   + **`CheckMissingDatapoint`**

     Comprueba si a una métrica le faltaban puntos de datos en una marca de tiempo determinada.
   + **`UpdateMetricMissingDatapointsChecksVariable`**

     Actualiza la variable `MetricMissingDatapointsChecks` con el valor del paso. `MetricMissingDatapointsChecks` `CheckMissingDatapoint`
   + **`BranchOnMetricMissingDatapoint`**

     Se ramifica según el `MetricMissingDatapoint` valor del `CheckMissingDatapoint` paso, el paso por defecto es`GetAlarmHistoryDetails`.
   + **`GetAlarmHistoryDetails`**

     Obtiene el historial más reciente de una marca de tiempo determinada.
   + **`UpdateAlarmHistoryChecksVariable`**

     Actualiza la variable `AlarmHistoryChecks` con el valor `AlarmHistoryChecks` del `GetAlarmHistoryDetails` paso.
   + **`BranchOnAlarmHistoryFound`**

     Se ramifica según el `AlarmHistoryFound` valor del `GetAlarmHistoryDetails` paso, el paso por defecto es`CheckDelayedMetric`.
   + **`CheckDelayedMetric`**

     Comprueba si una alarma no se ha activado debido a un retraso o a un error en las métricas.
   + **`UpdateDelayedMetricChecksVariable`**

     Actualiza la variable `DelayedMetricChecks` con el valor `DelayedMetricChecks` del `CheckDelayedMetric` paso.
   + **`BranchOnMetricDelayedAndDatapointsMeetThreshold`**

     Se ramifica en los `DatapointsMeetThreshold` valores `MetricDelayed` y del `CheckDelayedMetric` paso; el paso por defecto es`GenerateReport`.
   + **`CheckActionDelivered`**

     Comprueba si se han realizado las acciones activadas por una was/were alarma.
   + **`UpdateActionDeliveredChecksVariable`**

     Actualiza la variable `ActionDeliveredChecks` con la salida `ActionDeliveredChecks` del `CheckActionDelivered` paso.
   + **`GenerateReport`**

     Compila el resultado de los pasos anteriores y genera un informe.

1. Una vez completada la ejecución, revise la sección de resultados para ver los resultados detallados de la ejecución:
   + **GenerateReport.Informe**

     Un informe de la alarma métrica de Amazon CloudWatch (CloudWatch) proporcionada.

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

 **Referencias** 

Automatización de Systems Manager
+ [Ejecuta esta automatización (consola)](https://console.aws.amazon.com/systems-manager/documents/AWSSupport-TroubleshootCloudWatchAlarm/description)
+ [Ejecución de una automatización](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-working-executing.html)
+ [Configuración de Automatización](https://docs.aws.amazon.com//systems-manager/latest/userguide/automation-setup.html)
+ [Página de inicio de Support Automation Workflows](https://aws.amazon.com/premiumsupport/technology/saw/)