PingWise
Cron & scheduled jobs

Know the moment a cron job fails.

PingWise cron job monitoring watches your backups, billing runs and scheduled tasks with a simple heartbeat. Your job pings a unique URL when it runs — if it doesn’t check in on time, or reports a failure, we alert you instantly. No agent to install.

How it works — in three steps

  1. Create a cron check. Tell PingWise the schedule (a simple interval like “every day”, or a cron expression like 0 2 * * *) and a grace period. You get a unique ping URL.
  2. Add one line to your job. Make your cron job ping that URL when it finishes — the job pings only if it succeeds, so a failure is caught automatically.
  3. Get alerted. If the expected ping doesn’t arrive on time, or the job reports a failure, we raise an incident and alert you on your chosen channels.
0 2 * * *  /home/backup.sh && curl -fsS https://pingwise.co/ping/your-unique-token

The && means the ping is sent only when the job exits successfully — so a crash, a server that never woke up, or a failed backup is caught by the missed-ping deadline. Optionally ping https://pingwise.co/ping/your-unique-token/start when it begins (measures duration) and https://pingwise.co/ping/your-unique-token/fail to report an error immediately.

Everything you need to trust your scheduled jobs

Missed-run detection

The dead-man’s-switch: if a job doesn’t check in within its schedule and grace period, we alert you — catching silent failures active monitoring can’t.

Explicit failure alerts

Ping the /fail URL (or send a non-zero exit code) and PingWise flags the run as failed immediately, with the cause on record.

Run-time & “ran too long”

Ping /start when the job begins and PingWise measures duration — and alerts if a job starts but never finishes within its maximum run time.

Cron expressions or intervals

Schedule with the same 5-field cron syntax as your crontab (with a timezone), or a simple “every N minutes/hours/days”.

Alerts everywhere

Email, SMS, Slack, Microsoft Teams, Discord, Telegram, webhook and ClickUp — the same channels as the rest of your monitoring.

No agent to install

Just add a URL to your crontab. Works on any server, container or CI runner that has curl — nothing to install and nothing to change in your code.

Cron monitoring FAQ

What is cron job monitoring?

Cron job monitoring (also called heartbeat or dead-man’s-switch monitoring) tells you when a scheduled job — a cron job, backup, or recurring task — fails to run. Instead of checking a job from the outside, the job reports in: it pings a unique URL each time it runs. If an expected ping doesn’t arrive on schedule, PingWise alerts you.

How do I monitor a cron job with PingWise?

Create a cron check to get a unique ping URL, then add it to your job — for example append “&& curl -fsS https://pingwise.co/ping/<token>” to the crontab line. The job pings PingWise when it finishes successfully. If the ping is missing (schedule plus grace) or the job reports a failure, we alert you.

Do I need to install an agent or change my code?

No. The simplest setup is a single line added to your crontab — no agent, no library, no changes inside your program. Any server with curl works. Optional /start and /fail pings give you run-time duration and explicit failure detection if you want them.

What can it detect?

A job that never ran (missed ping), a job that reported a failure (/fail or a non-zero exit code), and a job that started but ran too long (via /start plus a max run time). You schedule with a simple interval or a full cron expression with a timezone.

See all monitoring features →