Module: check_mk
Branch: master
Commit: f8c65a40e06adb52774fdcce3abfbeb3ed7ff146
URL:
http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=f8c65a40e06adb…
Author: Lars Michelsen <lm(a)mathias-kettner.de>
Date: Fri Nov 6 11:08:15 2015 +0100
#2725 FIX Dynamic levels: Enforce config of levels for filesystems larger than 0 bytes
When configuring dynamic levels, e.g. for filesystems, if you configure the dynamic
levels
for example like this:
larger than 100GB: 90% WARN / 95% CRIT
larger than 1TB: 95% WARN / 98% CRIT
This will result in all filesystems smaller than 100GB in always being OK. This was
confusing
users. The validation of these rules has now been changed to enforce creation of an entry
for filesystems larger than 0 bytes.
---
.werks/2725 | 18 ++++++++++++++++++
ChangeLog | 1 +
web/plugins/wato/check_parameters.py | 8 ++++++++
3 files changed, 27 insertions(+)
diff --git a/.werks/2725 b/.werks/2725
new file mode 100644
index 0000000..d01d383
--- /dev/null
+++ b/.werks/2725
@@ -0,0 +1,18 @@
+Title: Dynamic levels: Enforce config of levels for filesystems larger than 0 bytes
+Level: 1
+Component: checks
+Class: fix
+Compatible: compat
+State: unknown
+Version: 1.2.7i4
+Date: 1446804337
+
+When configuring dynamic levels, e.g. for filesystems, if you configure the dynamic
levels
+for example like this:
+
+larger than 100GB: 90% WARN / 95% CRIT
+larger than 1TB: 95% WARN / 98% CRIT
+
+This will result in all filesystems smaller than 100GB in always being OK. This was
confusing
+users. The validation of these rules has now been changed to enforce creation of an
entry
+for filesystems larger than 0 bytes.
diff --git a/ChangeLog b/ChangeLog
index 4bfb9c6..b3d6d35 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -49,6 +49,7 @@
* 2735 FIX: esx_vsphere_datastores: fix labelling, help and performance data of
provisioned space...
* 2737 FIX: bluecoat_sensors: fix crash when using Nagios as core (missing
include)...
* 2738 FIX: Check_MK Caching agent on Linux: introduce timeout for lock...
+ * 2725 FIX: Dynamic levels: Enforce config of levels for filesystems larger than 0
bytes...
Multisite:
* 2684 Added icons for downloading agent data / walks of hosts...
diff --git a/web/plugins/wato/check_parameters.py b/web/plugins/wato/check_parameters.py
index 62c5e79..6e938b5 100644
--- a/web/plugins/wato/check_parameters.py
+++ b/web/plugins/wato/check_parameters.py
@@ -2780,8 +2780,14 @@ def get_free_used_dynamic_valuespec(what, name, default_value =
(80.0, 90.0)):
)
]
+ def validate_dynamic_levels(value, varprefix):
+ if not [ v for v in value if v[0] == 0 ]:
+ raise MKUserError(varprefix, _("You need to specify levels for "
+ "%ss larger than 0 bytes." % name))
+
return Alternative(
title = _("Levels for %s %s") % (name, title),
+ style = "dropdown",
show_alternative_title = True,
default_value = default_value,
elements = vs_subgroup + [
@@ -2796,6 +2802,8 @@ def get_free_used_dynamic_valuespec(what, name, default_value =
(80.0, 90.0)):
]
),
title = _('Dynamic levels'),
+ allow_empty = False,
+ validate = validate_dynamic_levels,
)],
)