Cron Job Monitoring Know When Things Break
Dead man's switch for cron jobs. HTTP uptime checks for your services. One dashboard.
$ systemctl status backup.timer
inactive (dead) since Tue 2026-03-11 03:00:01
$ ls /var/backups/latest/
ls: cannot access: No such file or directory
Silent failures cost money
Cron jobs don't page you when they stop. Disks fill up, scripts break, containers restart. You find out when it's already a problem.
# crontab
0 3 * * * /opt/backup.sh \
&& curl -fsS cronr.com/ping/abc123
*/15 * * * * /opt/etl/run.py \
&& curl -fsS cronr.com/ping/def456
One curl. Done.
Append a curl to your job. If the ping stops arriving, you get notified. Works with cron, systemd, Kubernetes CronJobs, Airflow, Jenkins, GitHub Actions.
HTTP checks too
Give us a URL. We check it every minute. Status code, response time, SSL expiry, keyword in the body.
Cron monitoring and uptime monitoring in the same place. Same alerts, same dashboard, same API.
cronr
nightly-backup is down
Last ping: 14h ago. Expected: every 24h.
cronr
payments.example.com is down
HTTP 503. Response time: timeout.
Alerts go where you work
Set up notification channels once, assign them to any check. Route production alerts to PagerDuty, staging to a Slack channel, everything to email as a fallback.
Built for ops teams
Status pages. A public page for each project. Your customers see which services are up, what incidents happened, when maintenance is scheduled.
Teams. Invite people. Admins manage, members monitor, viewers see status. Share checks across the team without sharing credentials.
Import. Moving from Healthchecks.io or UptimeRobot? Import your checks. All your Cloudflare domains in one click.
API. Token-authenticated REST. Create checks from Terraform, your deploy script, or a CI pipeline. Read the docs.
$ curl -H "Authorization: Bearer cronr_..." \
cronr.com/api/v1/checks/
{"checks": [{"name": "backup", "status": "up"}, ...]}
Your cron jobs are running right now.
Are you sure?
Add one line to your crontab. Free, no credit card.