# -*- coding: utf-8 -*- """ 基于LOGGING封装日志记录器 """ # 加载模块 import logging from logging.handlers import RotatingFileHandler """ 类说明:封装日志记录器 """ class Logger(object): def __init__(self, log_name: str): # 日志文件名称 self.log_name = f"{log_name}.log" # 创建日志记录器 self.logger = logging.getLogger(self.log_name) self.logger.setLevel(logging.INFO) # 设置日志信息格式 self.formatter = logging.Formatter( "%(asctime)s - %(levelname)s - %(message)s", datefmt="%y-%m-%d %H:%M:%S" ) # 控制台输出 self.stream_handle = logging.StreamHandler() self.stream_handle.setLevel("INFO") self.stream_handle.setFormatter(self.formatter) # 文件输出 self.file_handle = RotatingFileHandler( filename=self.log_name, maxBytes=5 * 1024 * 1024, encoding="utf-8" ) self.file_handle.setLevel("INFO") self.file_handle.setFormatter(self.formatter) # 添加控制台和文件日志记录 if not self.logger.handlers: self.logger.addHandler(self.stream_handle) self.logger.addHandler(self.file_handle) def log(self, message): return self.logger.info(message)