1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- 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])
|