NAME
Juno::Check::RawCommand - A raw command check for Juno
VERSION
version 0.010
DESCRIPTION
Allows you to run a raw command. The command will be run in a separate fork using System::Command so you can get full access to everything in the command (stdout, stderr, exit code, etc.).
ATTRIBUTES
cmd
The command to run. This allows a very simple template that allows you to use %h
as the host.
hosts
An arrayref of hosts to check, overriding the default given to Juno.pm.
my $juno = Juno->new(
checks => {
RawCommand => {
hosts => ['Jeff'],
cmd => 'grep %h %h.log', # %h will be the host
on_success => sub {
my ( $check, $host, $cmd ) = @_;
print "Found $host in $host.log\n"
. $cmd->{'stdout'};
},
on_fail => sub {
my ( $check, $host, $cmd, $msg ) = @_;
$msg and print "Deserialization failed, odd error: $msg\n";
print "Failed to find $host in log.txt:\n"
. $cmd->{'stderr'};
},
},
},
);
This attribute derives from Juno::Role::Check.
interval
An integer of seconds between each check (nor per-host).
This attribute derives from Juno::Role::Check.
on_success
A coderef to run when making a successful result, which is zero by default.
This attribute derives from Juno::Role::Check.
on_fail
A coderef to run when making an unsuccessful request, which isn't zero by default.
This attribute derives from Juno::Role::Check.
on_result
A coderef to run on the result. This is what you use in case you want more control over what's going on.
This attribute derives from Juno::Role::Check.
on_before
A coderef to run before running the command.
watcher
Holds the watcher for the command check timer.
This attribute derives from Juno::Role::Check.
METHODS
check
Juno will call this method for you. You should not call it yourself.
run
Juno will call this method for you. You should not call it yourself.
AUTHORS
Sawyer X <xsawyerx@cpan.org>
Adam Balali <adamba@cpan.org>
COPYRIGHT AND LICENSE
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.