Skip to content

Commit

Permalink
better log cleanup
Browse files Browse the repository at this point in the history
  • Loading branch information
github-actions committed Oct 28, 2024
1 parent 0207fd0 commit ad88024
Showing 1 changed file with 19 additions and 2 deletions.
21 changes: 19 additions & 2 deletions bbot/core/config/logger.py
Original file line number Diff line number Diff line change
Expand Up @@ -72,11 +72,28 @@ def __init__(self, core):
# Start the QueueListener
self.listener = logging.handlers.QueueListener(self.queue, *self.log_handlers.values())
self.listener.start()
atexit.register(self.listener.stop)
atexit.register(self.cleanup_logging)

self.log_level = logging.INFO

def stop_listener(self):
def cleanup_logging(self):
# Close the queue handler
self.queue_handler.close()

# Clean root logger
root_logger = logging.getLogger()
for handler in list(root_logger.handlers):
root_logger.removeHandler(handler)
handler.close()

# Clean all other loggers
for logger in logging.Logger.manager.loggerDict.values():
if hasattr(logger, 'handlers'): # Logger, not PlaceHolder
for handler in list(logger.handlers):
logger.removeHandler(handler)
handler.close()

# Stop queue listener
with suppress(Exception):
self.listener.stop()

Expand Down

0 comments on commit ad88024

Please sign in to comment.