一、为啥要在自动化框架上增加日志模块 ·记录程序运行信息 ·方便定位问题 二、python日志模块logging ·DEBUG ·INFO ·WARNING ·ERROR 废话不罗嗦,直接上代码(直接百度敲的OKO) #!/usr/bin/
一、为啥要在自动化框架上增加日志模块
·记录程序运行信息
·方便定位问题
二、python日志模块logging
·DEBUG
·INFO
·WARNING
·ERROR
废话不罗嗦,直接上代码(直接百度敲的OKO)
#!/usr/bin/env python# -*- coding: UTF-8 -*-
"""
@Project :Pytest
@File :log_util.py
@IDE :PyCharm
@Author :zhou
@Date :2022/8/7 19:15
"""
import logging
import os
import time
root_path = os.path.dirname(os.path.dirname(os.path.realpath(__file__)))
print(root_path)
log_path = os.path.join(root_path,"log")
print(log_path)
class Logger:
def __init__(self):
# 定义日志位置和文件名
self.logname = os.path.join(log_path, "{}.log".format(time.strftime("%Y%m%d")))
# 定义一个日志容器
self.logger = logging.getLogger("log")
# 设置日志打印的级别
self.logger.setLevel(logging.DEBUG)
# 创建日志输入的格式
self.formater = logging.Formatter(
'[%(asctime)s][%(filename)s %(lineno)d[%(levelname)s]:%(message)s]'
)
# 创建日志处理器,用来存放日志文件
self.filelogger = logging.FileHandler(self.logname, mode='a', encoding="utf-8")
# 创建日志处理器,在控制台打印
self.console = logging.StreamHandler()
# 设置控制台打印日志界别
self.console.setLevel(logging.DEBUG)
# 文件存放日志级别
self.filelogger.setLevel(logging.DEBUG)
# 文件存放日志格式
self.filelogger.setFormatter(self.formater)
# 控制台打印日志格式
self.console.setFormatter(self.formater)
# 将日志输出渠道添加到日志收集器中
self.logger.addHandler(self.filelogger)
self.logger.addHandler(self.console)
logger = Logger().logger
if __name__ == '__main__':
logger.debug("我打印debug日志")