better exception handling

This commit is contained in:
Blake Blackshear 2020-12-05 09:47:43 -06:00
parent 70352566a7
commit 6ded12c566
2 changed files with 17 additions and 8 deletions

View File

@ -147,17 +147,22 @@ class FrigateApp():
def start(self):
self.init_logger()
self.ensure_dirs()
try:
self.init_config()
self.ensure_dirs()
try:
self.init_config()
except Exception as e:
logger.error(f"Error parsing config: {e}")
self.log_process.terminate()
sys.exit(1)
self.set_log_levels()
self.init_queues()
self.init_database()
self.init_mqtt()
except Exception as e:
logger.error(f"Error parsing config: {e}")
logger.error(e)
self.log_process.terminate()
sys.exit(1)
self.set_log_levels()
self.init_queues()
self.init_database()
self.init_mqtt()
self.start_detectors()
self.start_detected_frames_processor()
self.start_camera_processors()

View File

@ -27,6 +27,10 @@ def create_mqtt_client(config: MqttConfig):
client.will_set(config.topic_prefix+'/available', payload='offline', qos=1, retain=True)
if not config.user is None:
client.username_pw_set(config.user, password=config.password)
client.connect(config.host, config.port, 60)
try:
client.connect(config.host, config.port, 60)
except Exception as e:
logger.error(f"Unable to connect to MQTT server: {e}")
raise
client.loop_start()
return client