作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我在我的项目中使用了几个模块,但是,这些模块从记录器输出大量日志,这很烦人。所以我通过以下方式关闭日志:
boto_log = logging.getLogger("boto")
boto_log.setLevel(logging.CRITICAL)
es_log = logging.getLogger("elasticsearch")
es_log.setLevel(logging.CRITICAL)
urllib3_log = logging.getLogger("urllib3")
urllib3_log.setLevel(logging.CRITICAL)
虽然这行得通,但代码看起来很冗长。有没有更好、更简单的方法可以做到这一点?
最佳答案
您可以使用 logging.config.dictConfig
或 logging.config.fileConfig
禁用现有的记录器。
import logging.config
logging.config.dictConfig({
'version': 1,
# Other configs ...
'disable_existing_loggers': True
})
您还可以遍历现有记录器并手动禁用。
for name, logger in logging.root.manager.loggerDict.iteritems():
logger.disabled=True
关于python - 如何禁用其他模块的记录器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27538879/
我是一名优秀的程序员,十分优秀!