Download Watchman 0.1 Here
Welcome to the main page for Watchman. This project is just lifting off so expect this page and the Watchman software to evolve rapidly. I also will provide SVN Access soon and this code may change... within hours sometimes.
I have been a user/admin of Nagios for years. Recently I have become a bit frustrated with Nagios. The out-of-date web interface, the structure of the configuration file, and others. I started Watchman to bring system and application monitoring into the 21st Century. The goal was not to just have a drop in replacement for Nagios, but to have a system that can provide monitoring, self-heal the environment if possible and provide users and admins a higher level of control with their systems.
I have released this project as GPL Open Source. Having said that, There are a few thisgs you should take in if you decide to use/extend/change/fix :: I am not the best coder. You may look at the source and wonder, "WTF was this guy thinking??". I expect that. I am always looking to hone my skills and this project has tested that. I openly welcome suggestions, patches, fixes, artwork, etc. I will give credit where credit is due. Just abide by the conditions of the GPL.
I had a few criteria to start with:
I needed to match the functionality that I already had. It would not have been good if I lost the ability to monitor my environments
I wanted a dynamic yet minimalist web interface. I have chosen php/xajax for this task.
I wanted the entire system to be scriptable. Watchman is written primarily in Python and I am extending the API as much as I possibly can so that you can import Watchman functions into you environment.
I would like to implement self healing actions. The computer should be able to repair certain problems itself. I've run into so many situation where A process dies and the documented procedure is just to restart it when you get the alert. Well, derp! Why not have the Watchman system send the alert, and then restart the process it self so you can get back to more interresting things?
These are features that I want to implement and refine as Watchman grows. Some are partially implemented as I am using Watchman full time in my environments.
Screenshots of web interface (Clist to enlarge):
Coming soon...I promise.