https://hc-ping.com/682ce839-39c2-4ce9-ac03-3f6115661e64
Make a HTTP request to the provided URL each time your cron job completes. When Healthchecks.io does not receive a ping at the expected time, it sends you an alert. You can monitor any service that can make a HTTP request or send an email.
# m h dom mon dow command
8 6 * * * /home/user/backup.sh && curl -fsS --retry 3 -o /dev/null https://hc-ping.com/682ce839-39c2-4ce9-ac03-3f6115661e64
# using curl:
# (make sure it is installed on your system!)
curl --retry 3 https://hc-ping.com/682ce839-39c2-4ce9-ac03-3f6115661e64
# using wget:
wget https://hc-ping.com/682ce839-39c2-4ce9-ac03-3f6115661e64 -O /dev/null
# urllib with python 3.x:
import urllib.request
urllib.request.urlopen("https://hc-ping.com/682ce839-39c2-4ce9-ac03-3f6115661e64")
# urllib with python 2.x:
import urllib
urllib.urlopen("https://hc-ping.com/682ce839-39c2-4ce9-ac03-3f6115661e64")
# using requests:
import requests
requests.get("https://hc-ping.com/682ce839-39c2-4ce9-ac03-3f6115661e64")
require 'net/http'
require 'uri'
Net::HTTP.get(URI.parse('https://hc-ping.com/682ce839-39c2-4ce9-ac03-3f6115661e64'))
var https = require('https');
https.get("https://hc-ping.com/682ce839-39c2-4ce9-ac03-3f6115661e64");
package main
import "fmt"
import "net/http"
func main() {
_, err := http.Head("https://hc-ping.com/682ce839-39c2-4ce9-ac03-3f6115661e64")
if err != nil {
fmt.Printf("%s", err)
}
}
file_get_contents('https://hc-ping.com/682ce839-39c2-4ce9-ac03-3f6115661e64');
using (var client = new System.Net.WebClient())
{
client.DownloadString("https://hc-ping.com/682ce839-39c2-4ce9-ac03-3f6115661e64");
}
// the server returns appropriate CORS headers so cross-domain AJAX requests should work:
var xhr = new XMLHttpRequest();
xhr.open('GET', 'https://hc-ping.com/682ce839-39c2-4ce9-ac03-3f6115661e64', true);
xhr.send(null);
# inside a PowerShell script:
Invoke-RestMethod https://hc-ping.com/682ce839-39c2-4ce9-ac03-3f6115661e64
# Without an underlying script, passing the command to PowerShell directly:
powershell.exe -command &{Invoke-RestMethod https://hc-ping.com/682ce839-39c2-4ce9-ac03-3f6115661e64}
As an alternative to HTTP requests, you can also report "liveness" by sending email messages.
You can instruct Healthchecks.io to look for a particular keyword in the subject line. This is handy when your backup software sends an email after every run, and uses a different subject line depending on success or failure.
A list of your checks, one for each Cron job, daemon or scheduled task you want to monitor.
Give names and assign tags to your checks to easily recognize them later.
Tap on the integration icons to toggle them on and off.
Adjust Period and Grace time to match the periodicity and duration of your tasks.
| New. A check that has been created, but has not received any pings yet. | |
| Up. Time since last ping has not exceeded Period. | |
| Late. Time since last ping has exceeded Period, but has not yet exceeded Period + Grace. | |
| Down. Time since last ping has exceeded Period + Grace. When check goes from "Late" to "Down", Healthchecks.io sends you a notification. |
Alternatively, you can define the expected ping dates and times using a cron expression. See Cron Syntax Cheatsheet for the supported syntax features.
Grace Time specifies how "late" a ping can be before you will be alerted. Set it to be a little above the expected duration of your cron job.
You can add a longer, free-form description to each check. Leave notes and pointers for yourself and for your team.
You can also see the log of received pings and sent "Down" notifications.
Healthchecks.io provides status badges for each of the tags you have used. Additionally, the "Healthchecks.io" badge shows the overall status of all checks in your account.
The badges have public, but hard-to-guess URLs. You can use them in your READMEs, dashboards or status pages.
Healthchecks.io monitoring is a great fit for cron jobs and cron-like systems (systemd timers, Jenkins build jobs, Windows Scheduled Tasks, wp-cron, uwsgi cron-like interface, Heroku Scheduler, ...). A failed cron job often has no immediate visible consequences, and can go unnoticed for a long time.
Specific examples:
Healthchecks.io monitoring can be used for lightweight server monitoring: ensuring a particular system service, or the server as a whole is alive and healthy. Write a shell script that checks for a specific condition, and pings Healthchecks.io if successful. Run the shell script regularly.
Specific examples:
“Healthchecks.io has been extremely reliable and useful for the many years we've been using it. The system is very easy to use and well designed - the UI is clear and works the way you'd expect. The API is really handy too.”
“Healthchecks.io is an absolute lifesaver. I'm using it to monitor an IoT gateway, and once, thanks to the quick heads-up from Healthchecks, was able to save the device from being fried after it had been accidentally placed on top of a hot router while cleaning!”
“Healthchecks.io is a great service. Simple, effective, highly reliable. It's caught issues on multiple occasions so it makes me look good which is always nice.”
“Healthchecks.io is by far the most enjoyable, and simplest external monitoring tool we've ever used. It has never failed to perform its job even once, and has helped us detect errors in background tasks before they ever rise to a user-facing problem.”