diff --git a/src/preprocess.py b/src/preprocess.py index 10ff11f..c511546 100644 --- a/src/preprocess.py +++ b/src/preprocess.py @@ -19,7 +19,11 @@ class SensorTypeNotFoundException (Exception): def __init__(self, sensorType): self.sensorType = sensorType -class JustIgnoreMessage (Exception): pass +class JustIgnoreMessage (Exception): + def __init__(self, application, device, message): + self.application = application + self.device = device + self.message = message class DbOp(object): def __init__(self, config): @@ -122,10 +126,10 @@ def mqttOnMessageCallback(client, userdata, message): } case 'LMDS200': if f_port != 2: - raise JustIgnoreMessage() + raise JustIgnoreMessage(application['label'], device_id, f"ignore message for f_port {f_port}") battery = struct.unpack('>H', frame[0:2])[0] - distance1 = struct.unpack('>H', frame[2:4])[0] - distance2 = struct.unpack('>H', frame[4:6])[0] + distance1 = struct.unpack('>H', frame[2:4])[0] * 10 + distance2 = struct.unpack('>H', frame[4:6])[0] * 10 logger.debug(f"{frame=}, {battery=}, {distance1=}, {distance2=}") statusText = 'Ok' @@ -146,8 +150,8 @@ def mqttOnMessageCallback(client, userdata, message): logger.debug(f"{measurement=}") dbh.storeMeasurement(measurement) - except JustIgnoreMessage: - pass + except JustIgnoreMessage as e: + logger.info(f"JustIgnoreMessage: {e.application}, {e.device}, {e.message}") except SensorTypeNotFoundException as e: logger.error(f"application has unknown sensor type {e.sensorType}") except ApplicationNotFoundException as e: