ElasticSearch 6.1插件自定义设置

时间:2018-01-09 21:02:47

标签: elasticsearch elasticsearch-plugin

我遇到弹性搜索插件的问题我正在尝试编写...基本上我需要自己的设置(比如传入System props或在elasticsearch.yml中定义)...最初我开始弹性搜索开发和测试的早期版本,但自从我升级到6.1.1。 但是...现在我的设置被我的插件加载了,但随后立即失败验证... org.elasticsearch.bootstrap.StartupException:“java.lang.IllegalArgumentException:未知设置[my.setting]请检查是否已安装任何所需的插件,或检查更改设置的更改文档”

破坏变更的文档5.4(https://www.elastic.co/guide/en/elasticsearch/reference/5.4/breaking_50_settings_changes.html)说 “来自Elasticsearch 5.0的所有设置在应用之前都会经过验证。节点级别和默认索引级别设置在节点启动时进行验证,动态集群和索引设置在更新/添加到集群状态之前进行验证。

每个设置必须是已知设置。所有设置必须已在与其一起使用的节点或传输客户端中注册。这意味着定义自定义设置的插件必须使用SettingsModule #registerSettings(Setting)方法在插件加载期间注册所有设置。“

然而...... SettingsModule #registerSettings(设置)是私有的......从我介绍的内容以来一直都是这样...我错过了什么?

1 个答案:

答案 0 :(得分:0)

比我想象的更简单...赞赏

我的插件已经扩展了org.elasticsearch.plugins.Plugin,我只需提供我需要的任何设置"已注册"通过压倒 公共列表>插件中的getSettings()。 感谢Ivan Brusic在ElasticSearch论坛上向我指出了正确的方向。