hal*_*leo 10 python logging module
如何将elasticsearch库的日志记录级别设置为与我自己的日志记录不同?为了说明这个问题,我描述了模块场景.我有一个lookup.py使用elasticsearch这样的模块:
import logging
logger = logging.getLogger(__name__)
import elasticsearch
def get_docs():
logger.debug("search elastic")
es = elasticsearch.Elasticsearch('http://my-es-server:9200/')
res = es.search(index='myindex', body='myquery')
logger.debug("elastic returns %s hits" % res['hits']['total'])
.
.
.
Run Code Online (Sandbox Code Playgroud)
然后在我的主文件中
import logging
import lookup.py
logging.root.setLevel(loglevel(args))
get_docs()
.
.
.
Run Code Online (Sandbox Code Playgroud)
我得到很多的调试消息从内部的Elasticsearch对象.如何在lookup.py不抑制调试消息的情况下用一些代码来抑制它们lookup.py?这个Elasticsearch班似乎有一个logger对象; 我试图把它设置为None,但这并没有改变任何东西.
以下两行为我提供了抑制来自es库的过多日志记录的技巧.
es_logger = logging.getLogger('elasticsearch')
es_logger.setLevel(logging.WARNING)
小智 7
在最近(v8.5)版本的elasticsearch中,喋喋不休的POST日志似乎已移至elastic_transport:
logging.getLogger('elastic_transport.transport').setLevel(logging.CRITICAL)
| 归档时间: |
|
| 查看次数: |
2305 次 |
| 最近记录: |