Healthchecks.io Documentation - Healthchecks.io (2025)

Healthchecks.io is a service for monitoring cron jobs (see guide)and similar periodic processes:

  • Healthchecks.io listens for HTTP requests ("pings") from your cron jobs and scheduled tasks.
  • It keeps silent as long as pings arrive on time.
  • It raises an alert as soon as a ping does not arrive on time.

Healthchecks.io works as a dead man's switch for processes that need torun continuously or on a regular, known schedule. Some examples of jobs that wouldbenefit from Healthchecks.io monitoring:

  • filesystem backups, database backups
  • task queues
  • database replication monitoring scripts
  • report generation scripts
  • periodic data import and sync jobs
  • periodic antivirus scans
  • DDNS updater scripts
  • SSL renewal scripts

Healthchecks.io is not the right tool for:

  • monitoring website uptime by probing it with HTTP requests
  • collecting application performance metrics
  • log aggregation

Concepts

A Check represents a single service you want to monitor. For example, whenmonitoring cron jobs, you would create a separate check foreach cron job to be monitored. Each check has a unique ping URL, schedule,and associated integrations. For the available configuration options, seeConfiguring checks.

Each check is always in one of the following states, depicted by a status icon:

New. A newly created check that has not received any pings yet. Each newcheck you create will start in this state.
Up. All is well. The last "success" signal has arrived on time.
Late. The "success" signal is due but has not arrived yet.It is not yet late by more than the check's configured Grace Time.
Down. The "success" signal has not arrived yet, and the Grace Time has elapsed.When a check transitions into the "Down" state, Healthchecks.io sends alertmessages via the configured integrations.
Paused. You can manually pause the monitoring of specific checks. For example,if a frequently running cron job has a known problem, and a fix is in the works but not yet ready, you can pause monitoring the corresponding check temporarily toavoid unwanted alerts about a known issue.
Additionally, if the most recent received signal is a "start" signal,this will be indicated by three animated dots under the check's status icon.

Ping URL. Each check has a unique Ping URL. Clients (cron jobs, backgroundworkers, batch scripts, scheduled tasks, web services) make HTTP requests to theping URL to signal a start of the execution, a success, or a failure.

Healthchecks.io supports two ping URL formats:

  • https://hc-ping.com/<uuid>
    The check is identified by its UUID. Check UUIDs are assignedautomatically by Healthchecks.io, and are guaranteed to be unique.
  • https://hc-ping.com/<project-ping-key>/<name-slug>
    The check is identified by project's Ping key and check'sslug (user-chosen, URL-friendly identifier). Optionally supports auto-provisioning:if you ping a slug value that does not have a corresponding check, Healthchecks.io cancreate the check automatically.

You can append /start, /fail or /<exitcode> to the base ping URL to send"start" and "failure" signals. The "start" and "failure" signals are optional.You don't have to use them, but you can gain additional monitoring insightsif you do use them. See Measuring script run time andSignaling failures for details.

You should treat check UUIDs and project Ping keys as secrets. If you make them public,anybody can send telemetry signals to your checks and mess with your monitoring.

Read more about Ping URLs in Pinging API.

Grace Time is one of the configuration parameters you can set for each check.It is the additional time to wait before sending an alert when a checkis late. Use this parameter to account for minor, expected deviations in jobexecution times. If you use "start" signals tomeasure job execution time, Grace Time also sets themaximum allowed time gap between "start" and "success" signals. If a jobsends a "start" signal but does not send a "success" signal within grace time,Healthchecks.io will assume failure and send out alerts.

An Integration is a specific method for delivering monitoring alerts when a check'schange states. Healthchecks.io supports many types of integrations: email,webhooks, SMS, Slack, PagerDuty, etc. You can set up multiple integrations.For each check, you can specify which integrations it should use.

For more information on integrations, seeConfiguring notifications.

Project. To keep things organized, you can group checks and integrations in Projects.Your account starts with a single default project, but you can create additional projects as needed. You can transfer existing checks between projectswhile preserving their configuration and ping URLs.

Each project has a configurable name, a separate set of API keys, and a separateproject team. The project's team is the set of people you have granted read-only orread-write access to the project.

For more information on projects, see Projects and teams.

Healthchecks.io Documentation - Healthchecks.io (2025)
Top Articles
Latest Posts
Recommended Articles
Article information

Author: Nathanial Hackett

Last Updated:

Views: 6529

Rating: 4.1 / 5 (52 voted)

Reviews: 91% of readers found this page helpful

Author information

Name: Nathanial Hackett

Birthday: 1997-10-09

Address: Apt. 935 264 Abshire Canyon, South Nerissachester, NM 01800

Phone: +9752624861224

Job: Forward Technology Assistant

Hobby: Listening to music, Shopping, Vacation, Baton twirling, Flower arranging, Blacksmithing, Do it yourself

Introduction: My name is Nathanial Hackett, I am a lovely, curious, smiling, lively, thoughtful, courageous, lively person who loves writing and wants to share my knowledge and understanding with you.