Florian Schaal
2015-11-29 248d0eebf3d5d6eb2836c81b44795f5b71c4db9b
server/lib/classes/cron.d/100-monitor_raid.inc.php
@@ -229,6 +229,51 @@
         }
      }
      /*
      * HP Proliant
      */
      system('which hpacucli', $retval);
      if($retval === 0) {
         $state = 'ok';
         $data['output'] = shell_exec('/usr/sbin/hpacucli ctrl all show config');
         $tmp = explode("\n", $data['output']);
         if(is_array($tmp)) {
            foreach ($tmp as $item) {
               if (strpos($item, 'logicaldrive') !== false) {
                  if (strpos($item, 'OK') !== false) {
                     $this->_tools->_setState($state = 'ok');
                  } elseif (strpos($item, 'Recovery Mode') !== false) {
                     $this->_tools->_setState($state = 'critical');
                     break;
                  } elseif (strpos($item, 'Failed') !== false) {
                     $this->_tools->_setState($state = 'error');
                     break;
                  } elseif (strpos($item, 'Recovering') !== false) {
                     $this->_tools->_setState($state = 'info');
                     break;
                  } else {
                     $this->_tools->_setState($state = 'critical');
                  }
               }
               if (strpos($item, 'physicaldrive') !== false) {
                  if (strpos($item, 'physicaldrive') !== false) {
                     if (strpos($item, 'OK') !== false) {
                        $this->_tools->_setState($state = 'ok');
                     } elseif (strpos($item, 'Failed') !== false) {
                        $this->_tools->_setState($state = 'critical');
                        break;
                     } elseif (strpos($item, 'Rebuilding') !== false) {
                        $this->_tools->_setState($state = 'info');
                        break;
                     } else {
                        $this->_tools->_setState($state = 'critical');
                        break;
                     }
                  }
               }
            }
         }
      }
      $res = array();
      $res['server_id'] = $server_id;