import logging import os from logging.handlers import RotatingFileHandler def log_init(): # 确保logs目录存在 if not os.path.exists('logs'): os.makedirs('logs') # 创建格式器 formatter = logging.Formatter( fmt='%(asctime)s.%(msecs)03d %(name)s %(levelname)s %(module)s.%(funcName)s %(message)s', datefmt='%Y-%m-%d %H:%M:%S' ) # 配置根日志记录器 root_logger = logging.getLogger() # 清除现有的处理器,避免重复添加 root_logger.handlers.clear() # 创建文件处理器 file_handler = RotatingFileHandler( filename='logs/app.log', maxBytes=1024*1024, # 1MB backupCount=10, encoding='utf-8' # 指定编码 ) file_handler.setLevel(logging.INFO) file_handler.setFormatter(formatter) # 创建控制台处理器 console_handler = logging.StreamHandler() console_handler.setLevel(logging.INFO) console_handler.setFormatter(formatter) root_logger.setLevel(logging.INFO) root_logger.addHandler(file_handler) root_logger.addHandler(console_handler)