1234567891011121314151617181920212223242526272829303132333435363738 |
- import logging
- import os
- from datetime import datetime
- def get_logger(name, log_dir='.aceflow/logs'):
- """获取日志记录器"""
- # 创建日志目录
- os.makedirs(log_dir, exist_ok=True)
-
- # 日志文件名
- log_file = os.path.join(log_dir, f"{datetime.now().strftime('%Y%m%d')}.log")
-
- # 配置日志
- logger = logging.getLogger(name)
- logger.setLevel(logging.DEBUG)
-
- # 避免重复添加处理器
- if logger.handlers:
- return logger
-
- # 文件处理器
- file_handler = logging.FileHandler(log_file)
- file_handler.setLevel(logging.DEBUG)
-
- # 控制台处理器
- console_handler = logging.StreamHandler()
- console_handler.setLevel(logging.INFO)
-
- # 格式化器
- formatter = logging.Formatter('%(asctime)s - %(name)s - %(levelname)s - %(message)s')
- file_handler.setFormatter(formatter)
- console_handler.setFormatter(formatter)
-
- # 添加处理器
- logger.addHandler(file_handler)
- logger.addHandler(console_handler)
-
- return logger
|