import logging import sys from pathlib import Path from datetime import datetime # 创建日志目录 log_dir = Path("logs") log_dir.mkdir(exist_ok=True) # 日志文件名(按日期) log_file = log_dir / f"app_{datetime.now().strftime('%Y%m%d')}.log" # 配置日志格式 log_format = "%(asctime)s - %(name)s - %(levelname)s - %(message)s" date_format = "%Y-%m-%d %H:%M:%S" # 创建日志记录器 logger = logging.getLogger("shudao-chat") logger.setLevel(logging.INFO) # 控制台处理器 console_handler = logging.StreamHandler(sys.stdout) console_handler.setLevel(logging.INFO) console_formatter = logging.Formatter(log_format, date_format) console_handler.setFormatter(console_formatter) # 文件处理器 file_handler = logging.FileHandler(log_file, encoding="utf-8") file_handler.setLevel(logging.INFO) file_formatter = logging.Formatter(log_format, date_format) file_handler.setFormatter(file_formatter) # 添加处理器 logger.addHandler(console_handler) logger.addHandler(file_handler) def get_logger(name: str = "shudao-chat"): """获取日志记录器""" return logging.getLogger(name)