

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

Um alarme do PromQL monitora as métricas usando uma consulta instantânea do Prometheus Query Language (PromQL). A consulta seleciona as métricas ingeridas por meio do endpoint do OTLP do CloudWatch, e todas as séries temporais correspondentes retornadas pela consulta são consideradas em violação. O alarme avalia a consulta em um intervalo regular e rastreia cada série temporal em violação de forma independente como um *colaborador*.

Para obter informações sobre como ingerir métricas usando o OpenTelemetry, consulte [OpenTelemetry](CloudWatch-OpenTelemetry-Sections.md).

## Como funcionam os alarmes do PromQL
<a name="promql-alarm-how-it-works"></a>

Um alarme do PromQL avalia uma consulta instantânea do PromQL em uma programação recorrente definida por `EvaluationInterval`. A consulta retorna somente as séries temporais que satisfazem a condição. Cada série temporal retornada é um *colaborador*, identificado por seu conjunto exclusivo de atributos.

O alarme usa transições de estado baseadas na duração:
+ Quando um colaborador é retornado pela consulta, isso é considerado *em violação*. Se o colaborador continuar violando pelo período especificado por `PendingPeriod`, ele fará a transição para o estado `ALARM`.
+ Quando um colaborador deixa de ser retornado pela consulta, ele é considerado *em recuperação*. Se o colaborador permanecer ausente pelo período especificado por `RecoveryPeriod`, ele voltará ao estado `OK`.

O alarme está no estado `ALARM` quando pelo menos um colaborador está em violação há mais tempo do que o período pendente. O alarme voltará ao estado `OK` quando todos os colaboradores tiverem se recuperado.

## Configuração de alarmes do PromQL
<a name="promql-alarm-configuration"></a>

Um alarme do PromQL é configurado com os seguintes parâmetros:
+ **PendingPeriod** é a duração em segundos que um colaborador deve violar continuamente antes que ele faça a transição para o estado `ALARM`. Isso é equivalente à duração `for` da regra de alerta do Prometheus.
+ **RecoveryPeriod** é a duração em segundos que um colaborador deve parar de violar antes que ele volte ao estado `OK`. Isso é equivalente à duração `keep_firing_for` da regra de alerta do Prometheus.
+ **EvaluationInterval** é a frequência com que, em segundos, o alarme avalia a consulta do PromQL.

Para criar um alarme do PromQL, consulte [Criar um alarme usando uma consulta em PromQL](Create_PromQL_Alarm.md).