DEFAULT_FORMATTER = '%(asctime)s[%(filename)s:%(lineno)d][%(levelname)s]:%(message)s'
logging.basicConfig(format=DEFAULT_FORMATTER, level=logging.INFO)

- 调用了第三方类, 结果一堆的打印
- 如何阻止第三方类的打印?
DEFAULT_FORMATTER = '%(asctime)s[%(filename)s:%(lineno)d][%(levelname)s]:%(message)s'
logging.basicConfig(format=DEFAULT_FORMATTER, level=logging.INFO)

|
RhilipFeb 21, 2021
1
把对应 logger 的等级提高,例如可以通过如下方法阻止 requests 模块的 log 打印
``` logging.getLogger("urllib3").setLevel(logging.WARNING) logging.getLogger("requests").setLevel(logging.WARNING) ``` |
|
no1xsyzyFeb 21, 2021
2
单独配置 handler,参考 logging 库文档和 HOWTOs 的一篇
|
|
simple2025Feb 21, 2021
3
应该是你设置了 root logger, 其他日志 log 的时候, propogate 导致的,
|
|
frostmingFeb 23, 2021
4
不要用 basicConfig 去污染其它 logger,而应该用自己的 Logger:
logger = logging.getLogger("myapp") logger.setLevel(logging.INFO) ... 这跟全局依赖和虚拟环境的思想是类似的 |