La mayoría del monitoreo responde "¿esto está roto?". Un dead man's switch responde una más difícil: "¿esto dejó de pasar?". Esa distinción importa, porque las fallas más peligrosas son las silenciosas, un backup nocturno que dejó de correr hace tres semanas, un cron job que murió sin error.
Qué es un dead man's switch
Un dead man's switch, también llamado heartbeat monitoring o cron monitoringinvierte el modelo. En vez de que vos pinguees el job, el job te pinguea a vos cada vez que corre. Si el ping esperado no llega a tiempo, el monitor dispara.
- Monitor tradicional: "chequeo tu endpoint cada minuto y alerto si da error". No ve jobs sin endpoint.
- Dead man's switch: "pingueame cada 24h; si no, alerto". Detecta el corte silencioso.
Para qué usarlo
Backups nocturnos, cron jobs, pipelines ETL, renovación de certificados, workers de colas.
Cómo configurarlo
# crontab: backup nocturno 2am, ping al tener éxito
0 2 * * * /usr/local/bin/backup.sh && curl -fsS https://heartbeat.example.com/ping/tu-monitor-idSi el backup falla (el && corta) o el job no corre, el ping no se dispara y el monitor alerta tras pasar la ventana. Dale un período de gracia (24h + 1h) para que el jitter normal no te despierte.
Alertas donde las vas a ver
Un dead man's switch sirve solo si la alerta le llega a una persona. Mandala al canal que tu equipo mira de verdad (Slack, email, SMS o un pager), así te enterás el día que el job se queda mudo y no el mes que viene. Muchas herramientas de uptime y monitores de cron dedicados ofrecen heartbeat checks; si armás el tuyo, corré el chequeo en infraestructura separada de los jobs que vigila.
