diff --git a/SunGather/exports/influxdb.py b/SunGather/exports/influxdb.py index ca48575..31b4851 100644 --- a/SunGather/exports/influxdb.py +++ b/SunGather/exports/influxdb.py @@ -57,13 +57,13 @@ class export_influxdb(object): sequence = [] for measurement in self.influxdb_measurements: - if not inverter.validateLatestScrape(measurement['register']): - logging.error(f"InfluxDB: Skipped collecting data, {measurement['register']} missing from last scrape") + register = measurement['register'] + if not inverter.validateLatestScrape(register): + logging.error(f"InfluxDB: Skipped collecting data, {register} missing from last scrape") return False - if type(inverter.getRegisterValue(measurement['register'])) is str: - sequence.append(influxdb_client.Point(measurement['point']).tag("inverter", inverter.getInverterModel(True)).field(measurement['register'], inverter.getRegisterValue(measurement['register']))) - else: - sequence.append(influxdb_client.Point(measurement['point']).tag("inverter", inverter.getInverterModel(True)).field(measurement['register'], float(inverter.getRegisterValue(measurement['register'])))) + value = inverter.getRegisterValue(register) if type(inverter.getRegisterValue(register)) is str else float(inverter.getRegisterValue(register)) + sequence.append(influxdb_client.Point(measurement['point']).tag("inverter", inverter.getInverterModel(True)).field(register, value)) + try: self.write_api.write(self.influxdb_config['bucket'], self.client.org, sequence) except Exception as err: