Module: check_mk
Branch: master
Commit: 0a4e28a0c0f1bd4206687d18127b745fffbf2c93
URL:
http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=0a4e28a0c0f1bd…
Author: Sebastian Herbord <sh(a)mathias-kettner.de>
Date: Fri May 6 15:44:28 2016 +0200
mssql_datafiles, mssql_transactionlogs: summarize now summarizes per database, not per
instance. Also a few wording fixes
---
checkman/mssql_datafiles | 4 +--
checkman/mssql_transactionlogs | 4 +--
checks/mssql.include | 50 ++++++++++++++++------------------
web/plugins/wato/check_parameters.py | 42 ++++++++++++++--------------
4 files changed, 49 insertions(+), 51 deletions(-)
diff --git a/checkman/mssql_datafiles b/checkman/mssql_datafiles
index 835bb1b..e6e1438 100644
--- a/checkman/mssql_datafiles
+++ b/checkman/mssql_datafiles
@@ -14,8 +14,8 @@ description:
for how to install that plugin.
item:
- A combination of the instance-, database- and table-name.
+ A combination of the instance-, database- and (logical) file-name.
inventory:
One separate check for each datafile will be created. Alternatively
- there is a rule to summarize all files in one service.
+ there is a rule to summarize files per database.
diff --git a/checkman/mssql_transactionlogs b/checkman/mssql_transactionlogs
index 003eb56..72f8852 100644
--- a/checkman/mssql_transactionlogs
+++ b/checkman/mssql_transactionlogs
@@ -14,8 +14,8 @@ description:
for how to install that plugin.
item:
- A combination of the instance-, database- and table-name.
+ A combination of the instance-, database- and (logical) file-name.
inventory:
One separate check for each transactionlog will be created.
- Alternatively there is a rule to summarize all files in one service.
+ Alternatively there is a rule to summarize files per database.
diff --git a/checks/mssql.include b/checks/mssql.include
index 4846b36..ed4ece6 100644
--- a/checks/mssql.include
+++ b/checks/mssql.include
@@ -28,26 +28,30 @@
mssql_transactionlogs_discovery = []
-def format_item_mssql_datafiles(inst, database, table):
+def format_item_mssql_datafiles(inst, database, file_name):
if inst is None:
- return "%s.%s" % (database, table)
+ return "%s.%s" % (database, file_name)
+ elif file_name is None:
+ return "%s.%s" % (inst, database)
else:
- return "%s.%s.%s" % (inst, database, table)
+ return "%s.%s.%s" % (inst, database, file_name)
def inventory_mssql_datafiles(mode, info):
settings = host_extra_conf(g_hostname, mssql_transactionlogs_discovery)
+ summarize = settings and settings[0].get("summarize_%s" % mode, False)
- if settings and settings[0].get("summarize_%s" % mode, False):
- yield "SUMMARY", {}
- else:
- for line in info:
- if len(line) == 8:
- inst, database, table = line[0:3]
- else:
- inst = None
- database, table = line[0:2]
- yield format_item_mssql_datafiles(inst, database, table), {}
+ for line in info:
+ if len(line) == 8:
+ inst, database, file_name = line[0:3]
+ else:
+ inst = None
+ database, file_name = line[0:2]
+
+ if summarize:
+ yield format_item_mssql_datafiles(inst, database, None), {}
+ else:
+ yield format_item_mssql_datafiles(inst, database, file_name), {}
def mssql_datafiles_process_sizes(params, used_size, allocated_size, max_size,
unlimited):
@@ -117,29 +121,23 @@ def check_mssql_datafiles(item, params, info):
for row in info:
if len(row) == 8:
- inst, database, table, physical_name, max_size, allocated_size, used_size,
unlimited = row
+ inst, database, file_name, physical_name, max_size, allocated_size,
used_size, unlimited = row
unlimited = unlimited == '1'
else:
- database, table, physical_name, max_size, allocated_size, used_size = row
+ database, file_name, physical_name, max_size, allocated_size, used_size =
row
inst = None
unlimited = False
- if item == "SUMMARY":
+ if format_item_mssql_datafiles(inst, database, file_name) == item or\
+ format_item_mssql_datafiles(inst, database, None) == item:
+
max_size, allocated_size, used_size = map(lambda x: float(x) * 1024 * 1024,
(max_size, allocated_size,
used_size))
max_size_sum += max_size
allocated_size_sum += allocated_size
used_size_sum += used_size
unlimited_sum = unlimited_sum or unlimited
- elif format_item_mssql_datafiles(inst, database, table) == item:
- # these values are returned from the db in number of 8KB blocks and divided
by
- # 128 by the plugin to get MB.
- max_size, allocated_size, used_size = map(lambda x: float(x) * 1024 * 1024,
- (max_size, allocated_size,
used_size))
- return mssql_datafiles_process_sizes(params, used_size, allocated_size,
- max_size, unlimited)
- if item == "SUMMARY":
- return mssql_datafiles_process_sizes(params, used_size_sum, allocated_size_sum,
- max_size_sum, unlimited_sum)
+ return mssql_datafiles_process_sizes(params, used_size_sum, allocated_size_sum,
+ max_size_sum, unlimited_sum)
diff --git a/web/plugins/wato/check_parameters.py b/web/plugins/wato/check_parameters.py
index bf61c59..002eae8 100644
--- a/web/plugins/wato/check_parameters.py
+++ b/web/plugins/wato/check_parameters.py
@@ -6321,29 +6321,29 @@ register_check_parameters(
title = _("Page Activity Levels"),
elements = [
("page_reads/sec",
- Tuple(
- title = _("Read"),
- elements = [
- Filesize(title = _("Warning at")),
- Filesize(title = _("Critical at")),
- ]
- )),
+ Tuple(
+ title = _("Reads/sec"),
+ elements = [
+ Float(title = _("warning at"), unit = _("/sec")
),
+ Float(title = _("critical at"), unit = _("/sec")
),
+ ])
+ ),
("page_writes/sec",
- Tuple(
- title = _("Write"),
- elements = [
- Filesize(title = _("Warning at")),
- Filesize(title = _("Critical at")),
- ]
- )),
+ Tuple(
+ title = _("Writes/sec"),
+ elements = [
+ Float(title = _("warning at"), unit = _("/sec")
),
+ Float(title = _("critical at"), unit = _("/sec")
),
+ ])
+ ),
("page_lookups/sec",
- Tuple(
- title = _("Lookup"),
- elements = [
- Filesize(title = _("Warning at")),
- Filesize(title = _("Critical at")),
- ]
- )),
+ Tuple(
+ title = _("Lookups/sec"),
+ elements = [
+ Float(title = _("warning at"), unit = _("/sec")
),
+ Float(title = _("critical at"), unit = _("/sec")
),
+ ])
+ ),
]
),
TextAscii(