How to Monitor Cron Jobs and Scheduled Tasks

Why “no news is good news” doesn’t work for scheduled jobs – and what to check instead.

Direct answer: Cron jobs and scheduled tasks can’t be monitored with a standard HTTP check, because nothing calls out to be checked – the job either runs or it silently doesn’t. The fix is heartbeat monitoring: the job itself confirms it ran on schedule, and the monitor alerts if that confirmation doesn’t arrive within the expected window.

Key takeaways

  • Scheduled jobs fail silently – there’s no request to check, so standard uptime monitoring doesn’t cover them.
  • Heartbeat monitoring flips the model: the job reports in, rather than being polled.
  • Billing, exports and other customer-facing scheduled jobs deserve monitoring even when they “never” fail.
  • Exact configuration options (grace periods, minimum intervals) should be confirmed against current Sentinel documentation before you build a check – this article covers the concept, not the specific settings.

Why can’t cron jobs be monitored like a website?

Website and API monitoring works by sending a request and checking the response. A cron job doesn’t expose anything to request – it runs on its own schedule, in the background, with no endpoint for a monitor to poll. If it fails to run, or errors partway through, there’s no HTTP response that tells you that happened. The failure is invisible unless something is specifically watching for it.

What is heartbeat monitoring?

Heartbeat monitoring reverses the usual check direction. Instead of a monitor polling your system, your scheduled job pings the monitoring service when it completes successfully. The monitor expects that ping on a schedule; if it doesn’t arrive in time, that absence is treated as a failure and triggers an alert. Sentinel supports heartbeat (cron job) checks alongside HTTP and DNS monitors, for exactly this kind of job.

Which scheduled jobs are worth monitoring?

Prioritise jobs where a silent failure has real consequences:

  • Billing runs – a missed billing cycle affects revenue directly and can go unnoticed until a customer complains, or worse, doesn’t.
  • Data exports or backups – a failed backup is often only discovered when it’s needed, which is the worst possible time.
  • Report generation – less urgent, but still worth a lower-priority heartbeat if customers or internal teams rely on the output.

How do you set one up, conceptually?

At a high level, heartbeat monitoring for a scheduled job involves three steps: create a heartbeat monitor for the job, add a call to the monitor’s ping endpoint at the end of the job’s successful run, and configure the alert routing for when a ping doesn’t arrive as expected. The specific settings available for timing and tolerance – how long the monitor waits before flagging a missed run – depend on current product configuration and should be checked directly in the Sentinel dashboard, or with the Sentinel team, rather than assumed from this article.

What happens if the job fails partway through?

A heartbeat monitor confirms a job completed – it’s a good idea to only send the “success” ping at the very end of the job’s logic, after any error-handling has passed, so a job that starts but fails midway doesn’t falsely report as healthy.

Original Sentinel evidence

Heartbeat sequence diagram: scheduler starts a job, the job sends a success signal to Sentinel after completion, Sentinel may acknowledge it, and a missing or late heartbeat alerts the owner.

Frequently asked questions

Do I need heartbeat monitoring for every scheduled job?

No – prioritise jobs with real customer or business consequences, such as billing or backups. Low-impact internal jobs can be left unmonitored or added later.

What’s the difference between heartbeat monitoring and HTTP monitoring?

HTTP monitoring polls a URL and checks the response. Heartbeat monitoring waits for the monitored system to check in – better suited to background jobs that don’t expose an endpoint to poll.

Can heartbeat monitoring tell me why a job failed, not just that it did?

No – a missed heartbeat tells you the job didn’t complete as expected. Diagnosing why still requires checking your own application logs.

Get started

Scheduled job monitoring is one part of the wider approach covered in the SaaS monitoring guide for small teams. Sentinel’s Team plan includes heartbeat monitoring alongside HTTP, SSL, DNS and domain checks.

View the Sentinel Team plan

LinkedIn
Facebook
X
WhatsApp

Keep up to date