Elasticsearch客户端的ping方法何时返回false?

时间:2019-09-17 22:30:50

标签: elasticsearch

Es文档提到ping可以返回true或false,如果ES服务器停机,则该方法将引发异常,因此不确定何时返回false。

1 个答案:

答案 0 :(得分:0)

如何处理响应取决于您使用的客户端库。例如,Ruby客户端检查响应代码以确定返回truefalse的对象。

perform_request(method, path, params, body).status == 200 ? true : false

请参阅:https://github.com/elastic/elasticsearch-ruby/blob/master/elasticsearch-api/lib/elasticsearch/api/actions/ping.rb

如果ping请求由于连接失败而失败,则它将引发异常而不会返回状态代码。在这种情况下,将引发异常而不是false。因此,如果false请求的响应代码不是200,并且没有任何连接失败,则返回HEAD

最好看看您使用的客户端代码的实现。