From 00b0626b9374eb7ef5a6e77333fa9e3b076c6d8d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Michal=20=C5=A0vamberg?= Date: Mon, 18 Aug 2014 17:46:13 +0200 Subject: [PATCH] Adding temperature of shelfs to performance output I need graphs about temperature of shelfs. --- nagios/check-netapp-ng.pl | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/nagios/check-netapp-ng.pl b/nagios/check-netapp-ng.pl index 6cc4f31..370c6ca 100755 --- a/nagios/check-netapp-ng.pl +++ b/nagios/check-netapp-ng.pl @@ -747,6 +747,7 @@ if("$opt{'check_type'}" eq "TEMP") { } elsif ( ("$opt{'check_type'}" eq "SHELF") or ("$opt{'check_type'}" eq "SHELFINFO") ) { my @errs; my $r_shelf = $snmp_session->get_table($snmpEnclTableIndex); + my $perf_temp = ""; foreach my $key ( sort keys %$r_shelf) { my @tmp_arr = split(/\./, $key); my $oid = pop(@tmp_arr); @@ -791,8 +792,12 @@ if("$opt{'check_type'}" eq "TEMP") { foreach my $subkey ( keys %shelf) { - if ( $shelf{$subkey} ne "" ) - { print "$subkey->$shelf{$subkey} "; } + if ( $shelf{$subkey} ne "" ) { + if ( "$subkey" eq "CurrentTemp" ) { + $shelf{$subkey} =~ m/^([0-9]+)C.*$/; + $perf_temp = "$perf_temp, temp_$shelf{'ShelfNumber'}=$1"; + } + } else { print "$subkey->"; print "None "; } @@ -813,7 +818,7 @@ if("$opt{'check_type'}" eq "TEMP") { $stat = $ERRORS{'OK'}; $msg = "OK: $opt{'check_type'} ok"; if ("$opt{'check_type'}" eq "SHELFINFO") - { $perf = "shelfinfo=0"; } + { $perf = "shelfinfo=0$perf_temp"; } else { $perf = "shelf=0"; } } else { @@ -823,7 +828,7 @@ if("$opt{'check_type'}" eq "TEMP") { $msg = "$msg $_"; } if ("$opt{'check_type'}" eq "SHELFINFO") - { $perf = "shelfinfo=1"; } + { $perf = "shelfinfo=1$perf_temp"; } else { $perf = "shelf=1"; } }