Module: check_mk
Branch: master
Commit: 9055aca8cdded0837cf93521daaeb3fb4bec055f
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=9055aca8cdded0…
Author: Mathias Kettner <mk(a)mathias-kettner.de>
Date: Thu Jan 26 08:15:52 2012 +0100
Updated bug entries #0417
---
.bugs/417 | 7 +++++--
1 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/.bugs/417 b/.bugs/417
index 0b0fb12..a17df5c 100644
--- a/.bugs/417
+++ b/.bugs/417
@@ -1,11 +1,11 @@
Title: Split SNMPv2 and snmpwulkwalk options
Component: core
+State: done
+Class: nastiness
Benefit: 4
-State: open
Cost: 2
Date: 2011-11-29 15:16:00
Targetversion: 1.1.13i1
-Class: nastiness
Einige Geräte können zwar SNMPv2, setzen aber snmpbulkwalks nicht korrekt um oder
antworten gar nicht auf bulkwalks. Normale snmpwalks funktionieren gut.
@@ -15,3 +15,6 @@ Das ist mir sowohl bei Switchen, als auch gerade bei einem netapp filer aufgefal
Für solch einen Fall ist es wichtig, dass man SNMPv2 und die Bulkwalk Option getrennt
schalten kann. Man könnte z.B. bei gesetztem "bulk" Implizit "snmpv2" setzen, bei
manuell gesetztem "snmpv2" aber nicht automatisch "bulk".
+
+2012-01-26 08:15:49: changed state open -> done
+Erledigt durch neue Variable snmpv2c_hosts (siehe doku).
Module: check_mk
Branch: master
Commit: f6817297dbeee3361c10abfa2d03d7cbe65f7188
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=f6817297dbeee3…
Author: Mathias Kettner <mk(a)mathias-kettner.de>
Date: Thu Jan 26 08:11:04 2012 +0100
New config variable snmpv2c_hosts
---
ChangeLog | 3 +++
modules/check_mk.py | 10 +++++++++-
web/plugins/wato/check_mk_configuration.py | 16 ++++++++++++----
3 files changed, 24 insertions(+), 5 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index f1ccae0..66a31ab 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -11,6 +11,9 @@
display string in the multisite GUI
* FIX: Fixed encoding problems with umlauts in group aliases
* FIX: honor extra_summary_host_conf (was ignored)
+ * new config variable snmpv2c_hosts that allows to enable SNMP v2c
+ but *not* bulkwalk (for some broken devices). bulkwalk_hosts still
+ implies v2c.
Checks & Agents:
* Windows agent: output eventlog texts in UTF-8 encoding. This
diff --git a/modules/check_mk.py b/modules/check_mk.py
index 3df7ff9..5708d28 100755
--- a/modules/check_mk.py
+++ b/modules/check_mk.py
@@ -263,6 +263,7 @@ host_paths = {}
snmp_hosts = [ (['snmp'], ALL_HOSTS) ]
tcp_hosts = [ (['tcp'], ALL_HOSTS), (NEGATE, ['snmp'], ALL_HOSTS), (['!ping'], ALL_HOSTS) ]
bulkwalk_hosts = []
+snmpv2c_hosts = []
usewalk_hosts = []
dyndns_hosts = [] # use host name as ip address for these hosts
ignored_checktypes = [] # exclude from inventory
@@ -593,9 +594,12 @@ def snmp_base_command(what, hostname):
if is_bulkwalk_host(hostname):
options = '-v2c'
else:
- options = '-v1'
if what == 'walk':
command = 'snmpwalk'
+ if is_snmpv2c_host(hostname):
+ options = '-v2c'
+ else:
+ options = '-v1'
options += " -c '%s'" % credentials
# Handle V3
@@ -648,6 +652,10 @@ def is_bulkwalk_host(hostname):
else:
return False
+def is_snmpv2c_host(hostname):
+ return is_bulkwalk_host(hostname) or \
+ in_binary_hostlist(hostname, snmpv2c_hosts)
+
def is_usewalk_host(hostname):
return in_binary_hostlist(hostname, usewalk_hosts)
diff --git a/web/plugins/wato/check_mk_configuration.py b/web/plugins/wato/check_mk_configuration.py
index 858d5cb..9430add 100644
--- a/web/plugins/wato/check_mk_configuration.py
+++ b/web/plugins/wato/check_mk_configuration.py
@@ -752,14 +752,22 @@ register_rule(group,
register_rule(group,
"bulkwalk_hosts",
- title = _("Hosts using SNMP v2c (and bulk walk)"),
+ title = _("Hosts using bulk walk (and SNMP v2c)"),
help = _("Most SNMP hosts support SNMP version 2c. However, Check_MK defaults to version 1, "
"in order to support as many devices as possible. Please use this ruleset in order "
"to configure SNMP v2c for as many hosts as possible. That version has two advantages: "
- "it supports 64 bit counters, which avoid problems with wrapping counters at too "
- "much traffic. And it support bulk walk, which saves much CPU and network ressourecs. "
+ "it supports 64 bit counters, which avoids problems with wrapping counters at too "
+ "much traffic. And it support bulk walk, which saves much CPU and network ressources. "
"Please be aware, however, that there are some broken devices out there, that support "
- "v2c but behave very bad when it is used. "))
+ "bulk walk but behave very bad when it is used. When you want to enable v2c while not using "
+ "bulk walk, please use the rule set snmpv2c_hosts instead."))
+
+register_rule(group,
+ "snmpv2c_hosts",
+ title = _("Hosts using SNMP v2c (and no bulk walk)"),
+ help = _("There exist a few devices out there that behave very badly when using SNMP bulk walk. "
+ "If you want to use SNMP v2c on those devices, nevertheless, then use this rule set. "
+ "One reason is enabling 64 bit counters."))
group = _("Operation mode of Check_MK")
Module: check_mk
Branch: master
Commit: f64d34fc47c5378ac3ee2f0a4239f11aea52c7b1
URL: http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=f64d34fc47c537…
Author: Lars Michelsen <lm(a)mathias-kettner.de>
Date: Wed Jan 25 09:50:16 2012 +0100
WATO: Only localizing non empty host tag titles
---
web/htdocs/wato.py | 8 ++++++--
1 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/web/htdocs/wato.py b/web/htdocs/wato.py
index 0bb819f..7ba93db 100644
--- a/web/htdocs/wato.py
+++ b/web/htdocs/wato.py
@@ -3580,12 +3580,16 @@ class HostTagAttribute(Attribute):
def paint(self, value, hostname):
# Localize the titles. To make the strings available in the scanned localization
# files the _() function must also be placed in the configuration files
+ # But don't localize empty strings - This empty string is connected to the header
+ # of the .mo file
if len(self._taglist) == 1:
title = self._taglist[0][1]
+ if title:
+ title = _(title)
if value:
- return "", _(title)
+ return "", title
else:
- return "", "%s %s" % (_("not"), _(title))
+ return "", "%s %s" % (_("not"), title)
for entry in self._taglist:
if value == entry[0]:
return "", _(entry[1])