logger.py 1014 B

123456789101112131415161718192021222324252627282930
  1. import logging
  2. from logging.handlers import TimedRotatingFileHandler
  3. import sys
  4. # 创建日志器
  5. logger = logging.getLogger(__name__)
  6. logger.setLevel(logging.INFO)
  7. # 创建控制台处理器 (StreamHandler)
  8. console_handler = logging.StreamHandler(sys.stdout)
  9. console_handler.setLevel(logging.INFO)
  10. # 创建按天分割的文件处理器 (TimedRotatingFileHandler)
  11. file_handler = TimedRotatingFileHandler(
  12. filename='logs/app.log', # 日志文件路径
  13. when='midnight', # 每天午夜生成新的日志文件
  14. interval=1, # 间隔1天
  15. backupCount=7, # 保留最近7天的日志文件
  16. encoding='utf-8' # 文件编码
  17. )
  18. file_handler.setLevel(logging.INFO)
  19. # 创建日志格式
  20. formatter = logging.Formatter('%(asctime)s - %(levelname)s - %(message)s')
  21. console_handler.setFormatter(formatter)
  22. file_handler.setFormatter(formatter)
  23. # 添加处理器到日志器
  24. logger.addHandler(console_handler)
  25. logger.addHandler(file_handler)