这里我们用的是loguru,logging虽然是自带的,但确实使用起来比较繁琐,loguru在Logging基础上增加了很多个性化功能,使用起来也比较简单,所以就使用loguru
代码如下:
1 # cal_testlog.py 2 3 from loguru import logger 4 from config import BASE_DIR 5 import time 6 7 now_dt = time.strftime("%Y%m%d") 8 logpath = BASE_DIR + r'\log' 9 # logname = r'\\' + now_dt + r'.log' 10 cal_log = r'{}\\{}.log'.format(logpath,now_dt) 11 print(cal_log) 12 trace = logger.add(cal_log, rotation="5MB",encoding='utf-8',enqueue=True,retention="1 days") 13
说明:
上图中,我们使用 trace = logger.add(cal_log, rotation="5MB",encoding='utf-8',enqueue=True,retention="1 days") 来生成log,每5M分割一个,
- enqueue (bool, optional) :要记录的消息在到达接收器之前是否应该首先通过多进程安全队列。当通过多个进程将日志记录到文件中时,这是非常有用的。这还具有使日志调用非阻塞的优点。
- rotation:分隔日志文件,何时关闭当前日志文件并启动一个新文件的条件,;例如,“500 MB”、“0.5 GB”、“1 month 2 weeks”、“10h”、“monthly”、“18:00”、“sunday”、“monday at 18:00”、“06:15”
- retention (str, int, datetime.timedelta or callable, optional) ,可配置旧日志的最长保留时间,例如,“1 week, 3 days”、“2 months”
将其他模块的测试内容写入log方法如下图:
注意:一定要记得导入trace
结果如下图:
关于loguru其他知识可参考这篇文章:
https://blog.csdn.net/software_test010/article/details/121150862
标签:log,loguru,Loguru,QA,cal,测试代码,日志,logger,retention From: https://www.cnblogs.com/T-Better/p/17482728.html