Выполнение запроса ClusterStateRequest с помощью rest-клиента высокого уровня Java

#elasticsearch #resthighlevelclient #elasticsearch-high-level-restclient

#elasticsearch #resthighlevelclient #elasticsearch-high-level-restclient

Вопрос:

Я конвертирую кодовую базу, которая ранее использовала java TransportClient в кластере elastic 1.6.2, для использования java-библиотеки REST http высокого уровня. Я хочу сделать запрос к API ClusterState, описанному для http здесь: https://www.elastic.co/guide/en/elasticsearch/reference/current/cluster-state.html

В библиотеке Java нет соответствующей страницы

Раздел моего кода извлекает ClusterStateResponse примерно следующее:

 ClusterStateResponse state = client.admin().cluster().prepareState().execute().actionGet();
 

Для версии 7.3.2 org.elasticsearch.client.RestHighLevelClient для библиотеки Java Elasticsearch:

Можно ли использовать RestHighLevelClient для выполнения a ClusterStateRequest ?

Ответ №1:

В случае недоступности требуемого запроса вы всегда можете вернуться к низкоуровневому rest-клиенту. Итак, чтобы получить состояние кластера, вы можете вызвать API, как показано ниже,

 Request request = new Request("GET", "/_cluster/state");
Response response = restHighlevelClient.getLowLevelClient().performRequest(request);