Module: check_mk
Branch: master
Commit: 5d1e481d42c8d0785b70b99fe14201c47821a06c
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=5d1e481d42c8d0…
Author: Florian Heigl <fh(a)mathias-kettner.de>
Date: Wed Jun 27 14:25:23 2012 +0200
Checks/aix_multipath Do no longer monitor SAS enclosures. Tried, caused issues.
---
checkman/aix_multipath | 3 ++-
checks/aix_multipath | 6 +++++-
2 files changed, 7 insertions(+), 2 deletions(-)
diff --git a/checkman/aix_multipath b/checkman/aix_multipath
index cc871e5..4578402 100644
--- a/checkman/aix_multipath
+++ b/checkman/aix_multipath
@@ -18,5 +18,6 @@ item:
inventory:
One service is created for each LUN that is reported by
- the lspath utility.
+ the lspath utility. Devices that do not start with {"hdisk"}
+ are not included in inventory.
diff --git a/checks/aix_multipath b/checks/aix_multipath
index d13eb94..3a8a6eb 100644
--- a/checks/aix_multipath
+++ b/checks/aix_multipath
@@ -34,7 +34,11 @@
def inventory_aix_multipath(info):
disks = {}
for disk, controller, status in info:
- disks[disk] = disks.get(disk, 0) + 1
+ # filtering here to only see disks. there are other multipath devices,
+ # too, but those have incomplete status => false positives
+ if disk.startswith("hdisk"):
+ disks[disk] = disks.get(disk, 0) + 1
+ print disks
return [(disk, {'paths' : disks[disk]}) for disk in disks.keys()]
def check_aix_multipath(item, params, info):
Module: check_mk
Branch: master
Commit: 2ba2cc676d47067e059cc2bd653f4ed541f58ffd
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=2ba2cc676d4706…
Author: Mathias Kettner <mk(a)mathias-kettner.de>
Date: Wed Jun 27 14:06:03 2012 +0200
Restored ASM diskgroup check (where is the agent?)
---
checks/oracle_asm_diskgroup | 50 +++++++++++++++++++++++++++++++++++++++++++
1 files changed, 50 insertions(+), 0 deletions(-)
diff --git a/checks/oracle_asm_diskgroup b/checks/oracle_asm_diskgroup
new file mode 100644
index 0000000..ec08299
--- /dev/null
+++ b/checks/oracle_asm_diskgroup
@@ -0,0 +1,50 @@
+#!/usr/bin/python
+# -*- encoding: utf-8; py-indent-offset: 4 -*-
+# +------------------------------------------------------------------+
+# | ____ _ _ __ __ _ __ |
+# | / ___| |__ ___ ___| | __ | \/ | |/ / |
+# | | | | '_ \ / _ \/ __| |/ / | |\/| | ' / |
+# | | |___| | | | __/ (__| < | | | | . \ |
+# | \____|_| |_|\___|\___|_|\_\___|_| |_|_|\_\ |
+# | |
+# | Copyright Mathias Kettner 2012 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.
+
+# Example output from asmcmd lsdg:
+# State Type Rebal Sector Block AU Total_MB Free_MB Req_mir_free_MB Usable_file_MB Offline_disks Voting_files Name
+# MOUNTED NORMAL N 512 4096 1048576 512000 92888 0 46444 0 N DATA/
+# MOUNTED NORMAL N 512 4096 1048576 3072 2146 309 918 0 Y OCR_VOTE/
+# The agent section <<<oracle_asm_diskgroup>>> does not output the header line
+
+check_includes['oracle_asm_diskgroup'] = [ "df.include" ]
+
+def inventory_oracle_asm_diskgroup(info):
+ return [ (line[-1].rstrip("/"), {}) for line in info ]
+
+def check_oracle_asm_diskgroup(item, params, info):
+
+ for state, typ, rebal, sector, block, au, total_mb, \
+ free_mb, req_mir_free_mb, usable_file_mb, offline_disks, \
+ voting_files, name in info:
+ if name.rstrip('/') == item:
+ return df_check_filesystem(g_hostname, item, int(total_mb),
+ int(free_mb), params)
+ return (3, "UNKNOWN - Disk group not found")
+
+check_info["oracle_asm_diskgroup"] = (check_oracle_asm_diskgroup, "ASM Diskgroup %s", 1, inventory_oracle_asm_diskgroup)
+checkgroup_of['oracle_asm_diskgroup'] = "fs"
+check_default_levels["oracle_asm_diskgroup"] = "filesystem_default_levels"
Module: check_mk
Branch: master
Commit: 1a0f602c6d36bbec8107a0a3f647e19fbc6b16c5
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=1a0f602c6d36bb…
Author: Mathias Kettner <mk(a)mathias-kettner.de>
Date: Wed Jun 27 09:31:35 2012 +0200
Updated ChangeLog
---
ChangeLog | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 1662c56..73175c1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -21,9 +21,9 @@
for explicitely listing SIDs to monitor
* mk_logwatch on Linux: new options regex and iregex for file selection
* remove obsolete ORACLE checks where no agent plugins where available
- * printer_supply: Fix problem on DELL printers with "S/N" in output
+ * FIX: printer_supply: Fix problem on DELL printers with "S/N" in output
(thanks to Sebastian Talmon)
- * winperf_phydisk: Fix typo (lead to WATO rule not being applied)
+ * FIX: winperf_phydisk: Fix typo (lead to WATO rule not being applied)
Multisite:
* Show number of rows and number of selected rows in header line
Module: check_mk
Branch: master
Commit: 941d0409a4f09bc4e9992006c5c1c99b6221e6ef
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=941d0409a4f09b…
Author: Mathias Kettner <mk(a)mathias-kettner.de>
Date: Wed Jun 27 09:30:16 2012 +0200
printer_supply: Fix problem on DELL printers with "S/N" in output
---
ChangeLog | 2 ++
checks/printer_supply | 4 ++++
2 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 5f2eb05..90a4c31 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -21,6 +21,8 @@
for explicitely listing SIDs to monitor
* mk_logwatch on Linux: new options regex and iregex for file selection
* remove obsolete ORACLE checks where no agent plugins where available
+ * printer_supply: Fix problem on DELL printers with "S/N" in output
+ (thanks to Sebastian Talmon)
Multisite:
* Show number of rows and number of selected rows in header line
diff --git a/checks/printer_supply b/checks/printer_supply
index 974d4e9..cb73800 100644
--- a/checks/printer_supply
+++ b/checks/printer_supply
@@ -59,6 +59,8 @@ printer_supply_some_remaining_status = 1
# Workaround for toners and drum units in c5900 devices
# which have equal names for the single parts.
# Add the color description to that item
+# Fix name for toners in DELL devices that have serial
+# numbers in item name
def printer_supply_fix_infos(info):
colors = []
new_info = []
@@ -72,6 +74,8 @@ def printer_supply_fix_infos(info):
elif line[3] == '':
color = colors[index - len(colors)]
line_0 = '%s %s' % (color.title(), line_0)
+ if " S/N:" in line_0:
+ line_0 = line_0[:line_0.find(" S/N:")]
new_info.append([line_0] + line[1:])
return new_info
Module: check_mk
Branch: master
Commit: 1d01ea40aed9024ddbb0079ef460fe9478e22291
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=1d01ea40aed902…
Author: Bastian Kuhn <bk(a)mathias-kettner.de>
Date: Tue Jun 26 20:55:47 2012 +0200
Added simple apc powerswitch check, no config yet
---
checks/apc_powerswitch | 50 ++++++++++++++++++++++++++++++++++++++++++++++++
1 files changed, 50 insertions(+), 0 deletions(-)
diff --git a/checks/apc_powerswitch b/checks/apc_powerswitch
new file mode 100644
index 0000000..c5298d3
--- /dev/null
+++ b/checks/apc_powerswitch
@@ -0,0 +1,50 @@
+#!/usr/bin/python
+# -*- encoding: utf-8; py-indent-offset: 4 -*-
+# +------------------------------------------------------------------+
+# | ____ _ _ __ __ _ __ |
+# | / ___| |__ ___ ___| | __ | \/ | |/ / |
+# | | | | '_ \ / _ \/ __| |/ / | |\/| | ' / |
+# | | |___| | | | __/ (__| < | | | | . \ |
+# | \____|_| |_|\___|\___|_|\_\___|_| |_|_|\_\ |
+# | |
+# | Copyright Mathias Kettner 2012 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 inventory_apc_powerswitch(info):
+ return [(x[0],saveint(line[2])) for x in info]
+
+def check_apc_powerswitch(item, params, info):
+ state = {
+ 1 : 'on',
+ 2 : 'off',
+ }
+ for line in info:
+ if line[0] == item:
+ return(0, 'OK - Port %s has status %s' % (line[1], state[saveint(line[2])]))
+
+ return False
+
+
+
+check_info['apc_powerswitch'] = {
+ 'check_function' : check_apc_powerswitch,
+ 'inventory_function' : inventory_apc_powerswitch,
+ 'snmp_scan_function' : lambda oid: oid(".1.3.6.1.2.1.1.2.0").startswith(".1.3.6.1.4.1.318.1.3.4.5"),
+ 'service_description' : 'Power Outlet Port %s',
+ 'snmp_info' : ( '.1.3.6.1.4.1.318.1.1.12.3.5.1.1', [1, 2, 4] ),
+}