elasticsearch Kibana脚本字段中的Groovy脚本
在创建脚本化字段时,是否有一种方法可以在“script”文本区域中指定Groovy脚本文件名 Lucene表达式在该字段上运行良好,但对数值有限制,但如何指定脚本文件名并将输入传递到脚本文件 我试着给脚本文件命名,如下所示,但没有成功
elasticsearch Kibana脚本字段中的Groovy脚本,
elasticsearch,groovy,lucene,kibana,
elasticsearch,Groovy,Lucene,Kibana,在创建脚本化字段时,是否有一种方法可以在“script”文本区域中指定Groovy脚本文件名 Lucene表达式在该字段上运行良好,但对数值有限制,但如何指定脚本文件名并将输入传递到脚本文件 我试着给脚本文件命名,如下所示,但没有成功 {"script":{"file":"MyScript"},"lang":"groovy"} 我还注意到,最新的弹性版本默认为Lucene表达式,但我怀疑应该有一种方法来指定脚本类型 更新:作为安全预防措施,从版本4.0.0-RC1开始, Kibana脚本字段
{"script":{"file":"MyScript"},"lang":"groovy"}
我还注意到,最新的弹性版本默认为Lucene表达式,但我怀疑应该有一种方法来指定脚本类型
更新:作为安全预防措施,从版本4.0.0-RC1开始,
Kibana脚本字段默认为Lucene表达式,而不是Groovy,如下所示
脚本语言
有人能告诉我这是否可能,如果可能的话,那么方法是什么吗?以下说明适用于
elasticsearch
2.x
首先,需要在elasticsearch.yml
中启用Groovy聚合脚本:
script.engine.groovy.indexed.aggs: true
然后在JSON中输入可视化中的相关属性:
最后,您需要将脚本放入config/scripts
文件夹中
elasticsearch
└── config
└── scripts
└── myscript.groovy
在进行上述更改后,不要忘记重新启动您的
elasticsearch
。目前无法选择所需的脚本语言,但这可能会有所帮助:我尝试了此方法,但无效。同样的错误还在继续“Discover:未能解析表达式:{“script”:{“file”:“MyScript”},“lang”:“groovy”}@svjn我猜您是在试图直接在Kibana的“设置->索引->Scrtiped字段”中添加{“script”:{“file”:“MyScript”},“lang”:“groovy”}
。相反,(1)添加字段,但将脚本保留为空,(2)在可视化的JSON输入中添加脚本。无论如何,我已经更新了我的答案。{“lang”:“groovy”}的+1——如果脚本字段是在设置中直接配置的,那么这也是必要的。