
Juno - Asynchronous event-driven checking mechanism

version 0.001

This runs an asynchronous checker on two servers (jack and jill), running an HTTP test every 10 seconds with an additional Host header.
my $juno = Juno->new(
hosts => [ 'jack', 'jill' ],
interval => 10,
checks => {
HTTP => {
headers => {
[ 'Host', 'example.com' ],
},
on_result => sub {
my $result = shift;
...
},
},
},
);
# makes juno run in the background
$juno->run;

Juno is a hub of checking methods (HTTP, Ping, SNMP, etc.) meant to provide developers with an asynchronous event-based checking agent that returns results you can then use as probed data.
This helps you write stuff like monitoring services.

An arrayref of hosts you want all checks to monitor.
The interval for every check.
Default: 10 seconds.
The checks you want to run.
This is a hashref of the checks. The key is the check itself (correlates to the class in Juno::Check::) and the values are the attributes to that check.
An arrayref of attributes that should be propagated from the main object to the checks.
Default: hosts, interval.

Run Juno.

Sawyer X <xsawyerx@cpan.org>

This software is copyright (c) 2012 by Sawyer X.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.