I use a website monitoring service and it has reported that my website was down recently. Should I rely on them? Are they accurate?
The answer to that question is both yes and no.
There are so many possibilities why a website went off-line, all of them have one thing in common:
Your visitors can’t access your site and maybe they will never come back!
Some of the possible problems why a website might be off-line are listed below:
1) The web server or network is down – A very common problem, there is a lot involved in displaying a website.
2) Some part of the server has stopped working – might just be something like MySQL or named/bind or Apache.
3) Too much traffic on your site – Either from high traffic or from a DoS/DDoS attack. 5000 visitors at the same time might be enough to make your site slow or that a web server crashes.
4) External serving problems; a name server or DNS server is down – if your DNS is down, it’s possible that you see the problem a day later (because of TTL), while others see that your site has been down for a while.
5) A script stopped working properly – If a script (CGI/PHP) stops working; could be due to changes, PHP version changes, incompatibility and/or permissions, that can cause your site to be down.
6) Changes to your firewall or security device (or the firewall somehow getting disabled. By default, firewall rules are usually set to deny everything if not running).
7) And last but not least, your site may be compromised.
Even if you try to do everything to protect your website or application against the trouble listed above, you’re still not 100% safe from failure.
So you rely on 3rd party services to monitor your website and hopefully; if a problem occurs you're quickly notified before you lose a lot of visitors.
But which one should you use? A free one? A paid service? That's up to you and how important uptime is to you. You should also find out how their services work and how many servers they use worldwide to help in the monitoring process. How often do they check? What errors are acceptable?
The choice is endless because there are a lot of different providers out there.
Some providers only rely on a simple ping command. They send a ping command to your website and if that ping has any % loss, they notify you. Well, with just some of the issues I listed above, a ping can be unreliable. Other service providers rely on a simple http/https request (telnet, nc) and others rely on traceroute, nmap, etc. These are all networking tools that can be at times unreliable.
So you may get some false-positives from one or more of these providers/services and any downtime cannot be correlated via the logs on the server.