proper logging, add signal handler for graceful termination

This commit is contained in:
2025-05-23 13:52:42 +02:00
parent 04bf09ae5a
commit ef35d18f37
6 changed files with 52 additions and 39 deletions

View File

@ -21,6 +21,7 @@
# *****************************************************************************
import re
import time
import logging
from datetime import datetime, timezone
from math import floor, ceil
@ -192,8 +193,7 @@ class InfluxDBWrapper:
self.add_new_bucket(self._bucket, access == 'create')
self._write_buffer = []
self._alias = {}
print('InfluxDBWrapper', self._url, self._org, self._bucket)
self.debug = False
logging.info('InfluxDBWrapper %s %s %s', self._url, self._org, self._bucket)
def enable_write_access(self):
self._write_api_write = self._client.write_api(write_options=SYNCHRONOUS).write
@ -356,22 +356,21 @@ class InfluxDBWrapper:
msg.append(f'''|> keep(columns:["{'","'.join(columns + keylist)}"])''')
msg = '\n'.join(msg)
if self.debug:
print(msg)
logging.debug('MSG %r', msg)
self.msg = msg
try:
reader = self._client.query_api().query_csv(msg)
except Exception:
print(msg)
except Exception as e:
logging.exception("error in query: %r", msg)
raise
if self.debug:
def readdebug(reader):
for row in reader:
print(row)
yield row
reader = readdebug(reader)
# if self.debug:
# def readdebug(reader):
# for row in reader:
# print(row)
# yield row
# reader = readdebug(reader)
try:
row = next(reader)
except StopIteration:
@ -416,7 +415,7 @@ class InfluxDBWrapper:
# consume unused rows
consumed = sum(1 for _ in rows)
if consumed:
print('skip', consumed, 'rows')
logging.info('skip %r rows', consumed)
if not row: # reader is at end
return