Introducing algalon, a network portal that measures health

Algalon servers

Algalon is a nodejs based network monitor/portal. It continuously tests your
network infrastructure and computes the overall health metric of the network
based on the number of passing tests. 'Widgets' are used to visualise
various services. They are updated in real time with socket.io.

I wrote this in summer 2014, using it as a portal for a network some friends
and I maintain. Finally, I've gotten around to write about it and release it.

health

The first screenshot shows Algalon monitoring some servers. It can even monitor
an attached APC UPS via apcupsd! Each value has a min/max, which if exceeded
causes the server test to fail.

Grid power failure

Why isn't the health metric weighted? The theory is that failures cascade. For example, your irresponsibly non-redundant DNS server could overheat, causing it
to shutdown and then a subsequent DNS test on a DNS widget could fail. The
resultant failure is then more than one unit.

Website monitoring

The second screen shows the use of Algalon as a traditional web portal. The
screenshots have been automatically generated by phantomjs, the individual
websites are monitored for HTTP status code and expected response content.

Failure

NTP/DNS

Example widgets to test DNS and NTP. Other services are trivial to add, as long
as you can speak the protocol with a nodejs library. There is even a awesome
blinkenlight in the corner of every widget to show when a test has been run.

config

Everything is configured in a single yaml file. Tabs with icons and
descriptions, with instances of widgets/tests also defined.

Release will follow.