From 960334d0876bcc9590f39c111f9e1d8723568dbf Mon Sep 17 00:00:00 2001 From: Arksine Date: Mon, 31 Aug 2020 15:22:48 -0400 Subject: [PATCH] moonraker: stop the background logger prior to exiting This allows all records on the queue to be logged before exiting the program. Signed-off-by: Eric Callahan --- moonraker/moonraker.py | 5 ++++- moonraker/utils.py | 1 + 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/moonraker/moonraker.py b/moonraker/moonraker.py index 482514e..bbf999b 100644 --- a/moonraker/moonraker.py +++ b/moonraker/moonraker.py @@ -454,13 +454,14 @@ def main(): # Setup Logging log_file = os.path.normpath(os.path.expanduser(cmd_line_args.logfile)) cmd_line_args.logfile = log_file - utils.setup_logging(log_file) + ql = utils.setup_logging(log_file) if sys.version_info < (3, 7): msg = f"Moonraker requires Python 3.7 or above. " \ f"Detected Version: {sys.version}" logging.info(msg) print(msg) + ql.stop() exit(1) # Start IOLoop and Server @@ -469,6 +470,7 @@ def main(): server = Server(cmd_line_args) except Exception: logging.exception("Moonraker Error") + ql.stop() exit(1) try: server.start() @@ -477,6 +479,7 @@ def main(): logging.exception("Server Running Error") io_loop.close(True) logging.info("Server Shutdown") + ql.stop() if __name__ == '__main__': diff --git a/moonraker/utils.py b/moonraker/utils.py index 61dd898..75b7835 100644 --- a/moonraker/utils.py +++ b/moonraker/utils.py @@ -80,3 +80,4 @@ def setup_logging(log_file): file_hdlr.setFormatter(formatter) listener = logging.handlers.QueueListener(queue, file_hdlr) listener.start() + return listener