Elasticsearch Java Rest Client: как получить список всех индексов - PullRequest
0 голосов
/ 21 ноября 2018

Как получить список всех индексов в Elasticsearch с помощью Rest Client?

(Все ответы, которые я нашел в Интернете, похоже, имеют дело со старым типом клиента.

Iне удается найти прямой ответ в документе,

https://www.elastic.co/guide/en/elasticsearch/client/java-rest/current/index.html

не может выяснить, в какой раздел обратиться, API-интерфейсам Cluster или Index и т. д.)

Ответы [ 2 ]

0 голосов
/ 25 января 2019

В текущем REST-клиенте Java высокого уровня вы можете перечислить все индексы, просто запросив GetIndex-запрос с "*" в качестве имени индекса.

GetIndexRequest request = new GetIndexRequest().indices("*");
GetIndexResponse response = client.indices().get(request, RequestOptions.DEFAULT);
String[] indices = response.getIndices();
0 голосов
/ 21 ноября 2018

С помощью API REST вы можете проверить с помощью этого URL: http://elasticsearch:9200/_cat/indices?v

С помощью API клиента Java (я только что понял, что вы спрашивали об этом): вы можете сделать ставку на API Cluster Health: https://www.elastic.co/guide/en/elasticsearch/client/java-rest/current/java-rest-high-cluster-health.html

И используйте

ClusterHealthRequest request = new ClusterHealthRequest();
ClusterHealthResponse response = client.cluster().health(request, RequestOptions.DEFAULT);
Set<String> indices = response.getIndices().keySet();

И вы получите список индексов;)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...