Module: check_mk
Branch: master
Commit: 1f038183b3cb8b06bceedd54d2f6f541d17a4980
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=1f038183b3cb8b…
Author: Sebastian Herbord <sh(a)mathias-kettner.de>
Date: Mon Sep 7 11:48:57 2015 +0200
fixed naming of check added in werk 2572
---
.werks/2572 | 2 +-
ChangeLog | 2 +-
checkman/{omreport_vdisk => dell_om_vdisks} | 0
checks/dell_om.include | 37 +++++++++++++++++
checks/{omreport_vdisk => dell_om_vdisks} | 2 +-
checks/omreport.include | 60 ---------------------------
6 files changed, 40 insertions(+), 63 deletions(-)
diff --git a/.werks/2572 b/.werks/2572
index d2b9f5a..8ab1781 100644
--- a/.werks/2572
+++ b/.werks/2572
@@ -1,4 +1,4 @@
-Title: omreport_vdisk: New check for virtual disks on Dell OpenManage supported devices
+Title: dell_om_vdisks: New check for virtual disks on Dell OpenManage supported devices
Level: 1
Component: checks
Compatible: compat
diff --git a/ChangeLog b/ChangeLog
index f0da4e0..8e27100 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -72,7 +72,7 @@
* 2563 ipr400_temp, ipr400_in_voltage: New checks for the Omnitronics IPR400
* 2583 new check datapower_tcp: monitors the number of TCP connections in the various possible states
* 2565 dell_om_disks now warns if SMART predicts disk failure
- * 2572 omreport_vdisk: New check for virtual disks on Dell OpenManage supported devices
+ * 2572 dell_om_vdisks: New check for virtual disks on Dell OpenManage supported devices
* 2315 FIX: windows agent: BOM replacement, fixed incorrect byte offset...
* 2316 FIX: windows agent: fix garbled output of cached agent plugins...
* 2358 FIX: check_mk_agent.solaris: more correct computation of zfs used space...
diff --git a/checkman/omreport_vdisk b/checkman/dell_om_vdisks
similarity index 100%
rename from checkman/omreport_vdisk
rename to checkman/dell_om_vdisks
diff --git a/checks/dell_om.include b/checks/dell_om.include
index ea3bd08..fa57c66 100644
--- a/checks/dell_om.include
+++ b/checks/dell_om.include
@@ -28,7 +28,44 @@
# operating system. We trigger on all Windows and Linux systems.
# This is not optimal but still enough for excluding network
# devices and similar stuff
+
+
def scan_dell_om(oid):
return "Open Manage" in oid(".1.3.6.1.2.1.1.1.0") or \
"Linux" in oid(".1.3.6.1.2.1.1.1.0") or \
"Software: Windows" in oid(".1.3.6.1.2.1.1.1.0")
+
+
+def parse_omreport(info):
+ result = {}
+ current_obj = {}
+
+ def insert(obj):
+ result[obj["ID"]] = obj.copy()
+ obj.clear()
+
+ for line in info:
+ try:
+ idx = line.index(":")
+ except ValueError:
+ # no colon in the line
+ continue
+ key = " ".join(line[:idx])
+ value = " ".join(line[idx + 1:])
+ if key == "ID" and current_obj:
+ insert(current_obj)
+
+ current_obj[key] = value
+
+ insert(current_obj)
+ return result
+
+
+def status_translate_omreport(code):
+ return {
+ "ok" : 0,
+ "non-critical" : 1,
+ "critical" : 2,
+ "not found" : 3
+ }.get(code.lower(), 2)
+
diff --git a/checks/omreport_vdisk b/checks/dell_om_vdisks
similarity index 98%
rename from checks/omreport_vdisk
rename to checks/dell_om_vdisks
index 9b608ac..5158137 100644
--- a/checks/omreport_vdisk
+++ b/checks/dell_om_vdisks
@@ -68,6 +68,6 @@ check_info["omreport_vdisk"] = {
"inventory_function" : inventory_omreport_vdisk,
"parse_function" : parse_omreport,
"service_description" : "Virtual Disk %s",
- "includes" : ["omreport.include"]
+ "includes" : ["dell_om.include"]
}
diff --git a/checks/omreport.include b/checks/omreport.include
deleted file mode 100644
index 8d8ea5a..0000000
--- a/checks/omreport.include
+++ /dev/null
@@ -1,60 +0,0 @@
-#!/usr/bin/python
-# -*- encoding: utf-8; py-indent-offset: 4 -*-
-# +------------------------------------------------------------------+
-# | ____ _ _ __ __ _ __ |
-# | / ___| |__ ___ ___| | __ | \/ | |/ / |
-# | | | | '_ \ / _ \/ __| |/ / | |\/| | ' / |
-# | | |___| | | | __/ (__| < | | | | . \ |
-# | \____|_| |_|\___|\___|_|\_\___|_| |_|_|\_\ |
-# | |
-# | Copyright Mathias Kettner 2015 mk(a)mathias-kettner.de |
-# +------------------------------------------------------------------+
-#
-# This file is part of Check_MK.
-# The official homepage is at http://mathias-kettner.de/check_mk.
-#
-# check_mk is free software; you can redistribute it and/or modify it
-# under the terms of the GNU General Public License as published by
-# the Free Software Foundation in version 2. check_mk is distributed
-# in the hope that it will be useful, but WITHOUT ANY WARRANTY; with-
-# out even the implied warranty of MERCHANTABILITY or FITNESS FOR A
-# PARTICULAR PURPOSE. See the GNU General Public License for more de-
-# ails. You should have received a copy of the GNU General Public
-# License along with GNU Make; see the file COPYING. If not, write
-# to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
-# Boston, MA 02110-1301 USA.
-
-
-def parse_omreport(info):
- result = {}
- current_obj = {}
-
- def insert(obj):
- result[obj["ID"]] = obj.copy()
- obj.clear()
-
- for line in info:
- try:
- idx = line.index(":")
- except ValueError:
- # no colon in the line
- continue
- key = " ".join(line[:idx])
- value = " ".join(line[idx + 1:])
- if key == "ID" and current_obj:
- insert(current_obj)
-
- current_obj[key] = value
-
- insert(current_obj)
- return result
-
-
-def status_translate_omreport(code):
- return {
- "ok" : 0,
- "non-critical" : 1,
- "critical" : 2,
- "not found" : 3
- }.get(code.lower(), 2)
-
Module: check_mk
Branch: master
Commit: 381025139e9f50061e70a33e393240b2450f1cae
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=381025139e9f50…
Author: Sebastian Herbord <sh(a)mathias-kettner.de>
Date: Mon Sep 7 11:29:48 2015 +0200
#2572 omreport_vdisk: New check for virtual disks on Dell OpenManage supported devices
---
.werks/2572 | 9 ++++++
ChangeLog | 1 +
agents/plugins/mk_omreport | 30 ++++++++++++++++++
checkman/omreport_vdisk | 20 ++++++++++++
checks/omreport.include | 60 ++++++++++++++++++++++++++++++++++++
checks/omreport_vdisk | 73 ++++++++++++++++++++++++++++++++++++++++++++
6 files changed, 193 insertions(+)
diff --git a/.werks/2572 b/.werks/2572
new file mode 100644
index 0000000..d2b9f5a
--- /dev/null
+++ b/.werks/2572
@@ -0,0 +1,9 @@
+Title: omreport_vdisk: New check for virtual disks on Dell OpenManage supported devices
+Level: 1
+Component: checks
+Compatible: compat
+Version: 1.2.7i3
+Date: 1441618103
+Class: feature
+
+
diff --git a/ChangeLog b/ChangeLog
index 9b03f53..f0da4e0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -72,6 +72,7 @@
* 2563 ipr400_temp, ipr400_in_voltage: New checks for the Omnitronics IPR400
* 2583 new check datapower_tcp: monitors the number of TCP connections in the various possible states
* 2565 dell_om_disks now warns if SMART predicts disk failure
+ * 2572 omreport_vdisk: New check for virtual disks on Dell OpenManage supported devices
* 2315 FIX: windows agent: BOM replacement, fixed incorrect byte offset...
* 2316 FIX: windows agent: fix garbled output of cached agent plugins...
* 2358 FIX: check_mk_agent.solaris: more correct computation of zfs used space...
diff --git a/agents/plugins/mk_omreport b/agents/plugins/mk_omreport
new file mode 100755
index 0000000..fb84fc5
--- /dev/null
+++ b/agents/plugins/mk_omreport
@@ -0,0 +1,30 @@
+#!/bin/bash
+# +------------------------------------------------------------------+
+# | ____ _ _ __ __ _ __ |
+# | / ___| |__ ___ ___| | __ | \/ | |/ / |
+# | | | | '_ \ / _ \/ __| |/ / | |\/| | ' / |
+# | | |___| | | | __/ (__| < | | | | . \ |
+# | \____|_| |_|\___|\___|_|\_\___|_| |_|_|\_\ |
+# | |
+# | Copyright Mathias Kettner 2014 mk(a)mathias-kettner.de |
+# +------------------------------------------------------------------+
+#
+# This file is part of Check_MK.
+# The official homepage is at http://mathias-kettner.de/check_mk.
+#
+# check_mk is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation in version 2. check_mk is distributed
+# in the hope that it will be useful, but WITHOUT ANY WARRANTY; with-
+# out even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE. See the GNU General Public License for more de-
+# ails. You should have received a copy of the GNU General Public
+# License along with GNU Make; see the file COPYING. If not, write
+# to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+# Boston, MA 02110-1301 USA.
+
+if which omreport >/dev/null
+then
+ echo "<<<omreport_vdisk>>>"
+ omreport storage vdisk
+fi
diff --git a/checkman/omreport_vdisk b/checkman/omreport_vdisk
new file mode 100644
index 0000000..5c34428
--- /dev/null
+++ b/checkman/omreport_vdisk
@@ -0,0 +1,20 @@
+title: Dell OpenManage: Virtual Disks
+agents: linux
+catalog: hw/server/dell
+license: GPL
+distribution: check_mk
+description:
+ This check monitors the current status of Virtual Disks (i.e. raid) on
+ a Dell server.
+ The check returns error states based on what the device reports itself.
+ It also returns a {CRIT} if the "state" of the device isn't reported as "ready".
+
+ This check requires the omreport tool to be installed and the mk_omreport plugin
+ to be installed.
+
+item:
+ Vogical disk number as reported by omreport
+
+inventory:
+ One check is created for each virtual disk
+
diff --git a/checks/omreport.include b/checks/omreport.include
new file mode 100644
index 0000000..8d8ea5a
--- /dev/null
+++ b/checks/omreport.include
@@ -0,0 +1,60 @@
+#!/usr/bin/python
+# -*- encoding: utf-8; py-indent-offset: 4 -*-
+# +------------------------------------------------------------------+
+# | ____ _ _ __ __ _ __ |
+# | / ___| |__ ___ ___| | __ | \/ | |/ / |
+# | | | | '_ \ / _ \/ __| |/ / | |\/| | ' / |
+# | | |___| | | | __/ (__| < | | | | . \ |
+# | \____|_| |_|\___|\___|_|\_\___|_| |_|_|\_\ |
+# | |
+# | Copyright Mathias Kettner 2015 mk(a)mathias-kettner.de |
+# +------------------------------------------------------------------+
+#
+# This file is part of Check_MK.
+# The official homepage is at http://mathias-kettner.de/check_mk.
+#
+# check_mk is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation in version 2. check_mk is distributed
+# in the hope that it will be useful, but WITHOUT ANY WARRANTY; with-
+# out even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE. See the GNU General Public License for more de-
+# ails. You should have received a copy of the GNU General Public
+# License along with GNU Make; see the file COPYING. If not, write
+# to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+# Boston, MA 02110-1301 USA.
+
+
+def parse_omreport(info):
+ result = {}
+ current_obj = {}
+
+ def insert(obj):
+ result[obj["ID"]] = obj.copy()
+ obj.clear()
+
+ for line in info:
+ try:
+ idx = line.index(":")
+ except ValueError:
+ # no colon in the line
+ continue
+ key = " ".join(line[:idx])
+ value = " ".join(line[idx + 1:])
+ if key == "ID" and current_obj:
+ insert(current_obj)
+
+ current_obj[key] = value
+
+ insert(current_obj)
+ return result
+
+
+def status_translate_omreport(code):
+ return {
+ "ok" : 0,
+ "non-critical" : 1,
+ "critical" : 2,
+ "not found" : 3
+ }.get(code.lower(), 2)
+
diff --git a/checks/omreport_vdisk b/checks/omreport_vdisk
new file mode 100644
index 0000000..9b608ac
--- /dev/null
+++ b/checks/omreport_vdisk
@@ -0,0 +1,73 @@
+#!/usr/bin/python
+# -*- encoding: utf-8; py-indent-offset: 4 -*-
+# +------------------------------------------------------------------+
+# | ____ _ _ __ __ _ __ |
+# | / ___| |__ ___ ___| | __ | \/ | |/ / |
+# | | | | '_ \ / _ \/ __| |/ / | |\/| | ' / |
+# | | |___| | | | __/ (__| < | | | | . \ |
+# | \____|_| |_|\___|\___|_|\_\___|_| |_|_|\_\ |
+# | |
+# | Copyright Mathias Kettner 2015 mk(a)mathias-kettner.de |
+# +------------------------------------------------------------------+
+#
+# This file is part of Check_MK.
+# The official homepage is at http://mathias-kettner.de/check_mk.
+#
+# check_mk is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License as published by
+# the Free Software Foundation in version 2. check_mk is distributed
+# in the hope that it will be useful, but WITHOUT ANY WARRANTY; with-
+# out even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE. See the GNU General Public License for more de-
+# ails. You should have received a copy of the GNU General Public
+# License along with GNU Make; see the file COPYING. If not, write
+# to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
+# Boston, MA 02110-1301 USA.
+
+
+# sample agent output:
+#
+# <<<omreport_vdisk>>>
+# ID : 0
+# Status : Ok
+# Name : Virtual Disk 0
+# State : Ready
+# Hot Spare Policy violated : Not Assigned
+# Encrypted : Not Applicable
+# Layout : RAID-1
+# Size : 278.88 GB (299439751168 bytes)
+# T10 Protection Information Status : No
+# Associated Fluid Cache State : Not Applicable
+# Device Name : /dev/sda
+# Bus Protocol : SAS
+# Media : HDD
+# Read Policy : Read Ahead
+# Write Policy : Write Back
+# Cache Policy : Not Applicable
+# Stripe Element Size : 64 KB
+# Disk Cache Policy : Unchanged
+
+
+def inventory_omreport_vdisk(parsed):
+ return [(key, None) for key in parsed.keys()]
+
+
+def check_omreport_vdisk(item, params, parsed):
+ if item in parsed:
+ status = status_translate_omreport(parsed[item]["Status"])
+ if parsed[item]["State"] != "Ready":
+ status = 2
+
+ return status, "Device: %s, Status: %s, State: %s, Layout: %s" %\
+ (parsed[item]["Device Name"], parsed[item]["Status"],
+ parsed[item]["State"], parsed[item]["Layout"])
+
+
+check_info["omreport_vdisk"] = {
+ "check_function" : check_omreport_vdisk,
+ "inventory_function" : inventory_omreport_vdisk,
+ "parse_function" : parse_omreport,
+ "service_description" : "Virtual Disk %s",
+ "includes" : ["omreport.include"]
+}
+
Module: check_mk
Branch: master
Commit: 7a2b8511839daccee065b29c5a8ca1a82908727f
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=7a2b8511839dac…
Author: Lars Michelsen <lm(a)mathias-kettner.de>
Date: Mon Sep 7 09:32:11 2015 +0200
Added missing man pages
---
checkman/mail | 11 +++++++++++
checkman/mail_loop | 13 +++++++++++++
checkman/siemens_plc.counter | 20 ++++++++++++++++++++
checks/bi_aggr | 8 ++++++++
4 files changed, 52 insertions(+)
diff --git a/checkman/mail b/checkman/mail
new file mode 100644
index 0000000..71d4612
--- /dev/null
+++ b/checkman/mail
@@ -0,0 +1,11 @@
+title: POP3/IMAP connection and optional mail forwarding
+agents: active
+catalog: agentless
+license: GPL
+distribution: check_mk
+description:
+ Logs in into an IMAP or POP3 mailbox to monitor whether or not the login is possible.
+ An extended, optional, feature is, that the check can fetch all (or just some) mails
+ from the mailbox and forward them as events to the Event Console.
+
+ This check can be configured using WATO.
diff --git a/checkman/mail_loop b/checkman/mail_loop
new file mode 100644
index 0000000..2ed2b6a
--- /dev/null
+++ b/checkman/mail_loop
@@ -0,0 +1,13 @@
+title: POP3/IMAP connection and optional mail forwarding
+agents: active
+catalog: agentless
+license: GPL
+distribution: check_mk
+description:
+ Sends out special eMails to a defined mail address using the SMTP protocol
+ and then tries to receive these mails back by querying the inbox of a IMAP
+ or POP3 mailbox.
+
+ With this check you can verify that your whole mail delivery progress is working.
+
+ This check can be configured using WATO.
diff --git a/checkman/siemens_plc.counter b/checkman/siemens_plc.counter
new file mode 100644
index 0000000..d127565
--- /dev/null
+++ b/checkman/siemens_plc.counter
@@ -0,0 +1,20 @@
+title: Siemens PLC: Counter values
+agents: siemens_plc
+catalog: hw/other
+license: GPL
+distribution: check_mk
+description:
+ The check monitors the counter values reported by Siemens PLC (SPS) devices.
+
+ You need to use and configure the special agent {agent_siemens_plc} which is using the SNAP7
+ library to communicate with the Siemens PLC. When you are using OMD, everything is already
+ installed and configured. In manual setups, you will need to ensure that the snap7 library
+ and python module {snap7} are installed.
+ To make temperature values available for the check, you need to configure the memory addresses
+ and data types to read from the device as temperature values.
+
+ The checks does not {WARN}/{CRIT} unless you configure the thresholds for the check, as the
+ device does not report any thresholds.
+
+inventory:
+ One check for each configured counter is created automatically.
diff --git a/checks/bi_aggr b/checks/bi_aggr
new file mode 100644
index 0000000..efa69ba
--- /dev/null
+++ b/checks/bi_aggr
@@ -0,0 +1,8 @@
+title: BI Aggregations
+agents: active
+catalog: agentless
+license: GPL
+distribution: check_mk
+description:
+ Connects to the local or a remote Check_MK monitoring server to gather the state of a Check_MK
+ BI to aggregation and reports the state of this aggregation as result.
Module: check_mk
Branch: master
Commit: 168f033c8b08ef8097429944091277723272783f
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=168f033c8b08ef…
Author: Bastian Kuhn <bk(a)mathias-kettner.de>
Date: Mon Sep 7 09:32:09 2015 +0200
Removed not working link
---
checkman/hp_proliant | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/checkman/hp_proliant b/checkman/hp_proliant
index 0140f57..ad98554 100644
--- a/checkman/hp_proliant
+++ b/checkman/hp_proliant
@@ -9,8 +9,7 @@ description:
In addition it also returns the serial number and firmware version.
The status is {OK} only if the agent signals {Ok}, {WARN} on
- {Degraded} and {CRIT} on {Failed}. If you get an {UKNOWN} state you may need a Fireware Update:
- http://h20566.www2.hp.com/hpsc/doc/public/display?docId=c03939085&jum
+ {Degraded} and {CRIT} on {Failed}. If you get an {UKNOWN} state you may need a Firmware Update
inventory:
One check is automatically created for each supported server.