From 8479e7a133e74e536f3db76dd60889a1640e7014 Mon Sep 17 00:00:00 2001 From: Clint Armstrong Date: Tue, 21 Jul 2015 16:21:21 -0400 Subject: [PATCH 1/4] attempt fix --- .../discovery/temperatures/equallogic.inc.php | 55 ++++++++----------- 1 file changed, 24 insertions(+), 31 deletions(-) diff --git a/includes/discovery/temperatures/equallogic.inc.php b/includes/discovery/temperatures/equallogic.inc.php index 8febba396..10e241304 100644 --- a/includes/discovery/temperatures/equallogic.inc.php +++ b/includes/discovery/temperatures/equallogic.inc.php @@ -1,49 +1,42 @@ $vals) { + discover_sensor($valid['sensor'], 'temperature', $device, $vals['eqlMemberHealthDetailsTemperatureName'] + }// end foreach + }//end if +}//end if + $temperature = $extra[$keys[0]]['eqlMemberHealthDetailsTemperatureValue']; $low_limit = $extra[$keys[0]]['eqlMemberHealthDetailsTemperatureLowCriticalThreshold']; $low_warn = $extra[$keys[0]]['eqlMemberHealthDetailsTemperatureLowWarningThreshold']; $high_limit = $extra[$keys[0]]['eqlMemberHealthDetailsTemperatureHighCriticalThreshold']; $high_warn = $extra[$keys[0]]['eqlMemberHealthDetailsTemperatureHighWarningThreshold']; - $index = (100 + $index); if ($extra[$keys[0]]['eqlMemberHealthDetailsTemperatureCurrentState'] != 'unknown') { discover_sensor($valid['sensor'], 'temperature', $device, $oid, $index, 'snmp', $descr, 1, 1, $low_limit, $low_warn, $high_limit, $high_warn, $temperature); - } - }//end if - }//end foreach - }//end if -}//end if + +EqlMemberHealthDetailsTemperatureEntry From 31816943c370617d71af9936caca1b78ff35d1cd Mon Sep 17 00:00:00 2001 From: Clint Armstrong Date: Tue, 21 Jul 2015 16:21:31 -0400 Subject: [PATCH 2/4] Revert "attempt fix" This reverts commit 8479e7a133e74e536f3db76dd60889a1640e7014. --- .../discovery/temperatures/equallogic.inc.php | 55 +++++++++++-------- 1 file changed, 31 insertions(+), 24 deletions(-) diff --git a/includes/discovery/temperatures/equallogic.inc.php b/includes/discovery/temperatures/equallogic.inc.php index 10e241304..8febba396 100644 --- a/includes/discovery/temperatures/equallogic.inc.php +++ b/includes/discovery/temperatures/equallogic.inc.php @@ -1,42 +1,49 @@ $vals) { - discover_sensor($valid['sensor'], 'temperature', $device, $vals['eqlMemberHealthDetailsTemperatureName'] - }// end foreach - }//end if -}//end if - + list($oid,$descr) = explode(' = ', $data, 2); + $split_oid = explode('.', $oid); + $num_index = $split_oid[(count($split_oid) - 1)]; + $index = $num_index; + $part_oid = $split_oid[(count($split_oid) - 2)]; + $num_index = $part_oid.'.'.$num_index; + $base_oid = '.1.3.6.1.4.1.12740.2.1.6.1.3.1.'; + $oid = $base_oid.$num_index; + $extra = snmp_get_multi($device, "eqlMemberHealthDetailsTemperatureValue.3.329840783.$index eqlMemberHealthDetailsTemperatureCurrentState.3.329840783.$index eqlMemberHealthDetailsTemperatureHighCriticalThreshold.3.329840783.$index eqlMemberHealthDetailsTemperatureHighWarningThreshold.3.329840783.$index eqlMemberHealthDetailsTemperatureLowCriticalThreshold.3.329840783.$index eqlMemberHealthDetailsTemperatureLowWarningThreshold.3.329840783.$index", '-OQUs', 'EQLMEMBER-MIB', $config['install_dir'].'/mibs/equallogic'); + $keys = array_keys($extra); $temperature = $extra[$keys[0]]['eqlMemberHealthDetailsTemperatureValue']; $low_limit = $extra[$keys[0]]['eqlMemberHealthDetailsTemperatureLowCriticalThreshold']; $low_warn = $extra[$keys[0]]['eqlMemberHealthDetailsTemperatureLowWarningThreshold']; $high_limit = $extra[$keys[0]]['eqlMemberHealthDetailsTemperatureHighCriticalThreshold']; $high_warn = $extra[$keys[0]]['eqlMemberHealthDetailsTemperatureHighWarningThreshold']; + $index = (100 + $index); if ($extra[$keys[0]]['eqlMemberHealthDetailsTemperatureCurrentState'] != 'unknown') { discover_sensor($valid['sensor'], 'temperature', $device, $oid, $index, 'snmp', $descr, 1, 1, $low_limit, $low_warn, $high_limit, $high_warn, $temperature); - -EqlMemberHealthDetailsTemperatureEntry + } + }//end if + }//end foreach + }//end if +}//end if From ef758cb4b46988e0a9798b0b75f77b247c41aac0 Mon Sep 17 00:00:00 2001 From: Clint Armstrong Date: Tue, 21 Jul 2015 16:31:21 -0400 Subject: [PATCH 3/4] fix temps --- includes/discovery/temperatures/equallogic.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/includes/discovery/temperatures/equallogic.inc.php b/includes/discovery/temperatures/equallogic.inc.php index 8febba396..bdb13068c 100644 --- a/includes/discovery/temperatures/equallogic.inc.php +++ b/includes/discovery/temperatures/equallogic.inc.php @@ -31,7 +31,7 @@ if ($device['os'] == 'equallogic') { $num_index = $part_oid.'.'.$num_index; $base_oid = '.1.3.6.1.4.1.12740.2.1.6.1.3.1.'; $oid = $base_oid.$num_index; - $extra = snmp_get_multi($device, "eqlMemberHealthDetailsTemperatureValue.3.329840783.$index eqlMemberHealthDetailsTemperatureCurrentState.3.329840783.$index eqlMemberHealthDetailsTemperatureHighCriticalThreshold.3.329840783.$index eqlMemberHealthDetailsTemperatureHighWarningThreshold.3.329840783.$index eqlMemberHealthDetailsTemperatureLowCriticalThreshold.3.329840783.$index eqlMemberHealthDetailsTemperatureLowWarningThreshold.3.329840783.$index", '-OQUs', 'EQLMEMBER-MIB', $config['install_dir'].'/mibs/equallogic'); + $extra = snmp_get_multi($device, "eqlMemberHealthDetailsTemperatureValue.1.$num_index eqlMemberHealthDetailsTemperatureCurrentState.1.$num_index eqlMemberHealthDetailsTemperatureHighCriticalThreshold.1.$num_index eqlMemberHealthDetailsTemperatureHighWarningThreshold.1.$num_index eqlMemberHealthDetailsTemperatureLowCriticalThreshold.1.$num_index eqlMemberHealthDetailsTemperatureLowWarningThreshold.1.$num_index", '-OQUs', 'EQLMEMBER-MIB', $config['install_dir'].'/mibs/equallogic'); $keys = array_keys($extra); $temperature = $extra[$keys[0]]['eqlMemberHealthDetailsTemperatureValue']; $low_limit = $extra[$keys[0]]['eqlMemberHealthDetailsTemperatureLowCriticalThreshold']; From e6e17325bb2a03037b1653ce69e61c89b730ee8b Mon Sep 17 00:00:00 2001 From: Clint Armstrong Date: Tue, 21 Jul 2015 16:40:17 -0400 Subject: [PATCH 4/4] fix fanspeed thresholds --- includes/discovery/fanspeeds/equallogic.inc.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/includes/discovery/fanspeeds/equallogic.inc.php b/includes/discovery/fanspeeds/equallogic.inc.php index d7c972dcf..c740ca151 100644 --- a/includes/discovery/fanspeeds/equallogic.inc.php +++ b/includes/discovery/fanspeeds/equallogic.inc.php @@ -24,7 +24,7 @@ if ($device['os'] == 'equallogic') { $num_index = $part_oid.'.'.$num_index; $base_oid = '.1.3.6.1.4.1.12740.2.1.7.1.3.1.'; $oid = $base_oid.$num_index; - $extra = snmp_get_multi($device, "eqlMemberHealthDetailsFanValue.3.329840783.$index eqlMemberHealthDetailsFanCurrentState.3.329840783.$index eqlMemberHealthDetailsFanHighCriticalThreshold.3.329840783.$index eqlMemberHealthDetailsFanHighWarningThreshold.3.329840783.$index eqlMemberHealthDetailsFanLowCriticalThreshold.3.329840783.$index eqlMemberHealthDetailsFanLowWarningThreshold.3.329840783.$index", '-OQUs', 'EQLMEMBER-MIB', $config['install_dir'].'/mibs/equallogic'); + $extra = snmp_get_multi($device, "eqlMemberHealthDetailsFanValue.1.$num_index eqlMemberHealthDetailsFanCurrentState.1.$num_index eqlMemberHealthDetailsFanHighCriticalThreshold.1.$num_index eqlMemberHealthDetailsFanHighWarningThreshold.1.$num_index eqlMemberHealthDetailsFanLowCriticalThreshold.1.$num_index eqlMemberHealthDetailsFanLowWarningThreshold.1.$num_index", '-OQUs', 'EQLMEMBER-MIB', $config['install_dir'].'/mibs/equallogic'); $keys = array_keys($extra); $temperature = $extra[$keys[0]]['eqlMemberHealthDetailsFanValue']; $low_limit = $extra[$keys[0]]['eqlMemberHealthDetailsFanLowCriticalThreshold'];