===================================================================
RCS file: /cvs/nagios/check_hw_sensors/check_hw_sensors,v
retrieving revision 1.36
retrieving revision 1.40
diff -u -r1.36 -r1.40
--- nagios/check_hw_sensors/check_hw_sensors 2009/11/10 23:26:13 1.36
+++ nagios/check_hw_sensors/check_hw_sensors 2009/11/11 18:14:40 1.40
@@ -1,5 +1,5 @@
#!/usr/bin/perl -T
-# $RedRiver: check_hw_sensors,v 1.35 2009/11/10 23:15:15 andrew Exp $
+# $RedRiver: check_hw_sensors,v 1.39 2009/11/11 18:14:00 andrew Exp $
########################################################################
# check_hw_sensors *** A nagios check for OpenBSD sysctl hw.sensors
#
@@ -29,7 +29,14 @@
use POSIX;
use Config;
-use lib '/usr/local/libexec/nagios';
+my $PREFIX;
+
+BEGIN {
+ ## no critic 'warnings'
+ no warnings 'uninitialized';
+ $PREFIX = "${PREFIX}" || '/usr/local'; # Magic for OpenBSD ports tree
+}
+use lib $PREFIX . '/libexec/nagios';
use utils qw($TIMEOUT %ERRORS &support);
use Getopt::Long;
@@ -69,7 +76,7 @@
}
if ($opt_V) {
- print_revision( $PROGNAME, '$Revision: 1.36 $ ' );
+ print_revision( $PROGNAME, '$Revision: 1.40 $ ' );
exit $ERRORS{'OK'};
}
@@ -130,9 +137,8 @@
}
$CHECK_SENSOR = $SENSOR;
- $CHECKS{$SENSOR}{'warn'} = $WARNING;
- $CHECKS{$SENSOR}{'crit'} = $CRITICAL;
-
+ $CHECKS{$SENSOR}{'warn'} = $WARNING if $WARNING;
+ $CHECKS{$SENSOR}{'crit'} = $CRITICAL if $CRITICAL;
}
elsif ( defined $FILENAME ) {
%CHECKS = read_file($FILENAME);
@@ -144,7 +150,9 @@
my $have_results = 0;
$state = 'OK';
-foreach my $error ( reverse sort { $ERRORS{$a} <=> $ERRORS{$b} } keys %ERRORS ) {
+foreach
+ my $error ( reverse sort { $ERRORS{$a} <=> $ERRORS{$b} } keys %ERRORS )
+{
if ( exists $STATES{$error} ) {
$have_results++;
$state = $error if $ERRORS{$state} < $ERRORS{$error};
@@ -152,7 +160,6 @@
if ($NAGIOS_OUTPUT) {
print $error . ' (' . scalar( @{ $STATES{$error} } ) . ')';
if ( $error ne 'OK' ) {
- s/\s+/ /gxms;
print '
';
print map {" - $_
"} @{ $STATES{$error} };
}
@@ -324,7 +331,7 @@
$r = check_sensor( $sensor, $C->{ $sensor->{id} } );
$data = $sensor->{id} . '=' . $sensor->{output};
}
- elsif ( !$O->{ignore_status} && $sensor->{status} ) {
+ elsif ( $sensor->{status} && !$O->{IGNORE_STATUS} ) {
$r = check_sensor( $sensor, { STATUS => 1 } );
$data = $sensor->{id} . '=' . $sensor->{output};
}
@@ -529,7 +536,7 @@
EOL
- print_revision( $PROGNAME, '$Revision: 1.36 $' );
+ print_revision( $PROGNAME, '$Revision: 1.40 $' );
print $LICENSE;