poing (pronounced poe-ing) is a text mode multi-host ICMP ping program. It displays ongoing host statuses as colorful leftward-scrolling strip charts. This lets you see hosts' recent health at a glance.

POE::Component::Client::Ping was adapted from the code first written in poing.

poing requires these resources:

Things to download or read about poing:

Things to do to poing when someone has spare time:

This opens up a whole new world of user interfacery. Pop-up windows, adding and removing hosts on the fly, asynchronous update rates, and other fun stuff.

Fletch wants the ability to collaps all the hosts under a group. One way to represent a collapsed group would be to base the display on the average ping response time for all hosts underneath it.

Fletch adds: Here's an idea of what groups might look like (or at least what I'm thinking of). Groups are prefixed with a + or - to show the collapsed state, group members are indented apropriately. If only a single member of a group is down, * is shown rather than - (which would indicate the whole group is unreachable). Of course if things move to Curses then this could get much fancier (groups open in their own window perhaps).

[poing] Thu Nov 15 07:51:23 2001 (multiply numbers by 1 second to get time)

+Houston: 000000000000000000000000000000012410000000000000000000000000000000000
-Dallas: 000000000000000000000000000000000010000000000000000000000*************
 et-dfw-0: 00000000000000000000000000000000200000000000000000000000000000000000
 rtr-dfw-0: 000000000000000000000000000000000000000000000000000000-------------
+Seattle: 000000000000000000000000000000022110000000000001112110000000000000000 

Mmmm!

Log events (up/down) to an RDBMS via DBI.

Execute some user specified code when something changes state, such as sending email or running a program.

MRTG makes pretty graphs of things over time. It would be an ideal way to represent ping histories, but it would not be as sexy as the scrolling numbers.