Every site that gets added to Oh Dear will automatically have its uptime monitored.
Multi-location monitoring #
Each site is monitored from a primary location and verified from a secondary location. You can choose your primary location from within the Oh Dear dashboard.
If the primary location reports an error to Oh Dear, the secondary location is activated to verify that problem. Only if both the primary and the secondary checks report errors, we'll trigger an alert. This alleviates any false alerts.
Uptime check options #
To check uptime we'll send a simple
GET request to your site you provide. If it responds with a 2XX response, the check passes. In the settings screen of the site there are several options available to customize this check:
- look for string: we can check if a given string is found on the result. If it is not found, we'll mark the check as failed.
- http verb: instead of a simple
GETrequest you can specify that the check should be performed with a
- payload: when not using a
GETrequest to check your site, you can specify a payload. This payload will used a form parameters when checking your site
- headers: you can specify up to 5 extra headers that should be used in the uptime check request
Check frequency #
Uptime checks happen at least every 5 minutes from the primary location.
As soon as the primary location detects a problem, the secondary location will be used to verify it. From that point forward, all checks happen every minute as long as there is downtime, via both locations.
If you were to put this on a timescale, it would look like this.
|15:32h||Notification fired: site down|
|15:34h||Notification fired: OK|
The first problem is detected at 15:30h and the secondary location is immediately used to confirm the problem. If both locations confirm the site is down for 3 minutes in a row, you will be notified of this event.
The check at 15:34h confirmed the site was back online, so you'll be notified of that too.
Note: you can overwrite the behaviour of when we alert you, by changing the website settings in your dashboard.
What is downtime? #
We classify downtime in 2 ways:
- If we receive anything other than an
HTTP/200response code on the check page, we consider it down. Note that we will follow
HTTP/302redirects. The end result of the redirect should be an
- If we receive
HTTP/200but we didn't find the optional check string specified on the site settings screen, we consider it down.
- If the site takes more than 5 seconds to load, we consider it down.
Any of those events will mark the site as unavailable.
Detailed reporting #
If the site took too long to load, we can only show you that it timed out.
Operation timed out after 5000 milliseconds with 0 bytes received
However, if the site responded with a status code other than
HTTP/200, we will show you the exact HTTP response headers we received to help you troubleshoot, along with the IP(s) we used to monitor your site.
Downtime is verified from multiple locations, those locations and their IP addresses are confirmed in the notification:
Monitored from: Paris, France (126.96.36.199, 2001:19f0:6801:5f3:5400:1ff:fe38:3572) Verified downtime via: Chicago, USA (188.8.131.52, 2001:19f0:5c01:7c0:5400:1ff:fe38:72f1)
All debug-headers are supplied for you, together with copy/paste cURL commands.
$ curl -i https://yoursite.tld HTTP/1.1 500 Internal Server Error Date: Sun, 03 Dec 2017 16:05:11 GMT Content-Type: text/html; charset=UTF-8 Transfer-Encoding: chunked Connection: keep-alive Set-Cookie: ...
With that information, you should have all the needed information to troubleshoot the problem.
Monthly reporting #
Each month, you'll receive an uptime report for all your sites to show you how well they performed.
In it, we show you what percentage of uptime each site received, as monitored via its primary location. If a site is down, it'll be subtracted from the total uptime.
Here's what that might look like.
Want to know what happened during that month? Click through each site and navigate to the uptime page in the Oh Dear dashboard to see the timings of each downtime.