Finally, got some time to package & release it. Past weeks I’ve been off&on working on a simple monitoring tool inspired by an idea Juerd gave me: A simple matrix/raster of squares, each square/cell containing one custom text, editable in a ‘wiki’ like style, on the page: HealthMatrix
So after a bit work and tweaking, I now managed to release a 0.91 version, which I’ve got in production myself. Sofar, people seem to like it.
The idea is that when installed&running, you get a website full of squares, you click on one of them and then enter the testing code. This ‘cell’ then changes color depending on if the test succeeded or not. I ended up having the following states:
- Empty, grey/silver, cell is empty.
- Unknown, dark grey, this basicly only happens when something happens where we lose the state, like killing the daemon while the test is running
- Label, purple/blue, not really a state, but a label is a special kind of cell and gets it own color
- Safe, green, the test succeeded perfectly.
- Warning, orange/yellow, something bad happened, not something critical perse. for scripts this happens when there is output on STDERR
- Critical, red, the script was killed because it exceeded it’s runtime or the process ended with an error code
- Running, cyan, the process is still running, which shouldn’t be too long ofcourse.
Maybe a bit much, but it seems to work quite nicely I think.
The entire setup currently consists of few main ‘components’:
- The library, the glue between all the parts, this is the abstraction layer.
- The webinterface, a small collection of CGI scripts, this your main interface.
- The CLI scripts, currently some scripts to initialise your matrix table and a mailer, the mailer is best run as either a cron job or a cell within the matrix.
- The run daemon (hmatrixd), this is what runs the processes in the cells and keeps track of them. you can set a maximum runtime, and cycle, but infinite should be fine.
- The configuration file, this is read by basicly all components, here all defaults are defined, the run deamon settings, and here you define your matrices. Next to this file there is also an apache example configuration.
So I’ve got something released now, but there is ofcourse still a todo list:
- Improve documentation, this basicly still sucks I think, there are no manpages yet, no -decent- installation howto.
- Fix that firefox doesn’t like to keep the page open for days, I’m not sure if this a firefox bug or not. But it kind off sucks. Sugestions welcome!
- Write an installation script or makefile for the web/cli/damons scripts.
- Probably something I’m forgetting.
Well, if think you can use this, please try it out, and give me feedback! :)

