syntax fixes and chart improvements
nobody-nobody committed
Nov 14, 2017 at 18:14 UTC
d53589cac91591bb8fadcfb93ef9c6672cf5d381
1 file changed
+30
-58
python.d/dnsdist.chart.py
+30
-58
@@ -2,10 +2,10 @@
2
from json import loads
3
from bases.FrameworkServices.UrlService import UrlService
4
5
-ORDER = ['latency_rel', 'latency_abs', 'cache_rel', 'cache_abs', 'acl_abs', 'invalid_abs', 'queries_rel', 'queries_abs', 'health_abs']
5
+ORDER = ['latency', 'cache', 'acl', 'noncompliant', 'queries', 'health']
6
CHARTS = {
7
- 'latency_rel': {
8
- 'options': [None, 'Average latency', 'value', 'Latency', 'dnsdist.latency_rel', 'area'],
7
+ 'latency': {
8
+ 'options': [None, 'latency stats', 'percent', 'latency', 'dnsdist.latency', 'area'],
9
'lines': [
10
['latency-slow', '> 1sec', 'incremental'],
11
['latency100-1000', '100-1000ms', 'incremental'],
@@ -14,65 +14,42 @@ CHARTS = {
14
['latency1-10', '1-10ms', 'incremental'],
15
['latency0-1', '< 1ms', 'incremental']
16
]},
17
- 'latency_abs': {
18
- 'options': [None, 'Absolute latency', 'value', 'Latency', 'dnsdist.latency_abs', 'line'],
19
- 'lines': [
20
- ['latency-slow', '> 1sec', 'absolute'],
21
- ['latency100-1000', '100-1000ms', 'absolute'],
22
- ['latency50-100', '50-100ms', 'absolute'],
23
- ['latency10-50', '10-50ms', 'absolute'],
24
- ['latency1-10', '1-10ms', 'absolute'],
25
- ['latency0-1', '< 1ms', 'absolute']
26
- ]},
27
- 'cache_rel': {
28
- 'options': [None, 'Relative cache stats', 'value', 'Cache', 'dnsdist.cache_rel', 'area'],
17
+ 'cache': {
18
+ 'options': [None, 'cache stats', 'value', 'cache', 'dnsdist.cache', 'area'],
19
'lines': [
20
['cache-hits', 'hits', 'incremental'],
21
['cache-misses', 'misses', 'incremental']
22
]},
33
- 'cache_abs': {
34
- 'options': [None, 'Absolute cache stats', 'value', 'Cache', 'dnsdist.cache_abs', 'area'],
35
- 'lines': [
36
- ['cache-hits', 'hits', 'absolute'],
37
- ['cache-misses', 'misses', 'absolute']
38
- ]},
39
- 'acl_abs': {
40
- 'options': [None, 'AccessControlList stats', 'value', 'ACL', 'dnsdist.acl_abs', 'line'],
23
+ 'acl': {
24
+ 'options': [None, 'AccessControlList stats', 'value', 'acl', 'dnsdist.acl', 'area'],
25
'lines': [
42
- ['acl-drops', 'drop by acl', 'absolute'],
43
- ['rule-drop', 'drop by rule', 'absolute'],
44
- ['rule-nxdomain', 'rnxdomain by rule', 'absolute'],
45
- ['rule-refused', 'refused by rule', 'absolute']
26
+ ['acl-drops', None, 'incremental'],
27
+ ['rule-drop', None, 'incremental'],
28
+ ['rule-nxdomain', None, 'incremental'],
29
+ ['rule-refused', None, 'incremental']
30
]},
47
- 'noncompliant_abs': {
48
- 'options': [None, 'Noncompliant data', 'value', 'Invalid', 'dnsdist.noncompliant_abs', 'line'],
31
+ 'noncompliant': {
32
+ 'options': [None, 'Noncompliant data', 'value', 'noncompliant', 'dnsdist.noncompliant', 'area'],
33
'lines': [
50
- ['empty-queries', 'empty queries', 'absolute'],
51
- ['no-policy', 'no policy', 'absolute'],
52
- ['noncompliant-queries', 'noncompliant queries', 'absolute'],
53
- ['noncompliant-responses', 'noncompliant responses', 'absolute']
34
+ ['empty-queries', None, 'incremental'],
35
+ ['no-policy', None, 'incremental'],
36
+ ['noncompliant-queries', None, 'incremental'],
37
+ ['noncompliant-responses', None, 'incremental']
38
]},
55
- 'queries_rel': {
56
- 'options': [None, 'Relative query stats', 'value', 'Queries', 'dnsdist.queries_rel', 'line'],
39
+ 'queries': {
40
+ 'options': [None, 'Relative query stats', 'value', 'queries', 'dnsdist.queries', 'area'],
41
'lines': [
58
- ['queries', 'queries', 'incremental'],
59
- ['rdqueries', 'rd queries', 'incremental'],
60
- ['responses', 'responses', 'incremental']
42
+ ['queries', None, 'incremental'],
43
+ ['rdqueries', None, 'incremental'],
44
+ ['responses', None, 'incremental']
45
]},
62
- 'queries_abs': {
63
- 'options': [None, 'Absolute query stats', 'value', 'Queries', 'dnsdist.queries_abs', 'line'],
46
+ 'health': {
47
+ 'options': [None, 'Health', 'value', 'health', 'dnsdist.health', 'area'],
48
'lines': [
65
- ['queries', 'queries', 'absolute'],
66
- ['rdqueries', 'rd queries', 'absolute'],
67
- ['responses', 'responses', 'absolute']
68
- ]},
69
- 'health_abs': {
70
- 'options': [None, 'Health', 'value', 'Health', 'dnsdist.health_abs', 'line'],
71
- 'lines': [
72
- ['downstream-send-errors', 'ds send errors', 'absolute'],
73
- ['downstream-timeouts', 'ds timeouts', 'absolute'],
74
- ['servfail-responses', 'servfail responses', 'absolute'],
75
- ['trunc-failures', 'trunc failures', 'absolute']
49
+ ['downstream-send-errors', 'ds send errors', 'incremental'],
50
+ ['downstream-timeouts', 'ds timeouts', 'incremental'],
51
+ ['servfail-responses', 'servfail responses', 'incremental'],
52
+ ['trunc-failures', 'trunc failures', 'incremental']
53
]}
54
}
55
@@ -86,11 +63,6 @@ class Service(UrlService):
63
data = self._get_raw_data()
64
if not data:
65
return None
89
-
90
- rdict = dict()
91
- jdata = loads(data)
92
- for d in jdata:
93
- rdict[str(d)] = jdata[str(d)]
66
95
- return rdict
96
-
67
+ return loads(data)
68
+