logger.py 805 B

123456789101112131415161718192021222324252627282930313233343536
  1. """
  2. 日志配置
  3. """
  4. import sys
  5. from pathlib import Path
  6. from loguru import logger
  7. from app.config import settings
  8. # 创建日志目录
  9. log_dir = Path("logs")
  10. log_dir.mkdir(exist_ok=True)
  11. # 移除默认处理器
  12. logger.remove()
  13. # 控制台输出
  14. logger.add(
  15. sys.stderr,
  16. 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>",
  17. level=settings.LOG_LEVEL,
  18. )
  19. # 文件输出
  20. logger.add(
  21. log_dir / "app_{time:YYYY-MM-DD}.log",
  22. rotation="00:00",
  23. retention="30 days",
  24. format="{time:YYYY-MM-DD HH:mm:ss} | {level: <8} | {name}:{function}:{line} - {message}",
  25. level="DEBUG",
  26. encoding="utf-8",
  27. )
  28. def setup_logger():
  29. """设置日志"""
  30. return logger