What I think would be extremely useful for this app is the following:
One of the server's checked can be defined as the benchmark server. If this server tests OFF, all other checks will not be logged or have an alert sent. Let's say google.com is the benchmark test. If google.com tests OFF, do not tell me my own server's are OFF. Most likely it is the server hosting phpservermon that lost connection. Of course, this should be an optional setting, but I imagine a lot of people could use it.
Nice concept but I may see a problem with the logic. I share your concerns about the server hosting phpservermon going down, See my Issue #121 Multiple Monitoring.
Here is were your logic may be incorrect. If the server running the monitor is down, the script wouldn't be running. There would not be a way to know if Google (or your benchmark) was on or off.
I think it would take multiple monitors (or real time human intervention) to determine if an outage is real or a failure of the monitor's server.
You are missing an important point: the server (hosting phpservermon) going down is different from the server (hosting phpservermon) losing connection to the internet. The latter is much more common than the former.
This is a step towards (and only towards) reducing false negatives. Assuming that Google's uptime is 100% forever, this reduces false negatives to 0%. This is good enough for me. And much simpler than setting up and maintaining multiple monitors.
Hi gaia,
Your are correct. I didn't consider that the server hosting the script might loose connection versus simply dying. After your comment, I do recall a windows server in my past who would frequently loose connection to the Internet, Today, I don't know if I would know the difference between a server that lost connection or a dead server.
I have servers in multiple data centers, so having the opportunity to add monitors is a no cost option for me. But of course, I would need additions to the software to make this option viable.
Cheers.
Wesley