litespeed: save old data between iterations
lgz committed
Jun 4, 2018 at 15:43 UTC
3d13a87ad8b9051c080bbca94ee7cfcf68b5040b
1 file changed
+17
-9
python.d/litespeed.chart.py
+17
-9
@@ -6,6 +6,8 @@ import glob
6
import re
7
import os
8
9
+from collections import defaultdict
10
+
11
from bases.FrameworkServices.SimpleService import SimpleService
12
13
@@ -99,6 +101,8 @@ class Service(SimpleService):
101
Format data received from http request
102
:return: dict
103
"""
104
+ data = defaultdict(int)
105
+
106
for f in self.files:
107
try:
108
if not f.is_updated():
@@ -109,18 +113,22 @@ class Service(SimpleService):
113
self.error(err)
114
return None
115
else:
112
- self.parse_file(lines)
116
+ parse_file(data, lines)
117
+
118
+ if data:
119
+ self.data = dict(data)
120
121
return self.data
122
116
- def parse_file(self, lines):
117
- for line in lines:
118
- if not line.startswith("REQ_RATE []"):
119
- continue
120
- m = dict(RE.findall(line))
121
- for k, d in KEYS:
122
- self.data[d] = float(m[k]) * 100 if k in m else 0
123
- break
123
+
124
+def parse_file(data, lines):
125
+ for line in lines:
126
+ if not line.startswith("REQ_RATE []"):
127
+ continue
128
+ m = dict(RE.findall(line))
129
+ for k, d in KEYS:
130
+ data[d] += float(m[k]) * 100 if k in m else 0
131
+ break
132
133
134
def is_readable_file(v):