From ff23fbf49868eb176f49155a56bc757de6dc4eec Mon Sep 17 00:00:00 2001 From: pfauenauge Date: Sat, 9 Nov 2024 19:42:14 +0100 Subject: [PATCH] influxdb.py catch NoneType values NoneType values raise error. Catch those with empty string. This might cause issues if data type is float. --- SunGather/exports/influxdb.py | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/SunGather/exports/influxdb.py b/SunGather/exports/influxdb.py index eb9d3e7..516f178 100644 --- a/SunGather/exports/influxdb.py +++ b/SunGather/exports/influxdb.py @@ -61,7 +61,14 @@ def publish(self, inverter): if not inverter.validateLatestScrape(register): logging.error(f"InfluxDB: Skipped collecting data, {register} missing from last scrape") return False - value = inverter.getRegisterValue(register) if type(inverter.getRegisterValue(register)) is str else float(inverter.getRegisterValue(register)) + + if inverter.getRegisterValue(register) is None: + value = "" + elif type(inverter.getRegisterValue(register)) is str: + value = inverter.getRegisterValue(register) + else: + value = float(inverter.getRegisterValue(register)) + sequence.append(influxdb_client.Point(measurement['point']).tag("inverter", inverter.getInverterModel(True)).field(register, value)) try: