HP Openview

HP OpenView HPOV Event Handler

Description:

This HP OpenView (HPOV) Event Handler takes the output of a Nagios monitoring system and feeds it into HP OpenView. As submitted, requires Monarch or GroundWork Monitor Open Source (both are readily downloadable from SourceForge).

Current Version

Last Release Date

May 28, 2009

Compatible With

Owner


Project Files
Project Notes
''This HPOV Event Handler takes the output of a Nagios monitoring system and feeds it into HP OpenView. Additional requirements: these instructions assume Monarch or GroundWork Monitor Open Source is installed (either is readily downloadable from SourceForge). If you come up with a generalized procedure that works with generic Nagios please feel free to inform us and post it as well. ========================================== The eventhandler will call the Openview command 'opcmsg' which has the following syntax: /opt/OV/bin/OpC/opcmsg node= application= object= msg_text= severity= msg_grp= > should be the fully qualified node name (xyz.Company.COM) > and can be set depending on the type of message to be sent - maybe from the profile or type of check that produced the result > should be the full text of the message (enclosed in ") > should be set to GWMP or something unique To keep these separate, GWMP is a new message group, so it is easy to capture/filter the events on the Openview side.. Definition for Global Host Event Handler /usr/local/groundwork/nagios/eventhandlers/hpov_eventhandler.pl host $LASTHOSTCHECK$ "$HOSTNAME$" "$HOSTSTATE$" "$HOSTOUTPUT$" Definition for Global Service Event Handler /usr/local/groundwork/nagios/eventhandlers/hpov_eventhandler.pl service $LASTSERVICECHECK$ "$HOSTNAME$" "$SERVICESTATE$" "$SERVICEOUTPUT$" "$SERVICEDESC$" Here are the instructions for installing the hpov event handler. These instructions assume you're using Monarch (downloadable from SourceForge) with Nagios (both Monarch and Nagios are integrated in GroundWork Monitor Open Source, which is also downloadable from SourceForge.) 1. Copy the file hpov_eventhandler.pl to /usr/local/groundwork/nagios/eventhandlers/ on the production system. 2. Define the command to be used for the host global event handler. 1. In Monarch, Commands, add a command with name "hpov_host_eventhandler". 2. The command line should be: /usr/local/groundwork/nagios/eventhandlers/hpov_eventhandler.pl host $LASTHOSTCHECK$ "$HOSTNAME$" "$HOSTSTATE$" "$HOSTOUTPUT$" 1. The command type should be "other". 2. Define the command to be used for the service global event handler. 1. In Monarch, Commands, add a command with name "hpov_service_eventhandler". 1. The command line should be: /usr/local/groundwork/nagios/eventhandlers/hpov_eventhandler.pl service $LASTSERVICECHECK$ "$HOSTNAME$" "$SERVICESTATE$" "$SERVICEOUTPUT$" "$SERVICEDESC$" 1. The command type should be "other". 3. Modify Nagios main config to enable the eventhandlers. Make the following changes in Monarch, Control, Nagios.cfg edit: 1. Enable eventhandlers. 2. Set the Global Host Eventhandler to hpov_host_eventhandler. This should be in the dropdown list. 3. Set the Global Service Eventhandler to hpov_service_eventhandler. This should be in the dropdown list. 4. Commit the changes to Nagios. If you need to debug, you can look at the log file /usr/local/groundwork/nagios/eventhandlers/hpov.log for the opcmsg commands.''
Reviews (1) Add a Review
Pluging review for HPOV 9.10
by lbtm, December 31, 2011

#!/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") { $hpovstatus = "normal"; } elsif ($status eq "FLAPPING") { $hpovstatus = "minor"; } else { $hpovstatus = "minor"; } } else { $cmdstring .= " object='HOST_ALERT'"; if ($status eq "UP") { $hpovstatus = "normal"; } elsif ($status eq "DOWN") { $hpovstatus = "critical"; } elsif ($status eq "UNREACHABLE") { $hpovstatus = "major"; } elsif ($status eq "UNKNOWN") { $hpovstatus = "minor"; } elsif ($status eq "RECOVERY") { $hpovstatus = "normal"; } elsif ($status eq "FLAPPING") { $hpovstatus = "unknown"; } else { $hpovstatus = "minor"; } } $cmdstring .= " msg_text='$statustext'"; $cmdstring .= " severity='$hpovstatus'"; $cmdstring .= " msg_grp='GWMP'"; my @lines = `$cmdstring`; if ($debug) { print FP "Command string = $cmdstringn " ; print FP "Command Results = @linesn" ; close FP; } __END__



Add a Review

You must be logged in to submit a review.

Thank you for your review!

Your review has been submitted and is pending approval.

Recommend

To:


From:


Thank you for your recommendation!

Your recommendation has been sent.

Project Stats
Rating
4 (1)
Favorites
1
Views
101,601