"""
日志配置工具
"""
import sys
from loguru import logger
from config import settings
def setup_logger():
"""配置日志系统"""
# 移除默认的日志处理器
logger.remove()
# 添加控制台输出
logger.add(
sys.stdout,
level=settings.log_level,
format="{time:YYYY-MM-DD HH:mm:ss} | "
"{level: <8} | "
"{name}:{function}:{line} - "
"{message}",
colorize=True
)
# 添加文件输出
logger.add(
settings.log_file,
level=settings.log_level,
format="{time:YYYY-MM-DD HH:mm:ss} | {level: <8} | {name}:{function}:{line} - {message}",
rotation="1 day",
retention="30 days",
compression="zip",
encoding="utf-8"
)
# 添加错误日志文件
error_log_file = settings.log_file.replace('.log', '_error.log')
logger.add(
error_log_file,
level="ERROR",
format="{time:YYYY-MM-DD HH:mm:ss} | {level: <8} | {name}:{function}:{line} - {message}",
rotation="1 day",
retention="30 days",
compression="zip",
encoding="utf-8"
)
logger.info("日志系统初始化完成")
def get_logger(name: str = None):
"""获取日志记录器"""
if name:
return logger.bind(name=name)
return logger