more python logging fixes
Costa Tsaousis (ktsaou) committed
Nov 12, 2016 at 14:00 UTC
56ec680880032bc9e8dcfb32bb163a1e783a6a59
2 files changed
+17
-5
plugins.d/python.d.plugin
+1
-1
@@ -332,7 +332,7 @@ class PythonCharts(object):
332
job = self.jobs[i]
333
try:
334
if not job.check():
335
- msg.error(job.chart_name, "check function failed.")
335
+ msg.error(job.chart_name, "check() failed - disabling job")
336
self._stop(job)
337
else:
338
msg.info("CHECKED OK:", job.chart_name)
python.d/python_modules/base.py
+16
-4
@@ -357,10 +357,18 @@ class SimpleService(threading.Thread):
357
:return: boolean
358
"""
359
self.debug("Module", str(self.__module__), "doesn't implement check() function. Using default.")
360
- if self._get_data() is None or len(self._get_data()) == 0:
360
+ data = self._get_data()
361
+
362
+ if data is None:
363
+ self.debug("failed to receive data during check().")
364
return False
362
- else:
363
- return True
365
+
366
+ if len(data) == 0:
367
+ self.debug("empty data during check().")
368
+ return False
369
+
370
+ self.debug("successfully received data during check(): '" + str(data) + "'")
371
+ return True
372
373
def create(self):
374
"""
@@ -369,6 +377,7 @@ class SimpleService(threading.Thread):
377
"""
378
data = self._get_data()
379
if data is None:
380
+ self.debug("failed to receive data during create().")
381
return False
382
383
idx = 0
@@ -392,7 +401,7 @@ class SimpleService(threading.Thread):
401
"""
402
data = self._get_data()
403
if data is None:
395
- self.debug("_get_data() returned no data")
404
+ self.debug("failed to receive data during update().")
405
return False
406
407
updated = False
@@ -716,6 +725,7 @@ class SocketService(SimpleService):
725
self.name = ""
726
else:
727
self.name = str(self.name)
728
+
729
try:
730
self.unix_socket = str(self.configuration['socket'])
731
except (KeyError, TypeError):
@@ -729,10 +739,12 @@ class SocketService(SimpleService):
739
self.port = int(self.configuration['port'])
740
except (KeyError, TypeError):
741
self.debug("No port specified. Using: '" + str(self.port) + "'")
742
+
743
try:
744
self.request = str(self.configuration['request'])
745
except (KeyError, TypeError):
746
self.debug("No request specified. Using: '" + str(self.request) + "'")
747
+
748
self.request = self.request.encode()
749
750
def check(self):