ElasticsearchJestHealthIndicator:在Spring启动时使用Jest时运行状况检查失败

时间:2018-03-15 12:28:36

标签: spring-boot elasticsearch jest

我在我的春季启动应用程序中使用Jest enter link description here

然后我使用示例代码创建了客户端:

JestClientFactory factory = new JestClientFactory();
 factory.setHttpClientConfig(new HttpClientConfig
                        .Builder("http://myhost:9200")
                        .multiThreaded(true)

 JestClient client = factory.getObject();

一切都很好。我可以使用此客户端执行我想要的所有查询。快乐到现在。

然后问题是,当应用程序启动时,ElasticsearchJestHealthIndicator类会自动初始化。但问题是我不知道在哪里设置它需要的配置,所以它使用默认值http://localhost:9200,这导致我遇到这个问题:

  

警告[on(2)-127.0.0.1] s.b.a.h.ElasticsearchJestHealthIndicator:健康检查失败   io.searchbox.client.config.exception.CouldNotConnectException:无法连接到http://localhost:9200       at io.searchbox.client.http.JestHttpClient.execute(JestHttpClient.java:70)       在io.searchbox.client.http.JestHttpClient.execute(JestHttpClient.java:60)

有人可以告诉我如何正确配置或关闭它吗?

谢谢。

2 个答案:

答案 0 :(得分:3)

参考文档中的快速搜索显示Spring Boot将为您配置JestClient(您可以将其注入任何需要的地方),并且以下配置属性适用:

spring.elasticsearch.jest.uris=http://search.example.com:9200
spring.elasticsearch.jest.read-timeout=10000
spring.elasticsearch.jest.username=user
spring.elasticsearch.jest.password=secret

请参阅here for more on this

答案 1 :(得分:0)

Jest客户端也已被弃用,因为Elasticsearch和Spring Data Elasticsearch都为REST客户端提供了官方支持。

请参见https://docs.spring.io/spring-boot/docs/current/reference/html/spring-boot-features.html#boot-features-elasticsearch