Heartbeat & cronjob monitoring
Dead-man's switch for cron jobs, backups, queue workers and internal services. The ping stops — you get alerted.
Not every system exposes a public endpoint. Nightly backups, cron jobs, queue workers or internal integrations run in the background — and when they fail, you usually find out when something else breaks. Heartbeats flip monitoring around: your job pings an HTTPS endpoint at defined intervals. If the ping stops, we alert immediately. Plus: TCP/port-based service monitoring for SMTP, FTP, databases and custom protocols. And on-call schedules with automatic rotation so the wrong person doesn't get woken up at night.
Heartbeat & cronjob monitoring features
Heartbeat slugs
One unique ping endpoint per job via slug. `curl https://api.xictraq.com/api/heartbeat/<slug>/ping` at the end of your cron script — done.
Per-job grace period
Set expected interval and tolerance: "every 24h ±1h". If the ping arrives later, the alert fires. Ideal for backup scripts with variable runtime.
Duration & output anomaly
Append optional metrics to the ping — items, exit_code, duration_ms. XICTRAQ then additionally detects empty runs (ran but did nothing), runtime outliers (adaptive, mean + 3σ per hour-of-week, opt-in) and error exit codes. Auto-recovers on the next healthy ping.
TCP & protocol monitoring
Checks for any TCP port (25, 587, 465 for SMTP · 3306 for MySQL · 6379 for Redis) plus SMTP banner verification and custom protocols.
Dead-man alert
No ping = alert. On all configured channels (email, Slack, Teams, Discord, Telegram, webhook). Deduplicated so no alert flood hits you.
On-call schedules
Weekly or daily rotation between team members with automatic handoff notifications. Vacation overrides supported.
Incident management
Every alert can escalate to an incident: acknowledge, comments, resolve, post-mortem link. Full audit trail per incident.
How it works
Create a heartbeat
In the dashboard: enter name, expected interval and grace period. XICTRAQ generates a unique ping URL.
Ping at the end of the job
Add the ping call at the end of a successful cron script — backup, queue worker, deployment. A one-line curl is enough.
Get alerted when nothing arrives
If the ping does not arrive within the grace period, the alert fires immediately on all configured channels. On-call schedule decides who gets it.