@Override public RestHighLevelClient createClient(Map<String, String> clientConfig) throws IOException { RestClientBuilder builder = RestClient.builder(httpHosts.toArray(new HttpHost[httpHosts.size()])); restClientFactory.configureRestClientBuilder(builder); RestHighLevelClient rhlClient = new RestHighLevelClient(builder); if (LOG.isInfoEnabled()) { LOG.info("Pinging Elasticsearch cluster via hosts {} ...", httpHosts); } if (!rhlClient.ping()) { throw new RuntimeException("There are no reachable Elasticsearch nodes!"); } if (LOG.isInfoEnabled()) { LOG.info("Created Elasticsearch RestHighLevelClient connected to {}", httpHosts.toString()); } return rhlClient; }
private boolean checkConnection() throws IOException { return client.ping(RequestOptions.DEFAULT); } }
protected void checkConnection(RestHighLevelClient client) { boolean ping = false; try { ping = client.ping(RequestOptions.DEFAULT); } catch (IOException e) { log.error(e.getMessage(), e); } if (!ping) { throw new IllegalStateException("Fail to ping rest node"); } } }
@Override protected Result verifyConnectivity(Map<String, Object> parameters) { ResultBuilder builder = ResultBuilder.withStatusAndScope(Result.Status.OK, Scope.CONNECTIVITY); try { ElasticsearchConfiguration configuration = setProperties(new ElasticsearchConfiguration(), parameters); RestClientBuilder clientBuilder = RestClient.builder(configuration.getHostAddressesList().toArray(new HttpHost[0])); RestHighLevelClient restHighLevelClient = new RestHighLevelClient(clientBuilder); restHighLevelClient.ping(); } catch (IOException e) { ResultErrorBuilder errorBuilder = ResultErrorBuilder.withCodeAndDescription(VerificationError.StandardCode.AUTHENTICATION, e.getMessage()) .detail("elasticsearch_rest_exception_message", e.getMessage()).detail(VerificationError.ExceptionAttribute.EXCEPTION_CLASS, e.getClass().getName()) .detail(VerificationError.ExceptionAttribute.EXCEPTION_INSTANCE, e); builder.error(errorBuilder.build()); } catch (Exception e) { builder.error(ResultErrorBuilder.withException(e).build()); } return builder.build(); } }
message.setBody(restHighLevelClient.msearch(searchRequest, RequestOptions.DEFAULT).getResponses()); } else if (operation == ElasticsearchOperation.Ping) { message.setBody(restHighLevelClient.ping(RequestOptions.DEFAULT)); } else if (operation == ElasticsearchOperation.Info) { message.setBody(restHighLevelClient.info(RequestOptions.DEFAULT));