Uptime & heartbeats

Synthetic checks run from our servers, plus dead-man's-switch monitoring for your cron jobs.

Uptime monitoring is a synthetic check run from our servers, nothing in your visitors' browser, and it never counts toward your quota. Turn it on under Settings → Uptime monitoring and we'll request your site every 5 minutes, emailing you the moment it goes down, and again when it recovers, with the total downtime. Results live under Monitor → Uptime.

A single failing run is double-probed before we ever call it down, so transient blips don't page you. Two optional add-ons sharpen the check:

  • Keyword check: give us a string that should appear on the page. If a 200 OK comes back without it, we treat the site as down. Catches blank pages and error shells that still return a healthy status code.
  • SSL expiry: for HTTPS targets we read the TLS certificate and email you when it's within 14 days of expiring, once per certificate. No setup; it just watches.

Heartbeats (dead-man's-switch)

Uptime watches your site; heartbeats watch your jobs. For a cron, backup or scheduled task, create a heartbeat under Monitor → Uptime → Heartbeat monitors and have the job hit its ping URL on every successful run. If we stop hearing from it within its interval (plus a short grace), we email you. It's the inverse of uptime: we alert on silence.

crontab
# ping JAMP at the END of the job, so it only checks in on success
0 3 * * *  /usr/local/bin/backup.sh && curl -fsS https://www.jamp.io/api/heartbeat/hb_your_token

Any GET or POST counts as a ping. Put the curl after your task's success condition (as above) so a failed job goes quiet and triggers the alert, instead of pinging anyway.

Choosing what gets emailed

Every alert across all pillars (uptime, SSL, heartbeats, errors, performance, traffic) is toggled per-site under Dashboard → Alerts. Turn off anything you don't want in your inbox without disabling the monitoring itself.