gpt4 book ai didi

Elasticsearch 1.3.8 使用 groovy 脚本文件进行转换

转载 作者:行者123 更新时间:2023-11-29 02:53:36 25 4
gpt4 key购买 nike

由于 ES 1.3.4 的安全漏洞,我们升级到禁用动态 groovy 脚本的 ES 1.3.9,结果映射转换失败并显示错误消息“[groovy] 的动态脚本已禁用”。我尝试了 https://www.elastic.co/guide/en/elasticsearch/reference/1.3/modules-scripting.html 中的方法通过将脚本外部化到脚本文件,但脚本文件未被调用或转换不起作用。我们如何使用脚本文件实现转换

映射文件转换如下:

"transform" : [{
"script" : "ctx._source['downloadCountInt'] = (ctx._source['downloadCount']==null)? ctx._source['downloadCount'] : ctx._source['downloadCount'].replaceAll(/\\D/, '');",
"lang" : "groovy"
}]

尝试放置脚本 ctx._source['downloadCountInt'] = (ctx._source['downloadCount']==null)? ctx._source['downloadCount'] : ctx._source['downloadCount'].replaceAll(/\\D/, ''); 到/etc/elasticsearch/中名为“transform_download_count.groovy”的脚本文件scripts/transform_download_count.groovy 和日志消息显示它已正确编译,但从未调用转换。

最佳答案

使用脚本文件 /etc/elasticsearch/scripts/transform_download_count.groovy 尝试:

"transform" : {
"script_file" : "transform_download_count",
"lang" : "groovy"
}

关于Elasticsearch 1.3.8 使用 groovy 脚本文件进行转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28973449/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com