Website uptime and HTTP monitoring
DoubleCheck requests your website or API from the outside, checks the status code and, if you want, the content, and alerts you when it stops answering the way it should.
The problem
A website can be down, or up but broken: a 500 error after an update, a login page instead of the shop, an expired certificate. From inside the office everything may look fine.
Most of the time the first one to notice is a customer.
Why it matters
Every minute a site or API is down costs orders, leads or trust, and the time it takes before someone notices is often longer than the time it takes to fix.
Response times also tell you something: a site that slowly gets slower is often a problem on its way.
How to check it manually
Request the page and look at the status code and timing, for example with curl:
curl -sS -o /dev/null -L -w "%{http_code} %{time_total}s\n" https://www.example.com/
Add a search for a word that should be on the page to catch pages that answer 200 but show an error. Then do it again every minute, day and night.
How DoubleCheck checks it
DoubleCheck sends a GET request to your URL at the interval you choose and follows redirects, up to three, just like a browser.
You set the status code you expect and, optionally, a piece of text that must be on the page. That way a page that answers 200 but shows an error message is still caught.
Each run records how long DNS, connecting, the TLS handshake and the first byte took, so a slow site shows where the time goes.
- Measures
- An HTTP(S) GET request to your URL, following up to 3 redirects, with the time spent on DNS, connecting, TLS and the first byte measured separately.
- Runs
- Every minute by default. You set the interval per check.
- Status
-
- OK when the final response has the status code you expect (200 by default).
- Warning on 403 Forbidden, or when the text you expect is missing from the page.
- Error on any other status code, a timeout, a DNS failure or a certificate error.
- Connection errors and 500, 502, 503 and 504 answers are retried up to 3 times within the same run before they count.
- A problem is only reported after a set number of failed runs in a row (2 by default), so one hiccup does not wake anyone up.
Frequently asked questions
How often is my website checked?
Every minute by default. You can set a longer interval per check.
Can I check for specific text on the page?
Yes. If the text you set is not found on the final page, the check goes to warning, even when the status code is correct.
Will one failed request trigger an alert?
No. Failed connections and 5xx answers are retried within the same run, and a problem is only reported after a number of failed runs in a row that you can set.
Can I monitor internal addresses?
No. DoubleCheck checks from the internet and refuses private IP addresses, also when a redirect points to one.
Where are the checks run from?
From a fixed set of IP addresses that you can look up through the DNS name monitor.doublecheck.live. See Firewall and network requirements for how to allow them in your firewall or WAF.
Start monitoring with DoubleCheck
Alerts by email, SMS, Slack, Microsoft Teams or Discord. You pay per check run: cost management in the app shows what every check costs, and a longer interval lowers it.