From 79617d400778152d35543957466f982c218253e0 Mon Sep 17 00:00:00 2001 From: kallen Date: Mon, 4 Nov 2024 14:59:56 +0800 Subject: [PATCH 1/3] style: colorize logger format with rich handler --- app/logger.py | 38 +++++++++++++++++++++++++++++++++++--- 1 file changed, 35 insertions(+), 3 deletions(-) diff --git a/app/logger.py b/app/logger.py index 4ca0ea88e..6be6e9637 100644 --- a/app/logger.py +++ b/app/logger.py @@ -1,9 +1,15 @@ import logging from logging.handlers import MemoryHandler from collections import deque +from rich import pretty +from rich.theme import Theme +from rich.console import Console +from rich.logging import RichHandler + logs = None -formatter = logging.Formatter("%(asctime)s - %(name)s - %(levelname)s - %(message)s") +LOGFMT = "%(asctime)s %(levelname)s [%(filename)s:%(lineno)s] %(message)s" +formatter = logging.Formatter(LOGFMT) def get_logs(): @@ -19,8 +25,7 @@ def setup_logger(log_level: str = 'INFO', capacity: int = 300): logger = logging.getLogger() logger.setLevel(log_level) - stream_handler = logging.StreamHandler() - stream_handler.setFormatter(logging.Formatter("%(message)s")) + stream_handler = get_rich_hander(log_level) logger.addHandler(stream_handler) # Create a memory handler with a deque as its buffer @@ -29,3 +34,30 @@ def setup_logger(log_level: str = 'INFO', capacity: int = 300): memory_handler.buffer = logs memory_handler.setFormatter(formatter) logger.addHandler(memory_handler) + +def get_rich_hander(log_level: str = "INFO") -> RichHandler: + console = Console( + log_time=True, + log_time_format="%Y-%m-%d %H:%M:%S", + theme=Theme({ + "log.time": "green", + "inspect.value.border": "black", + "traceback.border": "black", + "traceback.border.syntax_error": "black", + }), + ) + + pretty.install(console=console) + handler = RichHandler( + console=console, + level=log_level, + markup=False, + show_time=True, + show_level=True, + show_path=True, + rich_tracebacks=True, + enable_link_path=False, + omit_repeated_times=False, + log_time_format="%Y-%m-%d %H:%M:%S", + ) + return handler From 04471a6eed78d17c1f460155b4c3bdbaabaff5f9 Mon Sep 17 00:00:00 2001 From: kallen Date: Mon, 4 Nov 2024 15:03:50 +0800 Subject: [PATCH 2/3] style: colorize logger format with rich handler --- app/logger.py | 1 + 1 file changed, 1 insertion(+) diff --git a/app/logger.py b/app/logger.py index 6be6e9637..2f19bcad7 100644 --- a/app/logger.py +++ b/app/logger.py @@ -35,6 +35,7 @@ def setup_logger(log_level: str = 'INFO', capacity: int = 300): memory_handler.setFormatter(formatter) logger.addHandler(memory_handler) + def get_rich_hander(log_level: str = "INFO") -> RichHandler: console = Console( log_time=True, From 3759e40a041e89d5c9931d6d4f8d98a12dbee848 Mon Sep 17 00:00:00 2001 From: kallen Date: Tue, 5 Nov 2024 22:58:51 +0800 Subject: [PATCH 3/3] chore: update requirement package --- requirements.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/requirements.txt b/requirements.txt index 4c2c0b2b2..4b7ed4193 100644 --- a/requirements.txt +++ b/requirements.txt @@ -18,3 +18,4 @@ psutil kornia>=0.7.1 spandrel soundfile +rich>=13.9.3