Module: check_mk
Branch: master
Commit: 7b7c6305279dd9a2e01a8298e8af04aa118c81e6
URL:
http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=7b7c6305279dd9…
Author: Bastian Kuhn <bk(a)mathias-kettner.de>
Date: Tue Dec 8 11:39:21 2015 +0100
#1314 apc_sts_source: New Check to monitor if the input source changes on APC STS devices
---
.werks/1314 | 9 ++++++++
ChangeLog | 1 +
checkman/apc_sts_source | 11 +++++++++
checks/apc_sts_source | 57 +++++++++++++++++++++++++++++++++++++++++++++++
4 files changed, 78 insertions(+)
diff --git a/.werks/1314 b/.werks/1314
new file mode 100644
index 0000000..839e75a
--- /dev/null
+++ b/.werks/1314
@@ -0,0 +1,9 @@
+Title: apc_sts_source: New Check to monitor if the input source changes on APC STS
devices
+Level: 1
+Component: checks
+Compatible: compat
+Version: 1.2.7i4
+Date: 1449571130
+Class: feature
+
+
diff --git a/ChangeLog b/ChangeLog
index c386a88..197dbbb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -57,6 +57,7 @@
* 2867 check_http: client certificate and private key file parameters can now be set
in wato...
* 2884 mssql_blocked_sessions: the state of the blocked sessions is now configurable
* 1313 apc_sts_inputs: New Check for APC Static Transfer Swichtes: Input Phases
+ * 1314 apc_sts_source: New Check to monitor if the input source changes on APC STS
devices
* 2660 FIX: fixed windows agent using the wrong working directory...
* 2664 FIX: ps: Speedup in situation with many matching processes...
* 2661 FIX: windows agent: fixed incomplete process list...
diff --git a/checkman/apc_sts_source b/checkman/apc_sts_source
new file mode 100644
index 0000000..2f265d7
--- /dev/null
+++ b/checkman/apc_sts_source
@@ -0,0 +1,11 @@
+title: APC STS: Used Source
+agents: snmp
+catalog: hw/power/apc
+license: GPL
+distribution: check_mk
+description:
+ This check triggers a {WARNING} if the input soource of the device changes.
+ You can reset the state by doing a "tabula rasa" for the services of the
device
+
+inventory:
+ One Service will be created
diff --git a/checks/apc_sts_source b/checks/apc_sts_source
new file mode 100644
index 0000000..d90517f
--- /dev/null
+++ b/checks/apc_sts_source
@@ -0,0 +1,57 @@
+#!/usr/bin/python
+# -*- encoding: utf-8; py-indent-offset: 4 -*-
+# +------------------------------------------------------------------+
+# | ____ _ _ __ __ _ __ |
+# | / ___| |__ ___ ___| | __ | \/ | |/ / |
+# | | | | '_ \ / _ \/ __| |/ / | |\/| | ' / |
+# | | |___| | | | __/ (__| < | | | | . \ |
+# | \____|_| |_|\___|\___|_|\_\___|_| |_|_|\_\ |
+# | |
+# | 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.
+
+# .1.3.6.1.4.1.705.2.3.5.0 2 --> MG-SNMP-STS-MIB::stsmgSource1Used.0
+# .1.3.6.1.4.1.705.2.4.5.0 1 --> MG-SNMP-STS-MIB::stsmgSource2Used.0
+
+
+def inventory_apc_sts_source(info):
+ return [ (None, { "source1" : info[0][0], "source2" : info[0][1]
} )]
+
+def check_apc_sts_source(_not_item, params, info):
+ states = {
+ "1" : "in use",
+ "2" : "not used",
+ }
+ sources = {}
+ sources["source1"], sources["source2"] = info[0]
+ for name, what in [("Source 1" , 'source1'), ("Source 2"
, 'source2')]:
+ state = 0
+ infotext = "%s: %s" % (name, states[sources[what]])
+ if params[what] != sources[what]:
+ state = 1
+ infotext += " (State has changed)"
+ yield state, infotext
+
+
+check_info["apc_sts_source"] = {
+ 'inventory_function' : inventory_apc_sts_source,
+ 'check_function' : check_apc_sts_source,
+ 'service_description' : 'Source',
+ "snmp_scan_function" : lambda oid: ".1.3.6.1.4.1.705.2.2"
in oid(".1.3.6.1.2.1.1.2.0"),
+ "snmp_info" : ( ".1.3.6.1.4.1.705.2", [
"3.5", "4.5" ] ),
+}
+