PHP Open Monitor
PHP Open Monitor is a Web-based network monitor written with PHP. It lets you specify the hosts and ports that you wish to monitor. It can notify you via email/ICQ each time some host/port goes.
HTML Status Page
0.9 Quick HowTO:
If you use before PHP Open Monitor you know there is 1 required Host File called ip_list.txt Separated with "Tabs" well good news nothing change in your host file, we only add another script to provide history log reporting, % uptime and e-mail notification when some host change his status up/down in the Network.
In order to upgrade your version of PHP Open Monitor you have to complete 3 tasks:
1.- Create a Directory [Folder] where your logs R going to be stored.
$ mkdir phpoc_sc
*Note make sure the user have read/write permisions in this Directory.
2.- Run mannually the file pom09.php using the PHP CLI.
This should create 2 Files for each hosts of your ip_list.txt hosts file.
Verify the files were created successfully.
$ ls phpoc_sc | wc -l
The result must be the double of the hosts in your ip_list.txt file.
3.- Once the Directory is created and you run the script pom09.php with the CLI without any problems just put a file in your cron to run this every N minutes.
$ crontab -e
*/3 * * * * /home/blopez/monitor/myphpom.sh
This cron monitor my hosts every 3 minutes. as soon as something goes wrong I receive an e-mail and the %UPtime is being updated, the log file keeps record of all up/down times for my host/location which is kind of handy.
The file pom09.php is fully explained and I belive you will be able to understand the format of the log file:
Total Number of Tests
Number of Test Up
That's It. We know the %Uptime of the Hosts the History log for each hosts and we keep our nice HTML Web Interface. Also we receive some e-mail everytime the conectivity goes down.
Not bad for a second script with 77 Lines of code =)
There is a lot more features to go in order to complete a really nice an wide used monitor system, but for small networks this will work fine. there is some work to do in order to make the %Uptime available for everybody in a second web page but at least is going somewhere =)
Finally PHP Open Monitor can draw pretty pictures MRTG
Style with the
Special Thanks to Anita P. for make me happy all this year
Today is 1 Year I meet you.
Yes If U have questions or comments please fee to mail me at firstname.lastname@example.org ;-)
Now just Click Here to Download 1.1
the project for Open Source Network Operation Center Start. now just check basic ports with a web Interface. Soon the login/monitor and Helpdesk.
Click Here to see PHPOpenMonitor in Action
04.22.03   PHPOpenMonitor Have a new Home Thank You for the Support of "Internav "!!!
07.04.03 I like to start a Project to allow some WebSite some kind of OpenSource Monitoring System, not bad for Free and 24X7. An email is going to be notified when something goes wrong !!!. Please if U have a good old Linux/OpenBSD or FreeBSD and can create me some account for virtual hosting please let me know in order to work with the main monitoring website. just drop me and e-mail [ email@example.com ]
There R many good websites outthere
Hi All, here we go one more time this is to release version 1.0 of PHP Open Monitor, this includes
07.04.03   Changes: just add uptime.php in order to report the Files generated for the cron and show a nice %Uptime Page with a Summary of all the Circuits, Updated Cron phpom09.php in order to Notify via e-mail only when some hosts/service change status. And add Host Alias with a Tab in the main ip_list.txt
I'm "DINO" a Network Administrator with 50 Remote Frame Relay Locations. Linux Servers about 16 with Oracle, MySQL Apache, PHP, SSL. I use ssh for remote access and PortSentry for protect against portscan.
My first release of PHP Open Monitor was thinking on the cool feature of being notified by some programs like HP-OpenView, BigBrother or What'sUpGold. After work with Networking in a daily basis, I noticed the importance of keep a log of the uptime for my Servers. PHP Open Monitor a simple PHP Script with a hosts file (BigBrother Style) Let me show the Status of the TCP/IP Ports of some specific hosts the html page refresh every 5 minutes.
Is very Easy to put a mail notification in the Script but every single time when a hosts goes down my CellPhone mail wake me up at 3am. and don't stop until the circuit back up to normal. This new release of PHP Open Monitor is nothing but another script to run in a cron job in your Linux/BSD.
1.- Keep log of the History Log in a Text File.
2.- Maintain the % Uptime of the Hosts.
3.- Notify Only when something Change Host Change State to Up -> Host Change State to Down.
No Agents Required
PHP Open Monitor does not require agents to be installed across your network. Monitors with standard tcp/ip sockets, protocols and methods. No agents make it possible to watch your upstream providers. Notify you when some host/locations goes down make sure you get the service you pay for, get some mail and % Uptime.
Web based Status
With a simple browser you will know what is going on with your network this is available anywhere on your network.
Support 24X7 every single tcp/ip port, includes all standard IP protocols. Transaction monitors provide quality assurance for critical commerce and business applications. SNMP polling and traps provide monitoring for enabled hubs, switches, battery backups, printers, routers, etc. Windows® Service monitors determine whether specific services are running.
Status reports display the current state of monitors in real-time. Status is color-coded so it's easy to spot trouble at a glance from across the control room, plus receive a status change e-mail.
The Site Settings page is used to set various display preferences, operating parameters and convenience features.
The import and export wizard imports ipMonitor settings in standard CSV (comma separated value) format. This allows ipMonitor monitors to be managed externally using databases or spreadsheet software.
A record of all events that occur within ipMonitor is written to an industry standard CSV (comma separated variables) log file. A filter interface is provided to define a subset of details for the final report.
Availability, downtime, response time, health, diagnostic, and trouble reports as well as customized reports can be viewed by day, week, or month for individual monitors or groups of monitors. Reports can also be printed or automatically emailed.
Will be nice to develop some tool to automatically discover the Network environment then write the hosts file ;-)
Groups & Dependencies
Some Monitoring Task is better create Groups ( Routers, MAIL, DNS, HTTP, etc... )
This require a really big Network Enviroment for Monitor multiple hosts...
Schedule every 4 hours an updated status of the Network.
Jobs & Tasks
Jobs and tasks are scheduled to perform recurring tasks; such as, reboot servers during slow periods, automatically email reports, run third party applications, run batch files, start & stop services, and monitor them as they come back online.
Access to ipMonitor via web browsers is secured with an account name and password combination. Every user session operates under an ipMonitor account that determines what pages they can access. Access can be further limited to individual IP addresses or ranges of IP addresses.
The Windows® NT/2000/XP service control feature is used to start and stop services, it is also used to reboot computers. require "counter.php"; ?>
$counter_file = "./twshits.txt"; if(!($fp = fopen($counter_file, "r"))) die ("Cannot open $counter_file."); $counter = (int) fread($fp, 20); fclose($fp); $counter++; #echo "Gracias por visitarnos eres el visitante No. $counter desde la Direccion IP: $REMOTE_ADDR:$REMOTE_PORT"; echo "Gracias por visitarnos eres el visitante No. $counter"; $fp = fopen($counter_file, "w"); fwrite($fp, $counter); fclose($fp); ?>