From b6867d956ce98597572f3b6ad748b35d23c7018c Mon Sep 17 00:00:00 2001 From: Matthias Date: Sun, 29 Dec 2024 11:42:36 +0100 Subject: [PATCH] feat: improve Rich traceback rendering --- freqtrade/loggers/ft_rich_handler.py | 16 ++++++++++------ 1 file changed, 10 insertions(+), 6 deletions(-) diff --git a/freqtrade/loggers/ft_rich_handler.py b/freqtrade/loggers/ft_rich_handler.py index 977c3184f..e3c273c81 100644 --- a/freqtrade/loggers/ft_rich_handler.py +++ b/freqtrade/loggers/ft_rich_handler.py @@ -7,6 +7,11 @@ from rich.traceback import Traceback class FtRichHandler(Handler): + """ + Basic colorized logging handler using Rich. + Does not support all features of the standard logging handler, and uses a hard-coded log format + """ + def __init__(self, console: Console, *args, **kwargs) -> None: super().__init__(*args, **kwargs) self._console = console @@ -21,16 +26,15 @@ class FtRichHandler(Handler): name = Text(record.name, style="violet") log_level = Text(record.levelname, style=f"logging.level.{record.levelname.lower()}") gray_sep = Text(" - ", style="gray46") + + self._console.print( + Text() + log_time + gray_sep + name + gray_sep + log_level + gray_sep + msg + ) + tb = None if record.exc_info: exc_type, exc_value, exc_traceback = record.exc_info tb = Traceback.from_exception(exc_type, exc_value, exc_traceback) - self._console.print(Text() + log_time + gray_sep + name + gray_sep + log_level) self._console.print(tb) - else: - # pass - self._console.print( - Text() + log_time + gray_sep + name + gray_sep + log_level + gray_sep + msg - ) self.flush() except RecursionError: