summaryrefslogtreecommitdiffstats
path: root/collectors/python.d.plugin/boinc/boinc.chart.py
diff options
context:
space:
mode:
Diffstat (limited to 'collectors/python.d.plugin/boinc/boinc.chart.py')
-rw-r--r--collectors/python.d.plugin/boinc/boinc.chart.py14
1 files changed, 11 insertions, 3 deletions
diff --git a/collectors/python.d.plugin/boinc/boinc.chart.py b/collectors/python.d.plugin/boinc/boinc.chart.py
index d14754c4b..e10b28cea 100644
--- a/collectors/python.d.plugin/boinc/boinc.chart.py
+++ b/collectors/python.d.plugin/boinc/boinc.chart.py
@@ -10,7 +10,12 @@ from bases.FrameworkServices.SimpleService import SimpleService
from third_party import boinc_client
-ORDER = ['tasks', 'states', 'sched_states', 'process_states']
+ORDER = [
+ 'tasks',
+ 'states',
+ 'sched_states',
+ 'process_states',
+]
CHARTS = {
'tasks': {
@@ -141,14 +146,16 @@ class Service(SimpleService):
def _get_data(self):
if not self.is_alive():
return None
+
data = dict(_DATA_TEMPLATE)
- results = []
+
try:
results = self.client.get_tasks()
except socket.error:
self.error('Connection is dead')
self.alive = False
return None
+
for task in results:
data['total'] += 1
data[_TASK_MAP[task.state]] += 1
@@ -159,4 +166,5 @@ class Service(SimpleService):
data[_PROC_MAP[task.active_task_state]] += 1
except AttributeError:
pass
- return data
+
+ return data or None