Hobbit(3pm) User Contributed Perl Documentation Hobbit(3pm)
NAME
Hobbit.pm -- Perl module to easily write Hobbit/Xymon tests
SYNOPSIS
use Hobbit;
my $bb = new Hobbit('testname');
if (somethings_is_not_so_good) {
$bb->color_line('yellow', 'Something is not so good');
}
if (somethings_is_really_bad) {
$bb->color_line('red', 'Something is really bad');
}
$bb->send();
DESCRIPTION
Hobbit.pm is part of the Debian package hobbit-plugins and was written to gather common tasks needed when writing tests for the Xymon
monitoring system (formerly known as Hobbit).
EXPORTABLE HELPER FUNCTIONS
@regexps = file_to_list_of_regexps($file)
@globs = file_to_list_of_globs($file)
INTERNAL FUNCTIONS
$max_color = max_color($color1, $color)
Out of two colors, returns the color with the highest severity.
METHODS
Constructor: new Hobbit('testname');
Constructor: new Hobbit({ test => 'testname', ttl => 60, ...});
Creates a new Hobbit object.
Common use cases
my $bb = new Hobbit('sometest');
my $bb = new Hobbit({ test => 'testname',
color => 'green',
hostname => 'host.example.com',
text => 'Test successful',
title => 'Some Test',
ttl => 60,
type => 'status',
dont_moan => 1 });
Available parameters
color
The initial color of the test. (Default: "clear")
dont_moan
Disable moan() and croak() (see below). Needed if e.g. another used Perl module throws a lot of warnings but works fine otherwise, etc.
hostname
The hostname for which the test should report. (Default: $ENV{CLIENTHOSTNAME} || $ENV{MACHINEDOTS} || $ENV{MACHINE} || 'unknown')
test
The name of the test, i.e. the name of the column on the hobbit status web pages. (Mandatory)
text
Text which is prepended to generated report. (Default: the empty string)
title
The summary of the test. (Default: "$test OK" respectively "$test NOT ok")
ttl
How long the test result is valid before the test state is changed to purple by the hobbit daemon if no newer test results have been
received.
The default value is set on the hobbit server and is 300 seconds by default.
Values without unit are interpreted as minutes. Valid units are h for hours, d for days, and w for weeks. No space between value and
unit allowed.
type
Allows one to send messages of other types than "status", e.g. data, notify, disable, enable, etc.
May not yet work with all of these types properly. Please report bugs via the Debian Bug Tracking system.
add_color('somecolor')
Minutes that a sub test caused the given color state. Adjusts the overall resulting color accordingly.
print_line('some text')
Adds the given text to the end of the current report without changing the current color.
color_print('somecolor', 'some text')
Adds the given text to the end of the current report and minutes that a sub test caused the given color state. Adjusts the overall
resulting color accordingly.
color_line('somecolor', 'some text')
Adds the given text to the end of the current report and minutes that a sub test caused the given color state. Prepends that text with an
accordingly colored Hobbit icon and adjusts the overall resulting color accordingly.
send()
Sends the report to the hobbit server.
INTERNAL METHODS
moan()
If the check issues a Perl warning, this warning is added to the report with color state "yellow".
Set dont_moan to 1 to disable this feature.
croak()
If the check issues a Perl error, this error is added to the report with color state "red".
Set dont_moan to 1 to disable this feature.
AUTHORS AND COPYRIGHT
Copyright (C) 2008-2011 Christoph Berg <myon@debian.org>
Copyright (C) 2011 Axel Beckert <abe@debian.org>
SEE ALSO
<http://www.xymon.org/> bb(5), hobbit(1)
perl v5.14.2 2013-01-09 Hobbit(3pm)