Sysmon
From Phospher
Contents |
Introduction
Sysmon (Systems Monitor) started off as a desire I had to see the current status of servers I host out of my garage. Sysmon quickly turned into something much more than an ICMP monitor. I wanted the ability to navigate to a website and quickly determine the health of my hosts. Sysmon uses 'colors' to depict system status. Green=good, Yellow=warning and Red=uh-oh. If you're color-blind, show an interest and I'll add text warnings.
The majority of sysmon is written in PHP using an sqlite3 database. All ./admin_tools/* scirpts are written in shell (BASH).
Requirements
- Supported browsers notes:
- Google Chrome 100% (recommended) (Tested on Linux, Android and Windows) >= 8.0
- Konqueror 100% (Tested on Linux/KDE 4.5.5, older versions may work).
- Firefox 100% (Tested on Linux and Windows, < 4.0 expands hover data to main screen, really messed up). >= 4.0
- Internet Explorer 100% (6 and 7 work, but they don't display the hover windows). >= 8.0
- Safari 100% (Tested on Windows 5.0.4, older versions may work).
- Opera 11.00 (Tested on Linux and Windows, works, but does not display the hover windows. Hopefully future releases will work).
- Opera 11.61 100% (Tested on Linux, works perfectly) >= 11.61
Sysmon server requires:
- Linux (mine is running on CentOS 6.2 i386 and CentOS 5.1 x86_64, it should run on any OS that supports these services.)
- Apache
- PHP
- PHP-PDO module
- SQLite3
Sysmon client requires:
- Linux (I don't have a need for any other OS, if interest is shown, I will consider porting the client to multiple platforms)
- bc
- bash
- curl
- sed
- grep
- netstat (in net-tools package)
- ifconfig (in net-tools package)
- cut
- mpstat (in sysstat package)
Sysmon currently watches:
- The Host icon will turn colors if the host hasn't checked in within 120 or 300 seconds.
- < 120 seconds(green), >= 120 seconds(yellow) and >= 300 seconds(red)
- Memory utilization (total, used, free)
- < 75%(green), >= 75%(yellow) and >= 95%(red)
- CPU (model, core count, clock speed, load percentage)
- < 75%(green), >= 75%(yellow) and >= 95%(red)
- Storage (total, used, free)
- < 75%(green), >= 75%(yellow) and >= 95%(red) (per volume)
- Services (running or not)
- exit 0 (green) and exit 1 (red)
A monitor will turn blue if sysmon is waiting for a client push.
Screenshots
Live System
You can view my live sysmon installation here.
You can download the sysmon server package from here.
There are a number of changes that I will be making over the next few weeks.
ToDo
- Polish/create an admin web interface
- Polish scripts under admin_tools/
- Create auto-updater script which can be run in cron that will download sysmon binaries from my servers
- Create email notifier daemon
- Roles?
License
Sysmon is licensed under the GPLv2 (GNU Public License version 2).
