【发布时间】:2018-10-12 16:07:03
【问题描述】:
我正在使用 python-elasticsearch 模块,我在python-elasticsearch documentation that you can log all the underlying HTTP requests as command line curl commands 中阅读:
elasticsearch.trace 可用于记录对服务器的请求 使用漂亮打印的 json 的 curl 命令形式,然后可以 从命令行执行。因为它是为共享而设计的(对于 演示问题的示例)它也只使用 localhost:9200 作为 地址而不是主机的实际地址。如果痕迹 logger 尚未配置,它设置为propagate=False 所以 它需要单独激活。
对于 python-elasticsearch 模块,如何启用 curl 日志记录?
我试过了:
- 将全局记录器设置为
logging.basicConfig(level=logging.DEBUG),但没有输出 curl - 我尝试获取
elasticsearch.trace记录器并将该记录器的级别设置为logging.DEBUG,然后设置es_trace_logger.propagate = True,但这些都不起作用
【问题讨论】:
-
尝试初始化
elasticsearch记录器并将其级别设置为DEBUG -
@Jay 所以
logger = logging.getLogger('elasticsearch'); logger.setLevel(logging.DEBUG)?你试过这个并且知道它有效吗? -
嗯,
elasticsearch记录器只会显示GET/POST请求和相应的响应。elasticsearch.trace记录器将以更好的方式显示与 curl 请求和美化 json 相同的信息。
标签: python elasticsearch logging instrumentation elasticsearch-py