Module: check_mk
Branch: master
Commit: 7b8376c39be5ec4b868a55ded1767180eb3bfae9
URL:
http://git.mathias-kettner.de/git/?p=check_mk.git;a=commit;h=7b8376c39be5ec…
Author: Moritz Kiemer <mo(a)mathias-kettner.de>
Date: Mon Feb 18 07:57:29 2019 +0100
mk_jolokia.py: prepare for additional sections
Change-Id: Iaef34b28432fc6cbcd08e5f4347afb865b40b950
---
agents/plugins/mk_jolokia.py | 121 +++++++++++++++++++++++--------------------
1 file changed, 64 insertions(+), 57 deletions(-)
diff --git a/agents/plugins/mk_jolokia.py b/agents/plugins/mk_jolokia.py
index af6abfd..251ebdf 100755
--- a/agents/plugins/mk_jolokia.py
+++ b/agents/plugins/mk_jolokia.py
@@ -55,61 +55,65 @@ except ImportError as import_error:
VERBOSE = '--verbose' in sys.argv
DEBUG = '--debug' in sys.argv
-QUERY_SPECS_GENERIC = [
- ("java.lang:type=Memory", "NonHeapMemoryUsage/used",
"NonHeapMemoryUsage", [], False),
- ("java.lang:type=Memory", "NonHeapMemoryUsage/max",
"NonHeapMemoryMax", [], False),
- ("java.lang:type=Memory", "HeapMemoryUsage/used",
"HeapMemoryUsage", [], False),
- ("java.lang:type=Memory", "HeapMemoryUsage/max",
"HeapMemoryMax", [], False),
- ("java.lang:type=Threading", "ThreadCount",
"ThreadCount", [], False),
- ("java.lang:type=Threading", "DaemonThreadCount",
"DeamonThreadCount", [], False),
- ("java.lang:type=Threading", "PeakThreadCount",
"PeakThreadCount", [], False),
- ("java.lang:type=Threading", "TotalStartedThreadCount",
"TotalStartedThreadCount", [], False),
- ("java.lang:type=Runtime", "Uptime", "Uptime", [],
False),
- ("java.lang:type=GarbageCollector,name=*", "CollectionCount",
"", [], False),
- ("java.lang:type=GarbageCollector,name=*", "CollectionTime",
"", [], False),
- ("java.lang:name=CMS%20Perm%20Gen,type=MemoryPool", "Usage/used",
"PermGenUsage", [], False),
- ("java.lang:name=CMS%20Perm%20Gen,type=MemoryPool", "Usage/max",
"PermGenMax", [], False),
-
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
"OffHeapHits",
- "", [], True),
-
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
"OnDiskHits",
- "", [], True),
-
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
- "InMemoryHitPercentage", "", [], True),
-
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
"CacheMisses",
- "", [], True),
-
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
- "OnDiskHitPercentage", "", [], True),
-
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
- "MemoryStoreObjectCount", "", [], True),
-
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
- "DiskStoreObjectCount", "", [], True),
-
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
- "CacheMissPercentage", "", [], True),
-
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
- "CacheHitPercentage", "", [], True),
-
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
- "OffHeapHitPercentage", "", [], True),
-
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
- "InMemoryMisses", "", [], True),
-
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
- "OffHeapStoreObjectCount", "", [], True),
-
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
- "WriterQueueLength", "", [], True),
-
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
- "WriterMaxQueueSize", "", [], True),
-
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
"OffHeapMisses",
- "", [], True),
-
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
"InMemoryHits",
- "", [], True),
-
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
- "AssociatedCacheName", "", [], True),
-
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
"ObjectCount",
- "", [], True),
-
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
"OnDiskMisses",
- "", [], True),
-
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
"CacheHits", "",
- [], True),
-]
+QUERY_SPECS_GENERIC = {
+ 'metrics': [
+ ("java.lang:type=Memory", "NonHeapMemoryUsage/used",
"NonHeapMemoryUsage", [], False),
+ ("java.lang:type=Memory", "NonHeapMemoryUsage/max",
"NonHeapMemoryMax", [], False),
+ ("java.lang:type=Memory", "HeapMemoryUsage/used",
"HeapMemoryUsage", [], False),
+ ("java.lang:type=Memory", "HeapMemoryUsage/max",
"HeapMemoryMax", [], False),
+ ("java.lang:type=Threading", "ThreadCount",
"ThreadCount", [], False),
+ ("java.lang:type=Threading", "DaemonThreadCount",
"DeamonThreadCount", [], False),
+ ("java.lang:type=Threading", "PeakThreadCount",
"PeakThreadCount", [], False),
+ ("java.lang:type=Threading", "TotalStartedThreadCount",
"TotalStartedThreadCount", [],
+ False),
+ ("java.lang:type=Runtime", "Uptime", "Uptime", [],
False),
+ ("java.lang:type=GarbageCollector,name=*", "CollectionCount",
"", [], False),
+ ("java.lang:type=GarbageCollector,name=*", "CollectionTime",
"", [], False),
+ ("java.lang:name=CMS%20Perm%20Gen,type=MemoryPool",
"Usage/used", "PermGenUsage", [],
+ False),
+ ("java.lang:name=CMS%20Perm%20Gen,type=MemoryPool",
"Usage/max", "PermGenMax", [], False),
+
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
+ "OffHeapHits", "", [], True),
+
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
+ "OnDiskHits", "", [], True),
+
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
+ "InMemoryHitPercentage", "", [], True),
+
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
+ "CacheMisses", "", [], True),
+
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
+ "OnDiskHitPercentage", "", [], True),
+
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
+ "MemoryStoreObjectCount", "", [], True),
+
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
+ "DiskStoreObjectCount", "", [], True),
+
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
+ "CacheMissPercentage", "", [], True),
+
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
+ "CacheHitPercentage", "", [], True),
+
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
+ "OffHeapHitPercentage", "", [], True),
+
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
+ "InMemoryMisses", "", [], True),
+
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
+ "OffHeapStoreObjectCount", "", [], True),
+
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
+ "WriterQueueLength", "", [], True),
+
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
+ "WriterMaxQueueSize", "", [], True),
+
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
+ "OffHeapMisses", "", [], True),
+
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
+ "InMemoryHits", "", [], True),
+
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
+ "AssociatedCacheName", "", [], True),
+
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
+ "ObjectCount", "", [], True),
+
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
+ "OnDiskMisses", "", [], True),
+
("net.sf.ehcache:CacheManager=CacheManagerApplication*,*,type=CacheStatistics",
"CacheHits",
+ "", [], True),
+ ],
+}
QUERY_SPECS_SPECIFIC = {
"weblogic": [
@@ -463,8 +467,11 @@ def _process_queries(inst, queries):
def query_instance(inst):
write_section('jolokia_info', generate_jolokia_info(inst))
- shipped_vars = QUERY_SPECS_GENERIC + QUERY_SPECS_SPECIFIC.get(inst.product, [])
- write_section('jolokia_metrics', generate_values(inst, shipped_vars))
+ # now (after jolokia_info) we're sure about the product
+ specs_specific = QUERY_SPECS_SPECIFIC.get(inst.product, [])
+ write_section('jolokia_metrics', generate_values(inst, specs_specific))
+ for section_name, specs_shipped in QUERY_SPECS_GENERIC.iteritems():
+ write_section('jolokia_%s' % section_name, generate_values(inst,
specs_shipped))
write_section('jolokia_generic', generate_values(inst, inst.custom_vars))