Files
AutoLogon/logger_config.py
2025-10-18 16:12:56 +08:00

61 lines
1.8 KiB
Python

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()