[Python] logging模块重复输出问题

2017年11月2日 星期四

问题描述

学习logging的时候,测试同时向日志文件和控制台输出日志.
发现logging总是同时输出两条,
一条是logging的root的发送的
一条是logging.getLogger()发送的.

在网上找了一圈,发现都不能解决问题.

参考文章

  1. Python logging模块重复打印? - SegmentFault
    https://segmentfault.com/q/1010000006963784

  2. 多个文件共用日志系统的重复打印问题 - 匡子语 - 博客园
    http://www.cnblogs.com/dplearning/p/5088074.html

解决方案:

最后发现自己是多写了basicConfig.这个写完本身就会输出一次日志.
删掉之后,就只输出一次日志了.
logging.basicConfig(level=logging.INFO,datefmt='%m-%d %H:%M',filemode='w')
logging.getLogger()

就是被这篇文章给坑了,这篇文章其实是直接把Handler加到了root的logger上来演示,...http://www.jb51.net/article/66756.htm

你可能感兴趣的:([Python] logging模块重复输出问题)