添加日志格式颜色

This commit is contained in:
2025-12-13 23:12:47 +08:00
parent 79a5f78fea
commit 668f82bab9

View File

@@ -2,6 +2,7 @@ import logging
from logging.handlers import RotatingFileHandler
from datetime import datetime
from pathlib import Path
import colorlog
def setup_logger(log_file=None, log_level=logging.INFO, max_bytes=10485760, backup_count=5):
"""
@@ -34,10 +35,12 @@ def setup_logger(log_file=None, log_level=logging.INFO, max_bytes=10485760, back
today = datetime.now().strftime('%Y-%m-%d')
log_file = log_dir / f'{today}.log'
# 创建格式化器
formatter = logging.Formatter(
'[%(asctime)s] [%(levelname)s] [%(filename)s:%(lineno)d] - %(message)s'
)
# 创建格式
log_format = '[%(asctime)s] [%(levelname)s] [%(filename)s:%(lineno)d] - %(message)s'
color_format = '%(log_color)s' + log_format
# 有颜色的日志格式化器
color_formatter = colorlog.ColoredFormatter(color_format, reset=True)
# 创建文件处理器(带轮转)
file_handler = RotatingFileHandler(
@@ -47,12 +50,12 @@ def setup_logger(log_file=None, log_level=logging.INFO, max_bytes=10485760, back
encoding='utf-8'
)
file_handler.setLevel(log_level)
file_handler.setFormatter(formatter)
file_handler.setFormatter(color_formatter)
# 创建控制台处理器
console_handler = logging.StreamHandler()
console_handler.setLevel(log_level)
console_handler.setFormatter(formatter)
console_handler.setFormatter(color_formatter)
# 添加处理器到logger
logger.addHandler(file_handler)