Skip to content
Latchkey

O Que É um Heartbeat Check? Sinais de Vitalidade Explicados

Um heartbeat check monitora a chegada regular de um sinal e emite um alerta quando esse sinal para, detectando falhas pela ausência da atividade esperada.

A maior parte do monitoramento vigia a ocorrência de coisas ruins. Um heartbeat check inverte isso: ele vigia uma coisa boa que não acontece. Ao esperar um ping periódico e alertar sobre sua ausência, ele captura falhas silenciosas, o job que simplesmente nunca rodou, que o monitoramento baseado em sintomas pode facilmente deixar passar.

Monitoramento por ausência

Um heartbeat check, às vezes chamado de dead-man switch, espera que algo se reporte em um cronograma. Enquanto o heartbeat chega, está tudo bem. Quando ele não chega dentro da janela esperada, o monitor conclui que a coisa está quebrada ou travada e dispara um alerta.

Por que falhas silenciosas exigem isso

Algumas falhas não produzem erro, alerta ou log, elas simplesmente não acontecem. Um batch job noturno que nunca inicia não emite nada para ser capturado. Heartbeat checks são projetados exatamente para essa lacuna: a ausência do heartbeat esperado é em si o sinal de que algo deu errado.

Como os heartbeats são configurados

Você define um intervalo esperado e um período de tolerância. A tarefa monitorada faz um ping no endpoint do heartbeat quando conclui com sucesso; o serviço de monitoramento acompanha o tempo desde o último ping. Ultrapasse o intervalo mais a tolerância, e ele alerta. Ajustar o período de tolerância equilibra a capacidade de resposta contra os falsos alarmes.

Heartbeats para jobs agendados e CI

Heartbeat checks são ideais para cron jobs, pipelines agendados e backups, qualquer coisa que rode em um temporizador onde a não execução silenciosa é o verdadeiro risco. Um workflow de CI agendado pode fazer um ping em um heartbeat ao ter sucesso, de modo que, se um build noturno parar de rodar silenciosamente, você descobre na manhã seguinte em vez de semanas depois.

Heartbeats vs uptime checks

Um uptime check sonda ativamente um serviço de fora; um heartbeat espera passivamente que o serviço se reporte. Uptime checks são adequados para endpoints sempre ativos; heartbeats são adequados para tarefas periódicas que não têm um endpoint para sondar. Eles cobrem modos de falha complementares.

Principais conclusões

  • Um heartbeat check alerta quando um sinal periódico esperado para.
  • Ele captura falhas silenciosas que não emitem nenhum erro.
  • Ele é configurado com um intervalo esperado e um período de tolerância.
  • É ideal para cron jobs e pipelines agendados.

Guias relacionados