python--logging类编写

2021/7/20 9:06:33

本文主要是介绍python--logging类编写,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

在编写自动化测试过程中,很多时候需要打印出一些信息或者返回值来检查是否跟自己预期的一致。于是单独写了个日志类来使用,非常方便哈

# coding:utf-8
import logging
import os.path
import time


class Logger(object):
    def __init__(self, logger):
        """
        定义保存日志的文件路径,日志级别,以及调用文件
        将日志存入指定文件中
        将日志输出到控制台中
        :param logger:
        """
        # 1、创建一个logger
        self.logger = logging.getLogger(logger)  # 返回一个logger实例
        self.logger.setLevel(logging.DEBUG)  # 设置logger级别为debug

        # 2、创建一个handler,用于写入日志文件
        rq = time.strftime('%Y%m%d%H%M',time.localtime(time.time()))
        log_path = os.path.dirname(os.getcwd()) + '/logs/'
        log_name = log_path + rq + '.log'
        fh = logging.FileHandler(log_name, mode='w')
        fh.setLevel(logging.INFO)

        # 3、再创建yig handler,用于输出到控制台
        ch = logging.StreamHandler()
        ch.setLevel(logging.INFO)

        # 4、定义handler的输出格式
        formatter = logging.Formatter('%(asctime)s - %(filename)s[line:%(lineno)d] - %(levelname)s : %(message)s')
        fh.setFormatter(formatter)
        ch.setFormatter(formatter)

        # 5、将logger添加到handler里面
        self.logger.addHandler(fh)
        self.logger.addHandler(ch)

    def getlog(self):
        return self.logger






这篇关于python--logging类编写的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程