import logging import os from datetime import datetime class LoggerConfig: """ 日志配置类,用于初始化和配置logging """ @staticmethod def setup_logger(log_level=logging.INFO): """ 设置日志记录器 Args: log_level: 日志级别,默认为INFO Returns: logger: 配置好的logger对象 """ # 创建log目录 log_dir = 'log' if not os.path.exists(log_dir): os.makedirs(log_dir) # 生成日志文件名,使用当前日期 current_date = datetime.now().strftime('%Y-%m-%d') log_file = os.path.join(log_dir, f'autologon_{current_date}.log') # 创建logger logger = logging.getLogger('autoLogon') logger.setLevel(log_level) # 清除已有的handler if logger.handlers: for handler in logger.handlers: logger.removeHandler(handler) # 创建文件handler file_handler = logging.FileHandler(log_file, encoding='utf-8') file_handler.setLevel(log_level) # 创建控制台handler console_handler = logging.StreamHandler() console_handler.setLevel(log_level) # 定义日志格式 formatter = logging.Formatter( '%(asctime)s - %(name)s - %(levelname)s - %(filename)s:%(lineno)d - %(message)s' ) file_handler.setFormatter(formatter) console_handler.setFormatter(formatter) # 添加handler到logger logger.addHandler(file_handler) logger.addHandler(console_handler) return logger # 创建全局logger实例 global_logger = LoggerConfig.setup_logger()