Build precise queries to find exactly what you need
Press ESC to close
#!/usr/bin/perl -w # # hpov_eventhandler.pl v1.0 – 07/21/2006 # # HP Openview Event Handler # Copyright 2006 GroundWork Open Source Solutions, Inc. (“GroundWork”) # All rights reserved. Use is subject to GroundWork commercial license terms. # # Revision History # 21-Jul-2006 Peter Loh # #
use strict; use Time::Local; use Time::HiRes;
my $debug = 1; my $debuglog = “>> /usr/local/nagios/var/hpov.log”; my $hpov_cmd = “/opt/OV/bin/opcmsg”; my ($lastcheck,$host,$service,$status,$statustext); my $type = $ARGV[0]; # host or service type
$lastcheck = $ARGV[1]; $host = $ARGV[2]; $status = $ARGV[3]; $statustext = $ARGV[4]; $service = $ARGV[5];
my $hpovstatus = undef;
if ($debug) {
open(FP, $debuglog) ;
print FP “———————————————————————n ” ;
print FP `date`.” Host: $hostn Svcdesc: $servicen Lastcheck: $lastcheckn Status: $statusn Statustext: $statustextn” ;
}
my $cmdstring = $hpov_cmd;
if ($host !~ /.Cadence.COM$/i) {
$host .= “.Cadence.COM”;
$cmdstring .= ” node=’$host'”;
$cmdstring .= ” application=’gto_gwmon'”;
if ($type eq “service”) {
$cmdstring .= ” object=’$service'”;
if ($status eq “OK”) {
$hpovstatus = “normal”;
} elsif ($status eq “WARNING”) {
$hpovstatus = “warning”;
} elsif ($status eq “CRITICAL”) {
$hpovstatus = “critical”;
} elsif ($status eq “UNKNOWN”) {
$hpovstatus = “minor”;
} elsif ($status eq “RECOVERY”) {
} elsif ($status eq “FLAPPING”) {
} else {
$cmdstring .= ” object=’HOST_ALERT'”;
if ($status eq “UP”) {
} elsif ($status eq “DOWN”) {
} elsif ($status eq “UNREACHABLE”) {
$hpovstatus = “major”;
$hpovstatus = “unknown”;
$cmdstring .= ” msg_text=’$statustext'”;
$cmdstring .= ” severity=’$hpovstatus'”;
$cmdstring .= ” msg_grp=’GWMP'”;
my @lines = `$cmdstring`;
print FP “Command string = $cmdstringn ” ;
print FP “Command Results = @linesn” ;
close FP;
__END__
We’ve completely redesigned the world’s largest repository of Nagios plugins and monitoring tools. Join thousands of users sharing monitoring solutions for servers, applications, and everything in between.
Due to our redesign, all existing accounts require a password reset to access your account again.
Ready to explore 6,100+ projects and contribute to the community?
Reset Password Create Account
Happy Monitoring!