Monitor your first cron job in under 2 minutes.
Log in, click New monitor, give it a name and set how often your job runs. You'll get a unique ping URL.
Call the ping URL at the end of your job. That's it — if we don't hear from it, we alert you.
Enable duration monitoring in the monitor settings, then use the two-call pattern. We track how long your job takes and alert you if it runs unexpectedly slow.
# Simple heartbeat
curl -s https://deadmancheck.io/ping/YOUR-ID
# With duration tracking
curl -s https://deadmancheck.io/ping/YOUR-ID/start
./your_job.sh
curl -s https://deadmancheck.io/ping/YOUR-ID
# Report failure
curl -s https://deadmancheck.io/ping/YOUR-ID/fail?exit_code=1
import httpx
PING_URL = 'https://deadmancheck.io/ping/YOUR-ID'
# At start
httpx.get(f'{PING_URL}/start')
# ... your job ...
# On success
httpx.get(PING_URL)
# On failure
httpx.get(f'{PING_URL}/fail', params={'exit_code': 1})
- name: Run job
run: ./your_job.sh
- name: Ping DeadManCheck
if: success()
run: curl -s https://deadmancheck.io/ping/YOUR-ID
- name: Report failure
if: failure()
run: curl -s https://deadmancheck.io/ping/YOUR-ID/fail
const PING_URL = 'https://deadmancheck.io/ping/YOUR-ID';
await fetch(`${PING_URL}/start`);
try {
await yourJob();
await fetch(PING_URL);
} catch (err) {
await fetch(`${PING_URL}/fail?exit_code=1`);
throw err;
}