diff --git a/src/app.py b/src/app.py index 1b4b65f..7aaf3fe 100644 --- a/src/app.py +++ b/src/app.py @@ -1,4 +1,5 @@ #!/usr/bin/env python3 +import logging from flask import Flask from flask_restful import Api import sentry_sdk @@ -85,6 +86,7 @@ def handle_status_message_proxy(*args, **kwargs): with app.app_context(): handle_status_message(*args, **kwargs) + api.add_resource(AllDevicesResource, "/devices") api.add_resource(AllDevicesOfflineResource, "/devices/offline") api.add_resource(AllDevicesOnlineResource, "/devices/online") diff --git a/src/mqtt_methods.py b/src/mqtt_methods.py index d2e3bb6..9433b73 100644 --- a/src/mqtt_methods.py +++ b/src/mqtt_methods.py @@ -1,6 +1,5 @@ #!/usr/bin/env python3 -import logging -from mqtt_flask_instance import mqtt +from app import app import config from db import db from schemas import DeviceSchema, SensorSchema @@ -17,31 +16,29 @@ __version__text__ = "1" deviceschema = DeviceSchema(many=False) sensorschema = SensorSchema(many=False) -LOGGER = logging.getLogger(__name__) - def handle_status_message(client, userdata, message): data = dict( topic=message.topic, payload=message.payload.decode() ) - LOGGER.info(data) + app.logger.info(data) try: ids = data['topic'].replace(f"{config.MQTT_STATUS_TOPIC}/", "").split("/") if len(ids) == 1: data['payload']['deviceID'] = ids[0] status_message = deviceschema.load(data['payload'], session=db.session, transient=True).data - LOGGER.info(f"Recieved status message from {data['payload']['deviceID']}, persisting to db.") + app.logger.info(f"Recieved status message from {data['payload']['deviceID']}, persisting to db.") db.session.merge(status_message) else: if len(ids) == 2: data['payload']['deviceID'] = ids[0] data['payload']['sensorID'] = ids[1] status_message = sensorschema.load(data['payload'], session=db.session, transient=True).data - LOGGER.info(f"Recieved status message from sensor {data['payload']['sensorID']}, persisting to db.") + app.logger.info(f"Recieved status message from sensor {data['payload']['sensorID']}, persisting to db.") db.session.merge(status_message) except Exception as e: db.session.rollback() - LOGGER.exception(e) + app.logger.exception(e) else: db.session.commit() diff --git a/src/resources.py b/src/resources.py index 909d955..12cdb1b 100644 --- a/src/resources.py +++ b/src/resources.py @@ -1,5 +1,4 @@ #!/usr/bin/env python3 -import logging from flask_restful import Resource from db import db from mqtt_flask_instance import mqtt @@ -16,8 +15,6 @@ __copyright__ = "Copyright 2020, Birbnetes Team" __module_name__ = "resources" __version__text__ = "1" -LOGGER = logging.getLogger(__name__) - class AllDevicesResource(Resource): """