ErrTap / DevelopersDocumentation
ErrTap docsconcepts / cron

Cron Heartbeats

Monitor scheduled jobs with token-authenticated heartbeat URLs and detect missed runs after an interval plus grace period.

How heartbeat monitors work

A cron monitor expects a ping at a fixed interval. If a ping does not arrive within the configured interval plus grace period, ErrTap marks the monitor MISSED and can fire a CRON_MISSED alert.

Creating a monitor

In the dashboard, open Cron → New heartbeat and supply:

FieldDescription
NameHuman-readable job name
Expected intervalSeconds between successful runs
Grace periodExtra seconds allowed before the run is missed

ErrTap generates a secret token and shows the complete ping URL in the monitor table.

Sending a heartbeat

POST the generated URL only after the job completes successfully:

curl -X POST https://your-host/ingest/heartbeat/<token>

The token in the URL authenticates the ping. A DSN authorization header is not used for heartbeats. The Browser, Node, and Laravel SDKs do not export a heartbeat helper, so use your runtime's normal HTTP client.

Missed detection and recovery

ErrTap compares lastPingAt with the monitor's expected interval and grace period. Once that window closes the monitor becomes MISSED; the next valid heartbeat changes it back to HEALTHY and resolves its open cron incident.

Configure notification channels and a CRON_MISSED rule under Alerts to notify the team when a job stops checking in.

On this page