Commit 794082b4 authored by tbrehm's avatar tbrehm
Browse files

Fixed a Bug in the monitor is the LSI software raid software is installed but...

Fixed a Bug in the monitor is the LSI software raid software is installed but no LSI raid is configured.
parent 59a4682f
...@@ -993,32 +993,34 @@ class monitor_tools { ...@@ -993,32 +993,34 @@ class monitor_tools {
* Then calc the state. * Then calc the state.
*/ */
$state = 'ok'; $state = 'ok';
foreach ($data['output'] as $item) { if(is_array($data['output'])) {
/* foreach ($data['output'] as $item) {
* The output contains information for every RAID and every HDD.
* We only need the state of the RAID
*/
if (strpos($item, 'raidlevel:') !== false) {
/* /*
* We found a raid, process the state of it * The output contains information for every RAID and every HDD.
*/ * We only need the state of the RAID
if (strpos($item, ' ONLINE ') !== false) { */
$this->_setState($state, 'ok'); if (strpos($item, 'raidlevel:') !== false) {
} elseif (strpos($item, ' OPTIMAL ') !== false) { /*
$this->_setState($state, 'ok'); * We found a raid, process the state of it
} elseif (strpos($item, ' INITIAL ') !== false) { */
$this->_setState($state, 'info'); if (strpos($item, ' ONLINE ') !== false) {
} elseif (strpos($item, ' INACTIVE ') !== false) { $this->_setState($state, 'ok');
$this->_setState($state, 'critical'); } elseif (strpos($item, ' OPTIMAL ') !== false) {
} elseif (strpos($item, ' RESYNC ') !== false) { $this->_setState($state, 'ok');
$this->_setState($state, 'info'); } elseif (strpos($item, ' INITIAL ') !== false) {
} elseif (strpos($item, ' DEGRADED ') !== false) { $this->_setState($state, 'info');
$this->_setState($state, 'critical'); } elseif (strpos($item, ' INACTIVE ') !== false) {
} else { $this->_setState($state, 'critical');
/* we don't know the state. so we set the state to critical, that the } elseif (strpos($item, ' RESYNC ') !== false) {
* admin is warned, that something is wrong $this->_setState($state, 'info');
*/ } elseif (strpos($item, ' DEGRADED ') !== false) {
$this->_setState($state, 'critical'); $this->_setState($state, 'critical');
} else {
/* we don't know the state. so we set the state to critical, that the
* admin is warned, that something is wrong
*/
$this->_setState($state, 'critical');
}
} }
} }
} }
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment