Module: check_mk
Branch: master
Commit: 98ecc01c1ce146273aa31c48d9bd07fc20e9e1d3
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=98ecc01c1ce146…
Author: Florian Heigl <fh(a)mathias-kettner.de>
Date: Fri Sep 14 14:37:53 2012 +0200
Check Manpage for jolokia_metrics.app_state
---
checkman/jolokia_metrics.app_state | 22 ++++++++++++++++++++++
1 files changed, 22 insertions(+), 0 deletions(-)
diff --git a/checkman/jolokia_metrics.app_state b/checkman/jolokia_metrics.app_state
new file mode 100644
index 0000000..c0a6247
--- /dev/null
+++ b/checkman/jolokia_metrics.app_state
@@ -0,0 +1,22 @@
+title: State of JVM applications
+agents: linux
+author: Mathias Kettner <mk(a)mathias-kettner.de>
+license: GPL
+distribution: check_mk
+description:
+ This check allows to monitor the state of a single application running on a JVM (i.e. /host-manager or /my-web-app)
+
+ To use this plugin, Jolokia and the agent plugin need to be installed
+ on the monitored server.
+
+ The check will return {OK} if the application is found running, or
+ {CRIT} if it is stopped.
+
+item:
+ The name of the application server instance as configured by the agent
+ followed by the name of the application. I.e. tomcat7 /examples
+
+
+inventory:
+ One check is created for each application running inside an Jolokia
+ instance sent by the agent.
Module: check_mk
Branch: master
Commit: 2603ab93998702ebc5db1dfd4fd55de5dd47923e
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=2603ab93998702…
Author: Florian Heigl <fh(a)mathias-kettner.de>
Date: Fri Sep 14 14:12:56 2012 +0200
Added manpage for jolokia_metrics.threads
---
checkman/jolokia_metrics.threads | 38 ++++++++++++++++++++++++++++++++++++++
1 files changed, 38 insertions(+), 0 deletions(-)
diff --git a/checkman/jolokia_metrics.threads b/checkman/jolokia_metrics.threads
new file mode 100644
index 0000000..5697958
--- /dev/null
+++ b/checkman/jolokia_metrics.threads
@@ -0,0 +1,38 @@
+title: Number of JVM threads
+agents: linux
+author: Mathias Kettner <mk(a)mathias-kettner.de>
+license: GPL
+distribution: check_mk
+description:
+ This check works on the number of threads running in a JVM.
+ It can alert if a configured number of threads is exceeded, and
+ it will also calculate the rate (per second) at which new threads
+ are launched, independent of the total number of threads at the
+ time.
+
+ To use this plugin, Jolokia and the agent plugin need to be installed
+ on the monitored server.
+
+
+item:
+ The name of the application server instance as configured by the agent.
+
+perfdata:
+ The following values are returned in the perfdata:
+ Rate of thread creations,
+ Count of Threads currently running,
+ Count of Daemon Threads currently serving other threads,
+ Maximum number of Threads started at any given time during the JVM lifetime,
+ Number of Threads started since starting the JVM.
+
+inventory:
+ One check is created per JVM sent by the Jolokia agent.
+
+
+[parameters]
+warn (int): a WARN state is triggered is this many threads are running
+ a WARNING state is triggered
+crit (int): a CRITICAL state is triggered is this many threads are running
+
+[configuration]
+jolokia_metrics_threads_default_levels (int, int): Default levels, warning and critical
dict valuespecs, encoding regexp chars correctly when displaying
User-Agent: Heirloom mailx 12.4 7/29/08
MIME-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
Module: check_mk
Branch: master
Commit: 0d16d572ea0d76cdbb911284b6fca398c9804f0e
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=0d16d572ea0d76…
Author: Lars Michelsen <lm(a)mathias-kettner.de>
Date: Fri Sep 14 09:48:11 2012 +0200
WATO: Improved visualization of list/dict valuespecs, encoding regexp chars correctly when displaying
---
ChangeLog | 2 ++
web/htdocs/valuespec.py | 30 ++++++++++++++++++++++--------
web/plugins/wato/check_parameters.py | 3 ++-
3 files changed, 26 insertions(+), 9 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 01b9b1a..f061fdc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -75,6 +75,8 @@
unreachable gateways.
* User managament: Added fields for editing host/service notification commands
* Added new active check configuration for check_smtp
+ * Improved visualization of ruleset lists/dictionaries
+ * Encoding special chars in RegExp valuespec (e.g. logwatch patterns)
* FIX: Removed double collect_hosts() call in activate changes hook
* FIX: Fixed double hook execution when using localized multisite
* FIX: User list shows names of contactgroups when no alias given
diff --git a/web/htdocs/valuespec.py b/web/htdocs/valuespec.py
index afff6b0..b78cb32 100644
--- a/web/htdocs/valuespec.py
+++ b/web/htdocs/valuespec.py
@@ -26,12 +26,14 @@
import math, os, time, re, sre_constants, urlparse, forms
from lib import *
+from htmllib import attrencode
# Abstract base class of all value declaration classes.
class ValueSpec:
def __init__(self, **kwargs):
self._title = kwargs.get("title")
self._help = kwargs.get("help")
+ self._attrencode = kwargs.get("attrencode", False)
if "default_value" in kwargs:
self._default_value = kwargs.get("default_value")
@@ -74,6 +76,10 @@ class ValueSpec:
# used in tables and other contextes. It is to be read
# by the user and need not to be parsable.
# The function may assume that the type of the value is valid.
+ #
+ # In the current implementation this function is only used to
+ # render the object for html code. So it is allowed to add
+ # html code for better layout in the GUI.
def value_to_text(self, value):
return repr(value)
@@ -303,7 +309,10 @@ class TextAscii(ValueSpec):
if value == None:
return _("none")
else:
- return value
+ if self._attrencode:
+ return attrencode(value)
+ else:
+ return value
def from_html_vars(self, varprefix):
value = html.var(varprefix, "")
@@ -340,7 +349,7 @@ class ID(TextAscii):
class RegExp(TextAscii):
def __init__(self, **kwargs):
- TextAscii.__init__(self, **kwargs)
+ TextAscii.__init__(self, attrencode = True, **kwargs)
def validate_value(self, value, varprefix):
TextAscii.validate_value(self, value, varprefix)
@@ -535,7 +544,10 @@ class ListOfStrings(ValueSpec):
return []
def value_to_text(self, value):
- return ", ".join([self._valuespec.value_to_text(v) for v in value])
+ s = '<table>'
+ for v in value:
+ s += '<tr><td>%s</td></tr>' % self._valuespec.value_to_text(v)
+ return s + '</table>'
def from_html_vars(self, vp):
value = []
@@ -647,8 +659,10 @@ class ListOf(ValueSpec):
else:
return self._totext
else:
- return ", ".join([
- self._valuespec.value_to_text(v) for v in value])
+ s = '<table>'
+ for v in value:
+ s += '<tr><td>%s</td></tr>' % self._valuespec.value_to_text(v)
+ return s + '</table>'
def from_html_vars(self, varprefix):
n = 1
@@ -1814,11 +1828,11 @@ class Dictionary(ValueSpec):
if not value:
return self._empty_text
- parts = []
+ s = '<table>'
for param, vs in self._elements:
if param in value:
- parts.append("%s: %s" % (vs.title(), vs.value_to_text(value[param])))
- return ", ".join(parts)
+ s += "<tr><td>%s</td><td>%s</td></tr>" % (vs.title(), vs.value_to_text(value[param]))
+ return s + '</table>'
def from_html_vars(self, varprefix):
value = {}
diff --git a/web/plugins/wato/check_parameters.py b/web/plugins/wato/check_parameters.py
index 812fca0..328239c 100644
--- a/web/plugins/wato/check_parameters.py
+++ b/web/plugins/wato/check_parameters.py
@@ -111,10 +111,11 @@ register_rule(group + '/' + subgroup_applications,
),
RegExp(
title = _("Pattern (Regex)"),
- size = 20,
+ size = 40,
),
TextAscii(
title = _("Comment"),
+ size = 40,
),
]
),
Module: check_mk
Branch: master
Commit: 25c2e1620004a25cf97a46f5a78e5951f2450632
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=25c2e1620004a2…
Author: Lars Michelsen <lm(a)mathias-kettner.de>
Date: Fri Sep 14 10:14:06 2012 +0200
Added check_interval and retry_interval rules for host checks
---
ChangeLog | 1 +
web/plugins/wato/check_mk_configuration.py | 64 ++++++++++++++++++++--------
2 files changed, 47 insertions(+), 18 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index f061fdc..6a31b8a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -77,6 +77,7 @@
* Added new active check configuration for check_smtp
* Improved visualization of ruleset lists/dictionaries
* Encoding special chars in RegExp valuespec (e.g. logwatch patterns)
+ * Added check_interval and retry_interval rules for host checks
* FIX: Removed double collect_hosts() call in activate changes hook
* FIX: Fixed double hook execution when using localized multisite
* FIX: User list shows names of contactgroups when no alias given
diff --git a/web/plugins/wato/check_mk_configuration.py b/web/plugins/wato/check_mk_configuration.py
index 46ec1b7..848e25f 100644
--- a/web/plugins/wato/check_mk_configuration.py
+++ b/web/plugins/wato/check_mk_configuration.py
@@ -591,14 +591,7 @@ register_rule(group,
register_rulegroup("monconf", _("Monitoring Configuration"),
_("Intervals for checking, retries, clustering, configuration for inventory and similar"))
-group = "monconf/Checking"
-
-register_rule(group,
- "extra_host_conf:max_check_attempts",
- Integer(title = _("Maximum number of check attempts for host"),
- help = _("The maximum number of failed host checks until the host will be considered "
- "in a hard down state"),
- minvalue = 1))
+group = "monconf/Service Checks"
register_rule(group,
"extra_service_conf:max_check_attempts",
@@ -635,15 +628,6 @@ register_rule(group,
itemtype = "service")
register_rule(group,
- "extra_host_conf:check_period",
- TimeperiodSelection(
- title = _("Check period for hosts"),
- help = _("If you specify a check period for a host then active checks of that "
- "host will only take place within that period. In the rest of the time "
- "the state of the host will stay at its last status.")),
- )
-
-register_rule(group,
"extra_service_conf:check_period",
TimeperiodSelection(
title = _("Check period for services"),
@@ -667,7 +651,7 @@ register_rule(group,
register_rule(group,
"extra_service_conf:passive_checks_enabled",
DropdownChoice(
- title = _("Enable/disable proccessing of passiv check results for services"),
+ title = _("Enable/disable passive checks for services"),
help = _("This setting allows you to disable the processing of passiv check results for a "
"service."),
choices = [ ("1", _("Enable processing of passiv check results")),
@@ -686,6 +670,50 @@ register_rule(group,
),
itemtype = "service")
+group = "monconf/Host Checks"
+
+register_rule(group,
+ "extra_host_conf:max_check_attempts",
+ Integer(title = _("Maximum number of check attempts for host"),
+ help = _("The maximum number of failed host checks until the host will be considered "
+ "in a hard down state"),
+ minvalue = 1))
+
+register_rule(group,
+ "extra_host_conf:check_interval",
+ Integer(
+ title = _("Normal check interval for host checks"),
+ help = _("The default interval is set to one minute. Here you can specify a larger "
+ "interval. The host is contacted in this interval on a regular base. The host "
+ "check is also being executed when a problematic service state is detected to check "
+ "wether or not the service problem is resulting from a host problem."),
+ minvalue = 1,
+ label = _("minutes")
+ )
+)
+
+register_rule(group,
+ "extra_host_conf:retry_interval",
+ Integer(title = _("Retry check interval for host checks"),
+ help = _("This setting is relevant if you have set the maximum number of check "
+ "attempts to a number greater than one. In case a host check is not UP "
+ "and the maximum number of check attempts is not yet reached, it will be "
+ "rescheduled with this interval. The retry interval is usually set to a smaller "
+ "value than the normal interval."),
+ minvalue = 1,
+ label = _("minutes")
+ )
+)
+
+register_rule(group,
+ "extra_host_conf:check_period",
+ TimeperiodSelection(
+ title = _("Check period for hosts"),
+ help = _("If you specify a check period for a host then active checks of that "
+ "host will only take place within that period. In the rest of the time "
+ "the state of the host will stay at its last status.")),
+ )
+
group = "monconf/Notifications"
register_rule(group,
"extra_host_conf:notifications_enabled",