Beispiel #1
0
_LOGGER = logger.get()
if parsed.quiet:
    _LOGGER.setLevel(logging.WARNING)
elif parsed.debug:
    _LOGGER.setLevel(logging.DEBUG)
    logger.enable_debug_formatter()
else:
    _LOGGER.setLevel(logging.INFO)
logger.suppress_update_failures(parsed.suppress)

_LOGGER.info('Starting')

global_topic_prefix = settings['mqtt'].get('topic_prefix')

mqtt = MqttClient(settings['mqtt'])
manager = WorkersManager(settings['manager'])
manager.register_workers(global_topic_prefix).start(mqtt)

running = True

while running:
    try:
        mqtt.publish(_WORKERS_QUEUE.get(timeout=10).execute())
    except queue.Empty:  # Allow for SIGINT processing
        pass
    except TimeoutError as e:
        logger.log_exception(
            _LOGGER,
            str(e) if str(e) else 'Timeout while executing worker command',
            suppress=True)
    except (KeyboardInterrupt, SystemExit):
Beispiel #2
0
parser = argparse.ArgumentParser()
group = parser.add_mutually_exclusive_group()
group.add_argument('-d', '--debug', action='store_true', default=False)
group.add_argument('-q', '--quiet', action='store_true', default=False)
parsed = parser.parse_args()

if parsed.debug:
    _LOGGER.setLevel(logging.DEBUG)
else:
    _LOGGER.setLevel(logging.INFO)

_LOGGER.debug('Starting')

mqtt = MqttClient(settings['mqtt'])
manager = WorkersManager()
manager.register_workers(settings['manager']).start(mqtt)

running = True

try:
    while running:
        try:
            mqtt.publish(_WORKERS_QUEUE.get(block=True).execute())
        except (KeyboardInterrupt, SystemExit):
            raise
        except Exception as e:
            if not parsed.quiet:
                _LOGGER.exception(e)
except KeyboardInterrupt:
    running = False
Beispiel #3
0
    _LOGGER.setLevel(logging.WARNING)
elif parsed.debug:
    _LOGGER.setLevel(logging.DEBUG)
    logger.enable_debug_formatter()
else:
    _LOGGER.setLevel(logging.INFO)
logger.suppress_update_failures(parsed.suppress)

_LOGGER.info("Starting")

workers_requirements.verify()

global_topic_prefix = settings["mqtt"].get("topic_prefix")

mqtt = MqttClient(settings["mqtt"])
manager = WorkersManager(settings["manager"], mqtt)
manager.register_workers(global_topic_prefix)
manager.start()

running = True

while running:
    try:
        mqtt.publish(_WORKERS_QUEUE.get(timeout=10).execute())
    except queue.Empty:  # Allow for SIGINT processing
        pass
    except (WorkerTimeoutError, DeviceTimeoutError) as e:
        logger.log_exception(
            _LOGGER,
            str(e) if str(e) else "Timeout while executing worker command",
            suppress=True,