Пример #1
0
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
    _LOGGER.info(
        'Exiting allowing jobs to finish. If you need force exit use kill')
Пример #2
0
    _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):
        running = False
        _LOGGER.info(
            'Finish current jobs and shut down. If you need force exit use kill'
        )
    except Exception as e:
        logger.log_exception(_LOGGER,
                             "Fatal error while executing worker command: %s",