From d4141427e19e0cc526234be21d76c50a06e334bc Mon Sep 17 00:00:00 2001 From: shenjack <3695888@qq.com> Date: Mon, 6 Nov 2023 21:30:46 +0800 Subject: [PATCH] Add dectect in color support in color formatter --- example/logger/logger.py | 6 ++++++ lib_not_dr/logger/formatter/__init__.py | 2 +- lib_not_dr/logger/formatter/colors.py | 12 ++++++------ 3 files changed, 13 insertions(+), 7 deletions(-) diff --git a/example/logger/logger.py b/example/logger/logger.py index 23cbed4..83b09bd 100644 --- a/example/logger/logger.py +++ b/example/logger/logger.py @@ -18,3 +18,9 @@ if __name__ == '__main__': logger.warn('Hello World!') logger.error('Hello World!') logger.fatal('Hello World!') + + logger.info('this message if from tag', tag='test') + logger.debug('this debug log if from admin', tag='admin') + + logger.debug('and this message ends with none', end=' ') + logger.trace('so this message will be in the same line', tag='same line!') diff --git a/lib_not_dr/logger/formatter/__init__.py b/lib_not_dr/logger/formatter/__init__.py index 220483d..a56ea5b 100644 --- a/lib_not_dr/logger/formatter/__init__.py +++ b/lib_not_dr/logger/formatter/__init__.py @@ -22,7 +22,7 @@ class BaseFormatter(Options): sub_formatter: List['BaseFormatter'] = [] color_formatters: List['BaseColorFormatter'] = [] - default_template: str = '${log_time}|${logger_name}|${logger_tag}|${level}|${messages}' + default_template: str = '${log_time}|${logger_name}:${logger_tag}|${level}|${messages}' @classmethod def add_info(cls, match: str, to: str, description: str) -> str: diff --git a/lib_not_dr/logger/formatter/colors.py b/lib_not_dr/logger/formatter/colors.py index 4909680..4c9a377 100644 --- a/lib_not_dr/logger/formatter/colors.py +++ b/lib_not_dr/logger/formatter/colors.py @@ -4,7 +4,7 @@ # All rights reserved # ------------------------------- -from lib_not_dr.logger import LogLevel +from lib_not_dr.logger import LogLevel, COLOR_SUPPORT from lib_not_dr.logger.formatter import BaseFormatter from lib_not_dr.logger.structure import FormattingMessage @@ -81,7 +81,7 @@ class LevelColorFormatter(BaseColorFormatter): return cls.add_info('colored level', 'level', 'A colored level') def _format(self, message: FormattingMessage) -> FormattingMessage: - if isinstance(message[1].get('level'), int): + if isinstance(message[1].get('level'), int) or not COLOR_SUPPORT: return message # 获取颜色 color = self.get_color(message) @@ -119,7 +119,7 @@ class LoggerColorFormatter(BaseColorFormatter): return cls.add_info('colored logger name', 'logger name', 'A colored logger name') def _format(self, message: FormattingMessage) -> FormattingMessage: - if message[1].get('logger_name') is None: + if message[1].get('logger_name') is None or not COLOR_SUPPORT: return message # 获取颜色 color = self.get_color(message) @@ -159,7 +159,7 @@ class TimeColorFormatter(BaseColorFormatter): return cls.add_info('colored time', 'time', 'A colored time') def _format(self, message: FormattingMessage) -> FormattingMessage: - if message[1].get('log_time') is None: + if message[1].get('log_time') is None or not COLOR_SUPPORT: return message # 获取颜色 color = self.get_color(message) @@ -202,7 +202,7 @@ class TraceColorFormatter(BaseColorFormatter): return info def _format(self, message: FormattingMessage) -> FormattingMessage: - if message[0].stack_trace is None: + if message[0].stack_trace is None or not COLOR_SUPPORT: return message # 获取颜色 color = self.get_color(message) @@ -242,7 +242,7 @@ class MessageColorFormatter(BaseColorFormatter): return cls.add_info('colored message', 'message', 'A colored message') def _format(self, message: FormattingMessage) -> FormattingMessage: - if message[1].get('messages') is None: + if message[1].get('messages') is None or not COLOR_SUPPORT: return message # 获取颜色 color = self.get_color(message)