

# Alarmas PromQL
<a name="alarm-promql"></a>

Una alarma PromQL supervisa las métricas mediante una consulta instantánea en lenguaje de consultas Prometheus (PromQL). La consulta selecciona las métricas incorporadas a través del punto de conexión de OTLP de CloudWatch y todas las series temporales coincidentes devueltas por la consulta se consideran infractoras. La alarma evalúa la consulta a intervalos regulares y realiza un seguimiento independiente de cada serie temporal que supera el umbral como *colaborador*.

Para obtener información sobre la incorporación de métricas mediante OpenTelemetry, consulte [OpenTelemetry](CloudWatch-OpenTelemetry-Sections.md).

## Cómo funcionan las alarmas PromQL
<a name="promql-alarm-how-it-works"></a>

Una alarma PromQL evalúa una consulta instantánea PromQL según un cronograma recurrente definido por el `EvaluationInterval`. La consulta devuelve solo las series temporales que cumplen la condición. Cada serie temporal devuelta es un *colaborador*, identificado por su conjunto único de atributos.

La alarma utiliza transiciones de estado basadas en la duración:
+ Cuando la consulta devuelve un colaborador, se considera un colaborador *infractor*. Si el colaborador sigue en estado infractor durante el tiempo especificado por `PendingPeriod`, pasará al estado `ALARM`.
+ Cuando la consulta deja de devolver un colaborador, se considera que este se está *recuperando*. Si el colaborador permanece ausente durante el tiempo especificado por `RecoveryPeriod`, este vuelve al estado `OK`.

La alarma se activa está en estado `ALARM` cuando al menos un colaborador se ha mantenido en estado infractor durante más tiempo que el periodo pendiente. La alarma vuelve al estado `OK` cuando todos los colaboradores se hayan recuperado.

## Configuración de una alarma PromQL
<a name="promql-alarm-configuration"></a>

Una alarma PromQL se configura con los siguientes parámetros:
+ **PendingPeriod** es la duración en segundos durante la cual un un colaborador debe estar en estado infractor antes de pasar al estado `ALARM`. Esto equivale a la duración `for` de la regla de alerta de Prometheus.
+ **RecoveryPeriod** es la duración en segundos durante la cual un colaborador debe evitar un estado infractor antes de pasar al estado `OK`. Esto equivale a la duración `keep_firing_for` de la regla de alerta de Prometheus.
+ **EvaluationInterval** es la frecuencia, en segundos, con la que la alarma evalúa la consulta PromQL.

Para crear una alarma PromQL, consulte [Creación de una alarma mediante una consulta PromQL](Create_PromQL_Alarm.md).