From 64587d9ace79bdfaa4bfcede67cde4b2e7e3e5da Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Georg=20Sch=C3=B6nberger?= Date: Tue, 5 Nov 2013 13:30:23 +0100 Subject: [PATCH] Refactor code for logical device status --- check_lsi_raid | 24 +++++++++++++----------- 1 file changed, 13 insertions(+), 11 deletions(-) diff --git a/check_lsi_raid b/check_lsi_raid index 24309cb..1f7728f 100755 --- a/check_lsi_raid +++ b/check_lsi_raid @@ -369,25 +369,27 @@ sub getLogicalDeviceStatus { $flag = -1; my @values = split(' ',$line); if($values[2] ne "Optl") { - if($values[4] eq "Yes") { - $status = getExitState($status, STATE_WARNING); - if ($VERBOSITY == 0) {$statusMessage .= "Virtual disk state not optimal, "; } - if ($VERBOSITY >= 1) {$statusMessage .= "Virtual disk $output_dev state not optimal ($values[2]), "; } - } else { - # cachecade volumes cannot be checked for consistency - if($values[4] ne "Yes" && $values[1] ne "Cac1"){ - $status = getExitState($status, STATE_CRITICAL); + if($values[1] ne 'Cac1'){ + #check for consistency + if($values[4] eq 'Yes'){ + if ($VERBOSITY == 0) {$statusMessage .= "Virtual disk state not optimal, "; } + if ($VERBOSITY >= 1) {$statusMessage .= "Virtual disk $output_dev state not optimal ($values[2]), "; } + } + else{ if ($VERBOSITY == 0) {$statusMessage .= "Virtual disk state not optimal - not consistant, "; } if ($VERBOSITY >= 1) {$statusMessage .= "Virtual disk $output_dev is not optimal - not consistant (state $values[2]), "; } } } + else{ + if ($VERBOSITY == 0) {$statusMessage .= "Virtual cachecade disk state not optimal, "; } + if ($VERBOSITY >= 1) {$statusMessage .= "Virtual cachecade disk $output_dev state not optimal ($values[2]), "; } + } } else { - # cachecade volumes cannot be checked for consistency if($values[4] ne "Yes" && $values[1] ne "Cac1"){ $status = getExitState($status, STATE_WARNING); - if ($VERBOSITY == 0) {$statusMessage .= "Virtual disk state optimal, but not consistent, "; } - if ($VERBOSITY >= 1) {$statusMessage .= "Virtual disk $output_dev state optimal, but not consistent, "; } + if ($VERBOSITY == 0) {$statusMessage .= "Virtual disk state optimal - but not consistent, "; } + if ($VERBOSITY >= 1) {$statusMessage .= "Virtual disk $output_dev state optimal - but not consistent, "; } } } }