35 lines
807 B
Python
35 lines
807 B
Python
"""
|
|
日志配置
|
|
"""
|
|
import sys
|
|
from pathlib import Path
|
|
from loguru import logger
|
|
from app.core.config import settings
|
|
|
|
# 移除默认处理器
|
|
logger.remove()
|
|
|
|
# 控制台输出(带颜色)
|
|
logger.add(
|
|
sys.stdout,
|
|
format="<green>{time:YYYY-MM-DD HH:mm:ss}</green> | <level>{level: <8}</level> | <cyan>{name}</cyan>:<cyan>{function}</cyan>:<cyan>{line}</cyan> - <level>{message}</level>",
|
|
level=settings.LOG_LEVEL,
|
|
colorize=True,
|
|
)
|
|
|
|
# 文件输出
|
|
log_dir = Path(settings.LOG_DIR)
|
|
log_dir.mkdir(exist_ok=True)
|
|
|
|
logger.add(
|
|
settings.LOG_FILE,
|
|
format="{time:YYYY-MM-DD HH:mm:ss} | {level: <8} | {name}:{function}:{line} - {message}",
|
|
level=settings.LOG_LEVEL,
|
|
rotation="100 MB",
|
|
retention="30 days",
|
|
compression="zip",
|
|
encoding="utf-8",
|
|
)
|
|
|
|
__all__ = ["logger"]
|