isc_dhcpd_plugin: python 2.6 compatibility fix
Ilya committed
Feb 20, 2017 at 22:18 UTC
2e665f093141992ad0cf1bc53de766d0834168bc
1 file changed
+5
-6
python.d/isc_dhcpd.chart.py
+5
-6
@@ -48,7 +48,7 @@ class Service(SimpleService):
48
except (ValueError, IndexError, AttributeError, SyntaxError) as e:
49
self.error('Pools configurations is incorrect', str(e))
50
return False
51
-
51
+
52
# Creating static charts
53
self.order = ['parse_time', 'leases_size', 'utilization', 'total']
54
self.definitions = {'utilization':
@@ -109,12 +109,11 @@ class Service(SimpleService):
109
:return: dict
110
"""
111
raw_leases = self._get_raw_data()
112
-
112
if not raw_leases:
113
return None
114
115
# Result: {ipaddress: end lease time, ...}
117
- all_leases = {k[6:len(k)-3]:v[7:len(v)-2] for k, v in raw_leases[0].items()}
116
+ all_leases = dict([(k[6:len(k)-3], v[7:len(v)-2]) for k, v in raw_leases[0].items()])
117
118
# Result: [active binding, active binding....]. (Expire time (ends date;) - current time > 0)
119
active_leases = [k for k, v in all_leases.items() if is_binding_active(all_leases[k])]
@@ -132,9 +131,9 @@ class Service(SimpleService):
131
for pool in self.pools}
132
133
# Bulding dicts to send to netdata
135
- final_count = {''.join(['le_', k]): v for k, v in pools_count.items()}
136
- final_util = {''.join(['ut_', k]): v for k, v in pools_util.items()}
137
-
134
+ final_count = dict([(''.join(['le_', k]), v) for k, v in pools_count.items()])
135
+ final_util = dict([(''.join(['ut_', k]), v) for k, v in pools_util.items()])
136
+
137
to_netdata = {'total': len(active_leases)}
138
to_netdata.update({'lsize': int(stat(self.leases_path)[6] / 1024)})
139
to_netdata.update({'ptime': int(raw_leases[1])})