What is heartbeat monitoring and how does it work?+
Heartbeat monitoring works on a dead man's switch principle. You configure a monitor with an expected check-in interval, and your cron job or scheduled task sends an HTTP request to a unique URL after each successful run. If PulseStack™ does not receive the heartbeat within the expected window plus a grace period, it marks the job as failed and triggers your configured alerts. This catches silent failures that produce no error output.
How do I add heartbeat monitoring to an existing cron job?+
Add a single HTTP request to the end of your script. For a bash script, append curl -fsS --retry 3 followed by your unique heartbeat URL. For Python, add a requests.get() call. For Node.js, use fetch(). The request takes milliseconds and confirms the job completed successfully. If the script crashes before reaching that line, the heartbeat never fires and PulseStack™ alerts you.
What is the difference between heartbeat monitoring and uptime monitoring?+
Uptime monitoring actively checks your services at regular intervals by sending requests to your endpoints. Heartbeat monitoring is passive. It waits for your systems to check in. Uptime monitoring watches public-facing services like websites and APIs. Heartbeat monitoring watches internal processes like cron jobs, batch imports, data pipelines, and backup scripts that have no public endpoint to check.
Can I monitor cron jobs that run on different schedules?+
Yes. Each heartbeat monitor has its own expected interval and grace period configured independently. You can monitor a job that runs every minute alongside one that runs weekly. The interval tells PulseStack™ how often to expect a check-in, and the grace period accounts for natural variation in execution time. Set the grace period to at least 20% of your expected runtime.
What happens if my cron job runs but produces incorrect results?+
Basic heartbeat monitoring confirms execution, not correctness. For validation, you can include exit code checking in your script so the heartbeat only fires on success. You can also send a POST request with a JSON body containing metrics like rows processed or records exported. PulseStack™ can validate these values against thresholds you define, so a job that runs but processes zero records still triggers an alert.
How quickly does PulseStack™ alert on a missed heartbeat?+
Alerts fire as soon as the expected interval plus grace period expires without a check-in. For a job that runs every 5 minutes with a 2-minute grace period, you will be alerted within 7 minutes of a failure. Alerts go through any of the 16+ channels including email, SMS, phone calls, Slack, PagerDuty, and webhooks. There is no additional polling delay.
Can I pause heartbeat monitoring during maintenance windows?+
Yes. You can schedule maintenance windows that suppress alerts during planned downtime. This prevents false alarms when you intentionally stop services for deployments, migrations, or server maintenance. You can set one-time windows or recurring windows for regular maintenance schedules. Monitoring resumes automatically when the window ends.
Does heartbeat monitoring work with serverless functions and cloud jobs?+
Yes. Heartbeat monitoring works with AWS Lambda scheduled events, Google Cloud Scheduler, Azure Timer Triggers, Vercel Cron, Railway cron jobs, and any other serverless or managed cron service. Since these platforms handle scheduling externally, heartbeat monitoring is often the only way to verify that the function actually executed and completed without errors.
How many cron jobs can I monitor on the free plan?+
The free plan includes 50 monitors total, and heartbeat monitors count toward that limit. Each cron job you want to track requires one monitor. Checks on the free plan support 3-minute resolution, meaning the shortest expected interval is 3 minutes. Paid plans support 30-second resolution and higher monitor counts.
Can I see a history of when my cron jobs ran and how long they took?+
Yes. PulseStack™ logs every heartbeat received, including the timestamp and any payload data you send. The dashboard shows a timeline of successful check-ins, missed windows, and alert events. You can track execution patterns over days, weeks, or months to identify trends like gradually increasing runtime that may indicate a problem developing before it causes failures.