import os import time import json import logging from config import log_root_path # 封装logging class LogConfig(): def __init__(self, log_path, logger_name): ''' 指定保存日志的文件路径,日志级别,以及调用文件 将日志存入到指定的文件中 ''' # 创建logger对象 self.logger = logging.getLogger(logger_name) self.log_path = log_path # 设置日志等级 self.logger.setLevel(logging.INFO) # DEBUG # 追加写入文件a ,设置utf-8编码防止中文写入乱码 fh = logging.FileHandler(self.log_path, mode='a', encoding='utf8', delay=True) # 向文件输出的日志级别 fh.setLevel(logging.INFO) # 向文件输出的日志信息格式 formatter_dict = { "sys-msg": "%(asctime)s-%(filename)s-%(lineno)s-%(levelname)s", "log-msg": "%(message)s", } formatter = logging.Formatter(json.dumps(formatter_dict)) # 将日志信息格式加载到日志文件中 fh.setFormatter(formatter) # 加载文件到logger对象中 self.logger.addHandler(fh) # 获取生成日志读写操作 def get_log(self): return self.logger # 重置刷新日志 def log_reset(self): file_list = os.listdir(log_root_path) file_path_list = [os.path.join(log_root_path, file) for file in file_list] # 删除路径名称文件 if len(file_path_list) > 0: for ele in file_path_list: os.remove(ele[0])