diff --git a/cbpi/controller/log_file_controller.py b/cbpi/controller/log_file_controller.py index 634f110..14a9c02 100644 --- a/cbpi/controller/log_file_controller.py +++ b/cbpi/controller/log_file_controller.py @@ -42,9 +42,9 @@ class LogController: except: self.logger.error("Failed to remove listener {}".format(listener_id)) - async def _call_sensor_data_listeners(self, id, value, formatted_time, name): - for id, method in self.sensor_data_listeners.items(): - asyncio.create_task(method(self.cbpi, id, value, formatted_time, name)) + async def _call_sensor_data_listeners(self, sensor_id, value, formatted_time, name): + for listener_id, method in self.sensor_data_listeners.items(): + asyncio.create_task(method(self.cbpi, sensor_id, value, formatted_time, name)) def log_data(self, id: str, value: str) -> None: # all plugin targets: diff --git a/cbpi/extension/SensorLogTarget_CSV/__init__.py b/cbpi/extension/SensorLogTarget_CSV/__init__.py index 6983021..8fbb468 100644 --- a/cbpi/extension/SensorLogTarget_CSV/__init__.py +++ b/cbpi/extension/SensorLogTarget_CSV/__init__.py @@ -42,7 +42,7 @@ class SensorLogTargetCSV(CBPiExtension): data_logger = logging.getLogger('cbpi.sensor.%s' % id) data_logger.propagate = False data_logger.setLevel(logging.DEBUG) - handler = RotatingFileHandler(os.path.join(self.logsFolderPath, f"sensor_{id}.log"), maxBytes=max_bytes, backupCount=backup_count) + handler = RotatingFileHandler(os.path.join(self.cbpi.log.logsFolderPath, f"sensor_{id}.log"), maxBytes=max_bytes, backupCount=backup_count) data_logger.addHandler(handler) self.datalogger[id] = data_logger diff --git a/cbpi/extension/SensorLogTarget_InfluxDB/__init__.py b/cbpi/extension/SensorLogTarget_InfluxDB/__init__.py index 44d68f9..879e057 100644 --- a/cbpi/extension/SensorLogTarget_InfluxDB/__init__.py +++ b/cbpi/extension/SensorLogTarget_InfluxDB/__init__.py @@ -62,6 +62,8 @@ class SensorLogTargetInfluxDB(CBPiExtension): header = {'User-Agent': id, 'Authorization': "Token {}".format(self.influxdbpwd)} http = PoolManager(timeout=timeout) req = http.request('POST',self.influxdburl, body=out.encode(), headers = header) + if req.status != 204: + raise Exception(f'InfluxDB Status code {req.status}') except Exception as e: logging.error("InfluxDB cloud write Error: {}".format(e)) @@ -72,6 +74,8 @@ class SensorLogTargetInfluxDB(CBPiExtension): header = {'User-Agent': id, 'Content-Type': 'application/x-www-form-urlencoded','Authorization': 'Basic %s' % self.base64string.decode('utf-8')} http = PoolManager(timeout=timeout) req = http.request('POST',self.influxdburl, body=out.encode(), headers = header) + if req.status != 204: + raise Exception(f'InfluxDB Status code {req.status}') except Exception as e: logging.error("InfluxDB write Error: {}".format(e))