From d7f1c84e3e72ee77893fe08efac070b36df0ff76 Mon Sep 17 00:00:00 2001
From: Florian Schaal <florian@schaal-24.de>
Date: Sun, 29 Nov 2015 05:59:00 -0500
Subject: [PATCH] FS#3885 - LSI MegaRaid monitoring (code) (cwispy)
---
server/lib/classes/cron.d/100-monitor_raid.inc.php | 21 +++++++++++++++++++++
1 files changed, 21 insertions(+), 0 deletions(-)
diff --git a/server/lib/classes/cron.d/100-monitor_raid.inc.php b/server/lib/classes/cron.d/100-monitor_raid.inc.php
index 3480908..c7d8c4e 100644
--- a/server/lib/classes/cron.d/100-monitor_raid.inc.php
+++ b/server/lib/classes/cron.d/100-monitor_raid.inc.php
@@ -275,6 +275,27 @@
}
}
+ /*
+ * LSI MegaRaid
+ */
+ system('which megacli', $retval);
+ system('which megacli64', $retval64);
+ if($retval === 0 || $retval64 === 0) {
+ $binary=@($retval === 0)?'megacli':'megacli64';
+ $state = 'ok';
+ $data['output'] = shell_exec($binary.' -LDInfo -Lall -aAll');
+ if (strpos($data['output'], 'Optimal') !== false) {
+ $this->_tools->_setState($state, 'ok');
+ } else if (strpos($data['output'], 'Degraded') !== false) {
+ $this->_tools->_setState($state, 'critical');
+ } else if (strpos($data['output'], 'Offline') !== false) {
+ $this->_tools->_setState($state, 'critical');
+ } else {
+ $this->_tools->_setState($state, 'critical');
+ }
+ }
+
+
$res = array();
$res['server_id'] = $server_id;
$res['type'] = $type;
--
Gitblit v1.9.1