0
点赞
收藏
分享

微信扫一扫

pytest框架--日志模块封装

老王420 2022-01-08 阅读 86
python

日志模块是框架的一个重点,先记录下来,万一项目用到了呢?

import datetime
import logging
import os.path
import sys
from os import path



def get_logger(log_name):                          # 封装日志操作,在最后调用
    logger = logging.getLogger(log_name)           # 创建日志器
    sh = logging.StreamHandler(sys.stdout)         # 创建控制台处理器
    sh.setFormatter(logging.Formatter('%(asctime)s|%(levelname)s|%(message)s')) # 格式器
    logger.addHandler(sh)                          # 将日志信息显示到控制台

    log_path = path.abspath(path.dirname(__file__) + '/../../../NVRLog')   # 文本log,当前项目下创建NVRlog文件夹,可自定义

    if not os.path.exists(log_path):
        os.makedirs(log_path)
    log_path = os.path.join(log_path, '%s.log' % log_name)
    if not os.path.exists(log_path):
        open(log_path, 'w')                                     # 进入log路径,写入信息

    fh = logging.FileHandler(log_path)           # 创建文本处理器
    fh.setFormatter(logging.Formatter('%(asctime)s %(levelname)s %(filename)s[%(lineno)d] - %(message)s'))   # 格式器
    logger.addHandler(fh)
    logger.setLevel(20)           # logger等级
    return logger




run_time = 'runtime_' + str(datetime.datetime.now().strftime("%Y%m%d"))         # 构建日志runtime_xxx.log的名称
debugLogger = get_logger(log_name=run_time)      # 往后直接用debugLogger调用日志模块
举报

相关推荐

0 条评论