一尘不染

属性文件中的Elasticsearch Scala elastic4s设置

elasticsearch

有没有一种方法如何将设置从属性文件传递给elastic4s?以下方法有效,但在市政环境中不灵活:

 val settings = ImmutableSettings.settingsBuilder().put("cluster.name","elasticsearch").build()

 val client = ElasticClient.remote(settings, "154.86.209.242" -> 9300, "153.89.219.241" -> 9300)

我尝试按Java doc中的说明尝试使用Java配置文件elasticsearch.yaml,但这不起作用。

有什么建议吗?


阅读 344

收藏
2020-06-22

共1个答案

一尘不染

您可以使用与Java客户端相同的方法来执行此操作。ImmutableSettings是一个Java Client类,而不是特定于elastic4s的类。

要从类路径加载属性文件,例如,如果您在src / main / resources / com / package /
settings.props中包含某些内容

ImmutableSettings.settingsBuilder().loadFromClasspath("/com/package/mysettings.yaml")

或者,如果您想从输入流中加载:

ImmutableSettings.settingsBuilder().loadFromStream(myinputstream)

还有其他方法,只需签出ImmutableSettings.settingsBuilder对象即可。

2020-06-22