from loguru import logger
import os
class Logger:
"""日志管理工具"""
def __init__(self, log_file: str = "parsing.log"):
"""
初始化日志配置
Args:
log_file: 日志文件路径
"""
# 移除默认的控制台输出
logger.remove()
# 添加控制台输出
logger.add(
sink=lambda msg: print(msg, end=""),
level="INFO",
format="{time:YYYY-MM-DD HH:mm:ss} | {level: <8} | {name}:{function}:{line} - {message}"
)
# 添加文件输出
logger.add(
sink=log_file,
level="DEBUG",
rotation="100 MB",
compression="zip",
format="{time:YYYY-MM-DD HH:mm:ss} | {level: <8} | {name}:{function}:{line} - {message}"
)
@property
def log(self):
"""
获取logger实例
Returns:
logger: loguru logger实例
"""
return logger
# 创建全局日志实例
logger_instance = Logger()
log = logger_instance.log