Module: check_mk
Branch: master
Commit: 4e4ee943818d0f4e9b8e60d1078503aead097ed2
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=4e4ee943818d0f…
Author: Goetz Golla <gg(a)mathias-kettner.de>
Date: Thu Aug 28 15:39:27 2014 +0200
better way to identified down or disabled nodes
---
checkman/f5_bigip_pool | 13 ++++++-------
checks/f5_bigip_pool | 16 +++++++++-------
2 files changed, 15 insertions(+), 14 deletions(-)
diff --git a/checkman/f5_bigip_pool b/checkman/f5_bigip_pool
index d20cea3..0a95867 100644
--- a/checkman/f5_bigip_pool
+++ b/checkman/f5_bigip_pool
@@ -13,8 +13,10 @@ description:
It supports devices running the 9.0 and above releases of the F5 OS. It's
tested against 9.3 devices.
- If there are down nodes, the names of the nodes are also printed in the
- service output.
+ If there are down or disabled nodes, the names of the nodes are
+ also printed in the service output. They are identified using the
+ following oids: ltmPoolMemberMonitorState, ltmPoolMemberMonitorStatus,
+ ltmPoolMemberSessionStatus
examples:
# Let the Pool named ABC on your first F5 be in WARNING state when it reaches 5 active members or in CRITICAL for anything between 3 and 0.
@@ -28,12 +30,9 @@ inventory:
non-enabled ones, as this is considered a temporary state.
[parameters]
-warning (int): issue a warning if there are less than warn members left in
-a load balancing pool
+warning (int): issue a warning if there are less than warn members left in a load balancing pool
-crit (int): go to critical state if there are less than crit members left
-in a load balancing pool. Note: 0 active members will always result in a
-critical state.
+crit (int): go to critical state if there are less than crit members left in a load balancing pool. Note: 0 active members will always result in a critical state.
[configuration]
f5_bigip_pool_default_levels = (int, int): The default levels for all F5 BIG-IP pool checks. This is preset to {(2, 1)}.
diff --git a/checks/f5_bigip_pool b/checks/f5_bigip_pool
index 9a4367a..be35327 100644
--- a/checks/f5_bigip_pool
+++ b/checks/f5_bigip_pool
@@ -46,14 +46,14 @@ def inventory_f5_bigip_pool(checkname,info):
def f5_bigip_pool_get_down_members(info, item):
downs = []
- if len(info) < 2:
+ if len(info) < 2: # no data for pool members
return
for line in info[1]:
- if line[0] == item and line[2] != '4':
- if re.match("\/\S*\/\S*", line[3]):
- host = line[3].split("/")[2]
+ if line[0] == item and (line[2] != '4' or line[3] != '4' or line[4] in ('2', '3', '4', '5' )):
+ if re.match("\/\S*\/\S*", line[5]):
+ host = line[5].split("/")[2]
else:
- host = line[3]
+ host = line[5]
downs.append(host+":"+line[1])
return downs
@@ -76,7 +76,7 @@ def check_f5_bigip_pool(item, params, info):
if pool_act_members < pool_def_members:
downs = f5_bigip_pool_get_down_members(info, item)
- message += ", down nodes: %s" % ", ".join(downs)
+ message += ", down/disabled nodes: %s" % ", ".join(downs)
return state, message
return 3, "unexpected Output from SNMP Agent"
@@ -95,7 +95,9 @@ check_info["f5_bigip_pool"] = {
('.1.3.6.1.4.1.3375.2.2.5.3.2.1', [
1, # ltmPoolMemberPoolName
4, # ltmPoolMemberPort
- 10, # ltmPoolMemberState
+ 10, # ltmPoolMemberMonitorState
+ 11, # ltmPoolMemberMonitorStatus
+ 13, # ltmPoolMemberSessionStatus
19, # ltmPoolMemberNodeName
]),
],
Module: check_mk
Branch: master
Commit: 2d163c343edbddcaeceef01739f78b2bd61c8e46
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=2d163c343edbdd…
Author: Mathias Kettner <mk(a)mathias-kettner.de>
Date: Thu Aug 28 14:37:44 2014 +0200
#1148 Allow execution of actions when cancelling events
The Event Console now allows to attach actions to the cancelling of
events. This can for example be helpful if you have an action that opens a
trouble ticket in an external system. When a cancelling event arrives you
can have executed an action that also cancels the according trouble ticket.
When events are cancelled then several data fields of the event are being
replaced with data from the new event before the action is being executed. That
way relevant data from the new event is available in the action script. Also
the event phase is being set to <tt>closed</tt> and the state is set to
0 (OK). That way your action script can distinguish between a normal
and a cancelling situation.
The following fields are taken from the new (i.e. cancelling) event:
<ul>
<li>The text</li>
<li>The time</li>
<li>The time of the last occurance</li>
<li>The syslog priority</li>
</ul>
All other fields are unchanged - including the original ID of the cancelled
event.
---
.werks/1148 | 31 ++++++++++++++++++++
ChangeLog | 3 +-
mkeventd/bin/mkeventd | 52 ++++++++++++++++++++++++++-------
mkeventd/web/htdocs/mkeventd.py | 1 +
mkeventd/web/plugins/wato/mkeventd.py | 11 +++++--
5 files changed, 84 insertions(+), 14 deletions(-)
Diff: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commitdiff;h=2d163c343e…
Module: check_mk
Branch: master
Commit: 90fc0fe529c94b4df60e13b0fadcd80ae9ef3460
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=90fc0fe529c94b…
Author: Andreas Boesl <ab(a)mathias-kettner.de>
Date: Thu Aug 28 13:36:33 2014 +0200
improved werk formatting
---
.werks/1103 | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.werks/1103 b/.werks/1103
index 7eb4138..032252a 100644
--- a/.werks/1103
+++ b/.werks/1103
@@ -7,7 +7,7 @@ Date: 1409224883
Class: feature
You can now configure whether the context of the logfiles should be
-sent too, if a ok/warn/crit logline was detected within the logfile.<br>
+sent too, if a ok/warn/crit logline was detected within the logfile.
The context includes lines starting with '.' (default context) or 'I' (ignored lines).
Module: check_mk
Branch: master
Commit: 507783ef6b8b7c425d037f45511e25b0833ab735
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=507783ef6b8b7c…
Author: Andreas Boesl <ab(a)mathias-kettner.de>
Date: Thu Aug 28 13:34:50 2014 +0200
updated werk text
---
.werks/1103 | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/.werks/1103 b/.werks/1103
index b1a1e7b..7eb4138 100644
--- a/.werks/1103
+++ b/.werks/1103
@@ -6,4 +6,21 @@ Version: 1.2.5i6
Date: 1409224883
Class: feature
+You can now configure whether the context of the logfiles should be
+sent too, if a ok/warn/crit logline was detected within the logfile.<br>
+The context includes lines starting with '.' (default context) or 'I' (ignored lines).
+
+A new option <tt>nocontext</tt> has been introduced for the logfiles section in the <tt>check_mk.ini</tt> file.
+
+F+:check_mk.ini
+[logfiles]
+# The following textfile will not report any context info (nocontext option)
+textfile = nocontext C:\tmp\memo.udf
+# Set patterns for defined textfile
+warn = *overdue*
+ok = *mail sent*
+F-:
+
+If you simply prepend the parameter <tt>nocontext</tt> to the actual path (or path pattern),
+all files matching this pattern will exclude any context info.
Module: check_mk
Branch: master
Commit: 672051b3fcfa9c1e3dc425cec293d56720649076
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=672051b3fcfa9c…
Author: Andreas Boesl <ab(a)mathias-kettner.de>
Date: Thu Aug 28 09:55:40 2014 +0200
#1102 FIX esx_vsphere_counters: now raise a MKCounterWrapped exception if counter data is missing
Sometimes the ESX Host does not report valid counter ids.<br>
It may look like <br>
<pre>
<id>
<counterId>-2147483645</counterId>
<instance>84</instance>
</id>
<pre>
If this happens the <tt><<<esx_vsphere_counters>>></tt> section in the agent is empty.
Any checks which relied on this section are now able to handle this scenario by raising a MKCounterWrappedException.
Therefore these checks will no longer go UNKNOWN, but stale...
---
.werks/1102 | 21 +++++++++++++++++++++
ChangeLog | 1 +
checks/esx_vsphere_counters | 11 ++++++++++-
3 files changed, 32 insertions(+), 1 deletion(-)
diff --git a/.werks/1102 b/.werks/1102
new file mode 100644
index 0000000..3c24245
--- /dev/null
+++ b/.werks/1102
@@ -0,0 +1,21 @@
+Title: esx_vsphere_counters: now raise a MKCounterWrapped exception if counter data is missing
+Level: 1
+Component: checks
+Compatible: compat
+Version: 1.2.5i6
+Date: 1409212163
+Class: fix
+
+Sometimes the ESX Host does not report valid counter ids.<br>
+It may look like <br>
+
+<pre>
+<id>
+ <counterId>-2147483645</counterId>
+ <instance>84</instance>
+</id>
+<pre>
+
+If this happens the <tt><<<esx_vsphere_counters>>></tt> section in the agent is empty.
+Any checks which relied on this section are now able to handle this scenario by raising a MKCounterWrappedException.
+Therefore these checks will no longer go UNKNOWN, but stale...
diff --git a/ChangeLog b/ChangeLog
index d7975a8..86d761b 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -62,6 +62,7 @@
* 1099 FIX: tsm_scratch: now returns the variable name instead the values during inventory...
* 0650 FIX: f5_bigip_pool: limits to the number of active nodes are now correctly applied...
NOTE: Please refer to the migration notes!
+ * 1102 FIX: esx_vsphere_counters: now raise a MKCounterWrapped exception if counter data is missing...
Multisite:
* 1066 Implemented Dashboard Designer...
diff --git a/checks/esx_vsphere_counters b/checks/esx_vsphere_counters
index 641a420..70564dc 100644
--- a/checks/esx_vsphere_counters
+++ b/checks/esx_vsphere_counters
@@ -76,7 +76,7 @@ def inventory_esx_vsphere_counters_diskio(info):
def check_esx_vsphere_counters_diskio(_no_item, _no_params, info):
if not info:
- return 3, "Counter data is missing"
+ raise MKCounterWrapped(None, "Counter data is missing")
read_bytes = 0
write_bytes = 0
@@ -236,6 +236,9 @@ def inventory_esx_vsphere_counters_if(info):
return inventory_if_common(converted)
def check_esx_vsphere_counters_if(item, params, info):
+ if not info:
+ raise MKCounterWrapped(None, "Counter data is missing")
+
converted = convert_esx_counters_if(info)
return check_if_common(item, params, converted)
@@ -265,6 +268,9 @@ def inventory_esx_vsphere_counters_uptime(info):
return [ (None, {}) ]
def check_esx_vsphere_counters_uptime(_no_item, params, info):
+ if not info:
+ raise MKCounterWrapped(None, "Counter data is missing")
+
for name, instance, counter, unit in info:
if name == "sys.uptime":
return check_uptime_seconds(params, int(counter))
@@ -314,6 +320,9 @@ def inventory_esx_vsphere_counters_ramdisk(info):
return df_inventory(ramdisks)
def check_esx_vsphere_counters_ramdisk(item, params, info):
+ if not info:
+ raise MKCounterWrapped(None, "Counter data is missing")
+
ramdisks = []
for name, instance, counter, unit in info:
if name == 'sys.resourceMemConsumed' \