It’s been a while since the last release, but finally the new version has arrived: PHP Server Monitor 2.0 has been released.
PHP Server Monitor is a script that checks whether the servers on your list are up
and running on the selected ports.
It comes with a web based user interface where you can add and remove servers or websites from the MySQL database,
and you can manage users for each server with a mobile number and email address.
With version 2.0 comes the support for websites as well. On the “Add server” page, you can choose
whether it’s a “service” or a “website”:
A connection will be made to the entered ip or domain, on the given port. This way you can check if certain
services on your machine are still running. To check your IMAP service for example, enter port 143.
The previous version only tried to establish a connection to the server on port 80. If you are running multiple
websites on 1 machine, there was no proper way to check each website for possible errors. Also it was impossible to make
sure your site was really up and running, all you knew was that the server was still online.
This function takes care of that.
You can enter a link to a website (for example http://sourceforge.net/index.php), it will use cURL to open the website and
check the HTTP status code (see http://en.wikipedia.org/wiki/List_of_HTTP_status_codes for details).
If the HTTP status code is in the 4xx range, it means an error occured and the website is not accesible to the public.
In that case the script will return a “status offline”, and will start sending out notifications.
The previous version sent you a notification every time a server was down or unreachable. Version 2 allows you to choose for a different setting. You can choose to only receive notifications if the status changes, if the server goes offline for the first time only, or the way it used to be.
Each server has it’s own settings regarding notification.
You can choose for email notification or text message (SMS). As of version 2.0, there are 3 gateways
* Mollie – http://www.mollie.nl
* Spryng – http://www.spryng.nl
* Inetworx – http://www.inetworx.ch
For these gateways you need an account with sufficient credits.
If logging is enabled in the configuration, it will log any connection errors, emails and text messages sent.
The latest log records will be displayed on your web interface.
The cron/status.cron.php can be added as a cronjob which will keep the server status up to date.
This version of the monitor features 2 languages: English and Dutch. Unfortunately it is not compatible with the old version, since it’s been rewritten from scratch.
I’d appreciate any feedback you might have regarding this script. Please leave it on the sourceforge
project page (tracker), or send me an email (ipdope[at]users.sourceforge.net).