log_utils.py 913 B

1234567891011121314151617181920212223242526272829303132333435
  1. """
  2. 日志工具模块
  3. 提供统一的日志配置功能
  4. """
  5. import sys
  6. from pathlib import Path
  7. from loguru import logger
  8. def setup_logging(log_level: str = "INFO", log_file: str | None = None):
  9. """
  10. 设置日志配置
  11. Args:
  12. log_level: 日志级别(DEBUG, INFO, WARNING, ERROR)
  13. log_file: 日志文件路径(可选)
  14. """
  15. logger.remove()
  16. # 控制台输出
  17. logger.add(
  18. sys.stdout,
  19. level=log_level,
  20. 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>"
  21. )
  22. # 文件输出
  23. if log_file:
  24. logger.add(
  25. log_file,
  26. level="DEBUG",
  27. format="{time:YYYY-MM-DD HH:mm:ss} | {level: <8} | {name}:{function}:{line} - {message}",
  28. rotation="10 MB"
  29. )