Python日志打印重复问题

今天调试用例的脚本去调用封装好的日志模块(算是补充前面的写Python日志logging模块的使用的一个小bug吧),出现写入多个日志文件的问题,看下运行的效果

6323765-6f10090fcd0b4f01.png

分析:一共运行了4条myLog.logger().inf()(except异常那条不算),出现了4个日志文件,里面内容也有重复,肯定不是我想要的结果,我想要的是这4条info按照执行顺序写入到一个文件中去

接着分析:把所有信息先打印到一个文件中看看再说,于是乎,就去修改了文件格式的日期,把秒数去了

6323765-7bd9ff35d78576b8.png

接着运行一下,看看全部写到一个文件的效果,真相呼之欲出了

6323765-db78e17fb0ada2aa.png

原因:每次调用封装好的logger,程序都会添加一个handler,这就解释了,为什么会生成多少日志文件,因为每条myLog.logger().inf()都会写一个文件

解决:在handler前面加个判断,如果logger已有handler,则不再添加handler

修改封装的脚本文件,同时把日期格式修改回去,保留到秒

6323765-d0b63d348715370d.png

再次运行程序

6323765-2733a6445da6247a.png

猜你喜欢

转载自blog.csdn.net/weixin_33981932/article/details/87236624