From 25664388b35e2fb4de2cfac3f29ae7eebed4933a Mon Sep 17 00:00:00 2001 From: "John D. Pope" Date: Mon, 7 Apr 2025 21:52:52 +1000 Subject: [PATCH] Update logger.py --- app/logger.py | 31 +++++++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) diff --git a/app/logger.py b/app/logger.py index 3d26d98fe..04105bfd7 100644 --- a/app/logger.py +++ b/app/logger.py @@ -4,11 +4,36 @@ import io import logging import sys import threading +from rich.traceback import install +from rich.console import Console +from rich.theme import Theme +from rich.logging import RichHandler logs = None stdout_interceptor = None stderr_interceptor = None +from rich.traceback import install +# Enable rich tracebacks globally +install() + +# Configure rich console +console = Console(force_terminal=True) + +# Set up handler +rich_handler = RichHandler(console=console, rich_tracebacks=True, markup=True) + +# file_handler = logging.FileHandler("project.log") # Log to a file +# file_handler.setLevel(log_level) + + + + +from rich.traceback import install +# Enable rich tracebacks globally +install() + + class LogInterceptor(io.TextIOWrapper): def __init__(self, stream, *args, **kwargs): @@ -56,6 +81,12 @@ def setup_logger(log_level: str = 'INFO', capacity: int = 300, use_stdout: bool if logs: return + logging.basicConfig( + level=log_level, + format="%(message)s", + datefmt="[%X]", + handlers=[rich_handler] #file_handler + ) # Override output streams and log to buffer logs = deque(maxlen=capacity)