supervisord = _create_supervisord_proxy(config)
supervisord.reloadConfig()
except Fault as e:
- raise SubprocessControllerError("supervisord reload failed") from e
+ raise SubprocessControllerError(f"supervisord reload failed: {e}") from e
@async_in_a_thread
from knot_resolver.constants import CONFIG_FILE, USER
from knot_resolver.controller import get_best_controller_implementation
-from knot_resolver.controller.exceptions import SubprocessControllerExecError
+from knot_resolver.controller.exceptions import SubprocessControllerError, SubprocessControllerExecError
from knot_resolver.controller.interface import SubprocessType
from knot_resolver.controller.registered_workers import command_single_registered_worker
from knot_resolver.datamodel import kres_config_json_schema
# and finally exec what we were told to exec
os.execl(*e.exec_args)
+ except SubprocessControllerError as e:
+ logger.error(f"Server initialization failed: {e}")
+ return 1
+
except KresManagerException as e:
# We caught an error with a pretty error message. Just print it and exit.
logger.error(e)