Module: check_mk
Branch: master
Commit: 0b4ad215f51ca5861270e7f1cc102e8b1d2609de
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=0b4ad215f51ca5…
Author: Sven Panne <sp(a)mathias-kettner.de>
Date: Thu Aug 18 11:29:47 2016 +0200
3646 FIX Fixed Livestatus output formats
All Livestatus output formats handle special characters correctly now, including
non-ASCII characters, quotes, and backslashes.
There is one exception: To avoid compatibility problems, the default
<tt>csv</tt> format has been left unchanged and is still broken. A new format
<tt>CSV</tt> (note the uppercase) has been added which is fully functional and
therefore ignores the <tt>Separators:</tt> header/hack.
Furthermore, a new <tt>python3</tt> format has been added to handle the changed
default string type in Python 3, where bytestrings and Unicode strings have
basically swapped their roles.
---
.werks/3646 | 21 +++++++++++++++++++++
ChangeLog | 1 +
2 files changed, 22 insertions(+)
diff --git a/.werks/3646 b/.werks/3646
new file mode 100644
index 0000000..aa1656f
--- /dev/null
+++ b/.werks/3646
@@ -0,0 +1,21 @@
+Title: Fixed Livestatus output formats
+Level: 2
+Component: livestatus
+Compatible: compat
+Version: 1.4.0i1
+Date: 1471512556
+Class: fix
+
+All Livestatus output formats handle special characters correctly now, including
+non-ASCII characters, quotes, and backslashes.
+
+There is one exception: To avoid compatibility problems, the default
+<tt>csv</tt> format has been left unchanged and is still broken. A new format
+<tt>CSV</tt> (note the uppercase) has been added which is fully functional and
+therefore ignores the <tt>Separators:</tt> header/hack.
+
+Furthermore, a new <tt>python3</tt> format has been added to handle the changed
+default string type in Python 3, where bytestrings and Unicode strings have
+basically swapped their roles.
+
+
diff --git a/ChangeLog b/ChangeLog
index d4dced7..4c3a97d 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -612,6 +612,7 @@
* 3644 Fixed 'source' column in 'comments' table.
* 3233 FIX: Fixed shutdown of Nagios core with Livestatus module...
* 3235 FIX: Unbreak COMMAND handling...
+ * 3646 FIX: Fixed Livestatus output formats...
HW/SW-Inventory:
* 3192 snmp_extended_info: now inventorizes all physical components of devices which support the ENTITY-MIB
Module: check_mk
Branch: master
Commit: 0f09c008631693c0e7e647f5a51ab04b0483218b
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=0f09c008631693…
Author: Simon Betz <si(a)mathias-kettner.de>
Date: Thu Aug 18 08:22:16 2016 +0200
3775 fjdarye500_pfm: new check which monitors health status and lifetime of PCIe flash modules of Eternus DX500 storage systems
---
.werks/3775 | 9 ++++
ChangeLog | 1 +
checkman/fjdarye500_pfm | 18 +++++++
checks/fjdarye500_pfm | 95 ++++++++++++++++++++++++++++++++++
web/plugins/wato/check_parameters.py | 24 +++++++++
5 files changed, 147 insertions(+)
diff --git a/.werks/3775 b/.werks/3775
new file mode 100644
index 0000000..35a71e6
--- /dev/null
+++ b/.werks/3775
@@ -0,0 +1,9 @@
+Title: fjdarye500_pfm: new check which monitors health status and lifetime of PCIe flash modules of Eternus DX500 storage systems
+Level: 1
+Component: checks
+Compatible: compat
+Version: 1.4.0i1
+Date: 1471501222
+Class: feature
+
+
diff --git a/ChangeLog b/ChangeLog
index 9799019..d4dced7 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -127,6 +127,7 @@
* 3783 netapp_api_qtree_quota: new check to monitor disk usage of qtrees
* 3784 agent_netapp / 7mode: now also reports snapsvaults for the default filer...
* 3832 diskstat: added new device bcache
+ * 3775 fjdarye500_pfm: new check which monitors health status and lifetime of PCIe flash modules of Eternus DX500 storage systems
* 3073 FIX: windows agent: relative paths to mrpe scripts are now treated as relative to the agent installation directory...
* 3061 FIX: mk_jolokia: Fixed debugging of the agent plugin
* 3074 FIX: windows agent: fixed incorrect values for 32-bit performance counters
diff --git a/checkman/fjdarye500_pfm b/checkman/fjdarye500_pfm
new file mode 100644
index 0000000..04ad31c
--- /dev/null
+++ b/checkman/fjdarye500_pfm
@@ -0,0 +1,18 @@
+title: Fujitsu ETERNUS DX500 storage systems: Status of PCIeflash modules
+agents: snmp
+catalog: hw/storagehw/fujitsu
+license: GPL
+distribution: check_mk
+description:
+ This check monitors the status and health lifetime in percent of all installed
+ PCI flash modules in storage systems from Fujitsu which support the FJDARY-E150
+ MIB.
+
+ Default lower levels of health lifetime are 20, 15 percent. These levels are
+ configurable.
+
+item:
+ The flash module identifier.
+
+inventory:
+ One service per module is created.
diff --git a/checks/fjdarye500_pfm b/checks/fjdarye500_pfm
new file mode 100644
index 0000000..d4436fc
--- /dev/null
+++ b/checks/fjdarye500_pfm
@@ -0,0 +1,95 @@
+#!/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-
+# tails. 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.211.1.21.1.150.2.22.2.1.2.0 1996492800
+# .1.3.6.1.4.1.211.1.21.1.150.2.22.2.1.2.1 1996492801
+# .1.3.6.1.4.1.211.1.21.1.150.2.22.2.1.3.0 1
+# .1.3.6.1.4.1.211.1.21.1.150.2.22.2.1.3.1 4
+# .1.3.6.1.4.1.211.1.21.1.150.2.22.2.1.5.0 49
+# .1.3.6.1.4.1.211.1.21.1.150.2.22.2.1.5.1 -1
+
+
+factory_settings["fjdarye500_pfm_default_levels"] = {
+ "health_lifetime_perc" : (20.0, 15.0)
+}
+
+
+def inventory_fjdarye500_pfm(info):
+ return [ (pfm_id, {}) for pfm_id, status, health_lifetime_str in info
+ if status != "4" ]
+
+
+def check_fjdarye500_pfm(item, params, info):
+ map_states = {
+ "1" : (0, "normal"),
+ "2" : (2, "alarm"),
+ "3" : (1, "warning"),
+ "4" : (2, "invalid"),
+ "5" : (0, "maintenance"),
+ "6" : (3, "undefined"),
+ }
+
+ for pfm_id, status, health_lifetime_str in info:
+ if item == pfm_id:
+ state, state_readable = map_states[status]
+ yield state, "Status: %s" % state_readable
+
+ health_lifetime = int(health_lifetime_str)
+ state = 0
+ if health_lifetime < 0:
+ health_info = "cannot be obtained"
+
+ else:
+ health_info = get_percent_human_readable(health_lifetime)
+ warn, crit = params["health_lifetime_perc"]
+
+ if health_lifetime < crit:
+ state = 2
+ elif health_lifetime < warn:
+ state = 1
+
+ if state:
+ health_info += " (warn/crit below %s/%s)" % \
+ (get_percent_human_readable(warn),
+ get_percent_human_readable(crit))
+
+ yield state, "Health lifetime: %s" % health_info
+
+
+check_info['fjdarye500_pfm'] = {
+ 'inventory_function' : inventory_fjdarye500_pfm,
+ 'check_function' : check_fjdarye500_pfm,
+ 'service_description' : 'PCIe flash module %s',
+ 'snmp_info' : ('.1.3.6.1.4.1.211.1.21.1.150.2.22.2.1', [
+ '2', # FJDARY-E150::fjdaryPfmItemId
+ '3', # FJDARY-E150::fjdaryPfmStatus
+ '5', # FJDARY-E150::fjdaryPfmHealth
+ ]),
+ 'snmp_scan_function' : lambda oid: oid(".1.3.6.1.2.1.1.2.0") == ".1.3.6.1.4.1.211.1.21.1.150",
+ 'default_levels_variable' : "fjdarye500_pfm_default_levels",
+ 'group' : "pfm_health",
+}
diff --git a/web/plugins/wato/check_parameters.py b/web/plugins/wato/check_parameters.py
index 573cdc0..3860b6f 100644
--- a/web/plugins/wato/check_parameters.py
+++ b/web/plugins/wato/check_parameters.py
@@ -9164,6 +9164,30 @@ register_check_parameters(
)
register_check_parameters(
+ subgroup_storage,
+ "pfm_health",
+ _("PCIe flash module"),
+ Dictionary(
+ elements = [
+ ( "health_lifetime_perc",
+ Tuple(
+ title = _("Lower levels for health lifetime"),
+ elements = [
+ Percentage(title = _("Warning if below"), default_value = 10),
+ Percentage(title = _("Critical if below"), default_value = 5)
+ ],
+ ),
+ ),
+ ],
+ ),
+ TextAscii(
+ title = _("Number or ID of the disk"),
+ help = _("How the disks are named depends on the type of hardware being "
+ "used. Please look at already discovered checks for examples.")),
+ "dict"
+)
+
+register_check_parameters(
subgroup_environment,
"switch_contact",
_("Switch contact state"),
Module: check_mk
Branch: master
Commit: 0b91264ca5bed58d54d5654d89cfda3a927fc076
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=0b91264ca5bed5…
Author: Sven Rueß <sr(a)mathias-kettner.de>
Date: Wed Aug 17 19:27:51 2016 +0200
New bug with input field of hostnames
---
.bugs/2519 | 10 ++++++++++
1 file changed, 10 insertions(+)
diff --git a/.bugs/2519 b/.bugs/2519
new file mode 100644
index 0000000..1f7b49c
--- /dev/null
+++ b/.bugs/2519
@@ -0,0 +1,10 @@
+Title: Input field of hostname is not a regex input field in configuration rules
+Component: wato
+State: open
+Date: 2016-08-17 19:23:41
+Targetversion: 1.2.8
+Class: bug
+
+If you create a new rule in WATO for configuration and want to use regex to match hostnames you have to add
+the ~(tilde) in front of the hostname to get regex matching.
+This inout field should be a regex input field as default.
Module: check_mk
Branch: master
Commit: c8f4044b6fb3fd9c0e3b91519a3b7e6e45237224
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=c8f4044b6fb3fd…
Author: Sven Rueß <sr(a)mathias-kettner.de>
Date: Wed Aug 17 14:03:10 2016 +0200
Added one bug and one ToDo
---
.bugs/2517 | 13 +++++++++++++
.bugs/2518 | 14 ++++++++++++++
2 files changed, 27 insertions(+)
diff --git a/.bugs/2517 b/.bugs/2517
new file mode 100644
index 0000000..56413c9
--- /dev/null
+++ b/.bugs/2517
@@ -0,0 +1,13 @@
+Title: Migration from Ubuntu to RedHat with omd backup failed
+Component: multisite
+State: open
+Date: 2016-08-17 13:54:17
+Targetversion: 1.2.8
+Class: bug
+
+If you create a backup of an existing site with omd backup on a Ubuntu server and do a restore
+on a RedHat machine with omd restore, then the site will not be startet. Apache configuration is
+wrong, because during the restore the lokale Apache configuration is not reset to system default file.
+
+Workaround:
+Replace the include section of modules with default section of another site.
diff --git a/.bugs/2518 b/.bugs/2518
new file mode 100644
index 0000000..02b7d94
--- /dev/null
+++ b/.bugs/2518
@@ -0,0 +1,14 @@
+Title: Add sitename on the site header after username
+Component: multisite
+State: open
+Date: 2016-08-17 13:58:55
+Targetversion: 1.2.9
+Class: todo
+
+Add the sitename on the right of the username at the site header. That will display the admin
+on which site he is working.
+
+Example:
+omdadmin (Test) @ prod, time
+
+It will be also helpful to have the sitename on login page available.