Cron Job Monitoring

Cron job monitoring ensures your scheduled tasks run on time and complete successfully. SiteMonitor uses a heartbeat (ping) system: your job pings us after each run, and we alert you if a ping is missed.

How it works

01

Create a heartbeat

Create a monitor and get a unique ping URL. Configure your cron job to hit this URL after each run.

02

Your job pings us

Every time your cron job runs, it pings SiteMonitor. We track every execution and its timing.

03

Missed? You're alerted

If we don't receive a ping within the expected window, you get an alert immediately.

What is cron job monitoring?

Cron job monitoring is the practice of tracking whether your scheduled tasks (cron jobs, background workers, batch processes) run on time and complete successfully. Unlike uptime monitoring which checks from the outside, cron monitoring works from the inside. Your job reports its status to the monitoring service after each run.

Without cron monitoring, a silently failing backup script, a stuck data pipeline, or a crashed queue worker can go unnoticed for hours or days. SiteMonitor alerts you the moment a job misses its expected schedule.

What you can monitor

  • Unique ping URL for each cron job
  • Configurable expected intervals (every minute to monthly)
  • Grace period to account for normal timing variations
  • Success and failure tracking per execution
  • Execution duration monitoring
  • Exit code and output capture
  • Alerts on missed, late, or failed runs
  • Integrates with crontab, systemd, Kubernetes, and any scheduler

Frequently asked questions

You create a monitor in SiteMonitor and get a unique ping URL. Then you add a simple HTTP request to the end of your cron job script (e.g., curl -s https://ping.sitemonitor.plus/abc123). SiteMonitor tracks each ping and alerts you if a ping is missed or late.
Each monitor has a configurable grace period. If your job runs within the grace period, it's marked as late but no alert is sent. If it exceeds the grace period, SiteMonitor sends an alert. You can customize the grace period per monitor.
Yes. Each monitor has its own expected interval. You can monitor jobs that run every minute, every hour, daily, weekly, or on any custom schedule. SiteMonitor supports intervals from 1 minute to 30 days.
Yes. SiteMonitor works with any system that can make an HTTP request: crontab, systemd timers, Kubernetes CronJobs, AWS CloudWatch Events, GitHub Actions, and any other scheduler. Just add a curl or wget call to your job.
Yes. You can send the exit code and output of your cron job as part of the ping request. SiteMonitor stores the last 100 runs with their output, making it easy to debug failures without SSH access.

Ready to keep your sites online?

Set up your first monitor in under 2 minutes. No credit card required.