import logging
import logging.handlers as HD
from config.setting import *
import time
class MyLogger():
def __init__(self):
#实例化logging对象
self.logger = logging.getLogger("api_autoTest")
self.logger.handlers.clear()
self.logger.setLevel(logging.INFO)
# 日志内容输出格式设置
fmt = '%(asctime)s %(filename)s %(funcName)s [line:%(lineno)d] %(levelname)s %(message)s'
datefmt = '%a, %d %b %Y %H:%M:%S'
format = logging.Formatter(fmt, datefmt)
curTime = time.strftime("%Y-%m-%d", time.localtime())
#输出日志到文件中,每次运行的日志放到同一日期中
if not self.logger.handlers:
fn = HD.TimedRotatingFileHandler(TEST_LOGS + "/Api_Autotest_log_{0}.log".format(curTime),backupCount=20,encoding="utf-8")#日志文件名命名
fn.setFormatter(format)#格式化程序
fn.setLevel(logging.INFO)#日志级别
#输出日志到控制台
hs = logging.StreamHandler()
hs.setFormatter(format)
hs.setLevel(logging.INFO)
self.logger.addHandler(fn)
self.logger.addHandler(hs)
#关闭渠道
# self.logger.removeHandler(handle_1)
# self.logger.removeHandler(hs)
#配置日志收集器 - 存在放哪个文件,
#定义各种日志级别的方法,方便在其它文件中调用
def info(self,msg):
self.logger.info(msg)
def debug(self,msg):
self.logger.debug(msg)
def error(self,msg):
self.logger.error(msg)
def warning(self,msg):
self.logger.warning(msg)
def critical(self,msg):
self.logger.critical(msg)
def exception(self,msg):
self.logger.exception(msg)
return self.logger
接口自动化-日志封装
最新推荐文章于 2024-07-24 22:02:08 发布