Heartbeat (cron)
Para tareas que no exponen un puerto: tu script avisa que corrió, y si no avisa a tiempo, te alertamos.
Cómo funciona
- Creá un monitor de tipo Heartbeat con el intervalo esperado (por ejemplo, 24 horas para un backup nocturno).
- Copiá la URL única que aparece en el detalle del monitor.
- Hacé un request a esa URL al final de tu tarea, solo si terminó bien.
Si no recibimos el latido dentro del intervalo más 60 segundos de margen, el monitor pasa a caído y se abre un incidente.
Ejemplos
cron
0 3 * * * /usr/local/bin/backup.sh && curl -fsS -m 10 https://ganyant.com/api/heartbeat/TU_TOKENsystemd timer (ExecStartPost)
ExecStartPost=/usr/bin/curl -fsS -m 10 https://ganyant.com/api/heartbeat/TU_TOKENPowerShell
Invoke-RestMethod -Uri "https://ganyant.com/api/heartbeat/TU_TOKEN" -Method Post -TimeoutSec 10Node.js
await fetch('https://ganyant.com/api/heartbeat/TU_TOKEN', { method: 'POST' });Detalles
- Se aceptan
GET,POSTyHEAD. - La respuesta es
200con{"ok":true}, o404si el token no existe. - El token es secreto: quien lo tenga puede marcar la tarea como ejecutada.