如何使用python API获取elasticsearch集群的健康状况?

tob*_*i05 2 python-3.x elasticsearch

我想获得类似于命令的弹性搜索集群的健康状况

curl -XGET 'http://localhost:9200/_cluster/health?pretty=true'
Run Code Online (Sandbox Code Playgroud)

但使用蟒蛇。我做了以下

from elasticsearch.client import ClusterClient
esc = ClusterClient([{'host': 'localhost', 'port': 9200}])
esc.health();
Run Code Online (Sandbox Code Playgroud)

但我得到的只是一个

AttributeError: 'list' object has no attribute 'transport'
Run Code Online (Sandbox Code Playgroud)

我在 health() 中使用了一些参数,例如我们的索引和级别,但我弄乱了语法。有人有工作的例子吗?

问候,托比

小智 6

不能直接使用 Cluster API,试试这个:

from elasticsearch import Elasticsearch
es = Elasticsearch()
print(es.cluster.health())
Run Code Online (Sandbox Code Playgroud)