美化调试日志格式
This commit is contained in:
parent
9c42b2e100
commit
ba31f5adc7
@ -15,13 +15,24 @@ _local = {}
|
|||||||
# 统一 Jingrow 日志记录器(仅为本模块及调用方提供最小可用输出,不修改全局 root logger)
|
# 统一 Jingrow 日志记录器(仅为本模块及调用方提供最小可用输出,不修改全局 root logger)
|
||||||
_root_logger = logging.getLogger("jingrow")
|
_root_logger = logging.getLogger("jingrow")
|
||||||
|
|
||||||
|
# 简单高效:用 addLevelName 给级别上色;使用标准 Formatter 调整顺序为“时间在最后”
|
||||||
|
_ANSI = {
|
||||||
|
'DEBUG': '\x1b[36m', # cyan
|
||||||
|
'INFO': '\x1b[32m', # green
|
||||||
|
'WARNING': '\x1b[33m', # yellow
|
||||||
|
'ERROR': '\x1b[31m', # red
|
||||||
|
'CRITICAL': '\x1b[41m' # red background
|
||||||
|
}
|
||||||
|
for _lvl in list(_ANSI.keys()):
|
||||||
|
_code = _ANSI[_lvl]
|
||||||
|
logging.addLevelName(getattr(logging, _lvl), f"{_code}{_lvl}\x1b[0m")
|
||||||
|
|
||||||
def _ensure_logging_configured() -> None:
|
def _ensure_logging_configured() -> None:
|
||||||
|
|
||||||
if not _root_logger.handlers:
|
if not _root_logger.handlers:
|
||||||
handler = logging.StreamHandler()
|
handler = logging.StreamHandler()
|
||||||
formatter = logging.Formatter(
|
# 模块名 - 级别(已上色) - 消息 - 时间
|
||||||
fmt="%(asctime)s %(levelname)s %(name)s - %(message)s"
|
formatter = logging.Formatter("%(name)s - %(levelname)s - %(message)s - %(asctime)s")
|
||||||
)
|
|
||||||
handler.setFormatter(formatter)
|
handler.setFormatter(formatter)
|
||||||
_root_logger.addHandler(handler)
|
_root_logger.addHandler(handler)
|
||||||
# 从配置文件(Config)读取日志级别(默认 INFO)
|
# 从配置文件(Config)读取日志级别(默认 INFO)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user