logger.py 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. import logging
  2. import os
  3. from datetime import datetime
  4. def get_logger(name, log_dir='.aceflow/logs'):
  5. """获取日志记录器"""
  6. # 创建日志目录
  7. os.makedirs(log_dir, exist_ok=True)
  8. # 日志文件名
  9. log_file = os.path.join(log_dir, f"{datetime.now().strftime('%Y%m%d')}.log")
  10. # 配置日志
  11. logger = logging.getLogger(name)
  12. logger.setLevel(logging.DEBUG)
  13. # 避免重复添加处理器
  14. if logger.handlers:
  15. return logger
  16. # 文件处理器
  17. file_handler = logging.FileHandler(log_file)
  18. file_handler.setLevel(logging.DEBUG)
  19. # 控制台处理器
  20. console_handler = logging.StreamHandler()
  21. console_handler.setLevel(logging.INFO)
  22. # 格式化器
  23. formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
  24. file_handler.setFormatter(formatter)
  25. console_handler.setFormatter(formatter)
  26. # 添加处理器
  27. logger.addHandler(file_handler)
  28. logger.addHandler(console_handler)
  29. return logger