elasticsearch 如何启用内嵌(沙盒)groovy脚本?,elasticsearch,elasticsearch" /> elasticsearch 如何启用内嵌(沙盒)groovy脚本?,elasticsearch,elasticsearch" />

elasticsearch 如何启用内嵌(沙盒)groovy脚本?

elasticsearch 如何启用内嵌(沙盒)groovy脚本?,elasticsearch,elasticsearch,我正在尝试使用以下示例脚本查询: POST /_search { "script_fields": { "my_field": { "script": "1 + my_evar", "params": { "my_evar": 2 } } } } 这将导致以下错误消息: “原因”:“禁用了[inline]、操作[search]和lang[groov

我正在尝试使用以下示例脚本查询:

POST /_search
{
    "script_fields": {
        "my_field": {
            "script": "1 + my_evar",
            "params": {
              "my_evar": 2
            }
        }
    }
}
这将导致以下错误消息:

“原因”:“禁用了[inline]、操作[search]和lang[groovy]类型的脚本”

我已尝试使用elasticsearch.yml配置启用脚本:

script.inline: true
script.indexed: true
script.search: true
script.update: true
script.mapping: true
script.groovy.sandbox.enabled: true
是否缺少设置?

使用此设置:

script.disable_dynamic: false

谢谢@Richa,我真的试过了,但是我犯了这个错误

script.disable\u动态设置不受支持,请替换为细粒度脚本设置。 通过将
script.disable\u Dynamic:false
替换为
script.inline:on
script.indexed:on


然后我尝试了这三种设置,效果很好。

elasticsearch.yml中设置以下内容对我很有效

script.engine.groovy.inline.search: on

script.engine.groovy.inline.update:on
也很有用。这里的全科医生:你已经受够了无痛的疼痛了吧?欢迎来到俱乐部,谢谢。我只是在我的elasticsearch.yml文件中放了两行“script.inline:on”和“script.indexed:on”,结果成功了。