python自动化--项目如何设置全局日志
1、常规路径下配置日志读取并实例化
坑点:文件路径读取;python这块的很多报错都是因为路径读错了导致的,调试时可以加日志观测
common/log.py
# !/usr/bin/python3
# -*- coding:utf-8 -*-
from os import path
import logging
import logging.config
def get_logger(cls, name='root'):
log_conf_file = path.join(path.abspath(path.dirname(path.dirname(__file__))),
"config/log.ini")
logging.config.fileConfig(log_conf_file)
return logging.getLogger(name)
LOG = get_logger(__name__)
config/log.ini
[loggers] keys=root [handlers] keys=rotatingFileHandler,streamHandler,errorHandler [formatters] keys=simpleFmt [logger_root] level=DEBUG handlers=rotatingFileHandler,streamHandler,errorHandler [handler_rotatingFileHandler] class=handlers.TimedRotatingFileHandler level=INFO formatter=simpleFmt args=(os.path.abspath(os.getcwd() + "/log/default.log"),"midnight", 1, 6,'utf-8') [handler_errorHandler] class=handlers.TimedRotatingFileHandler level=ERROR formatter=simpleFmt args=(os.path.abspath(os.getcwd() + "/log/error.log"), "midnight", 1, 6,'utf-8') [handler_streamHandler] level=INFO class=StreamHandler formatter=simpleFmt args=(sys.stdout,) [formatter_simpleFmt] format=%(asctime)s %(pathname)s(%(lineno)d): %(levelname)s %(message)s
2、其他路径中直接引用
run.py
# !/usr/bin/python3
# -*- coding:utf-8 -*-
"""
@File: run.py
@Description: 项目入口
"""
from common.log import LOG
if __name__ == '__main__':
LOG.info('Start!')
python自动化 文章被收录于专栏
python写好pytest自动化的一些小妙招

查看1道真题和解析