diff --git a/system/manager/manager.py b/system/manager/manager.py index 2d80c78ff..15f8a2b79 100755 --- a/system/manager/manager.py +++ b/system/manager/manager.py @@ -155,6 +155,10 @@ def manager_thread() -> None: print(running) cloudlog.debug(running) + if 'ui' in managed_processes and managed_processes['ui'].proc is not None and not managed_processes['ui'].proc.is_alive(): + cloudlog.error(f'Restarting UI (exitcode {managed_processes["ui"].proc.exitcode})') + managed_processes['ui'].restart() + # send managerState msg = messaging.new_message('managerState', valid=True) msg.managerState.processes = [p.get_process_state_msg() for p in managed_processes.values()]