如何使用kibana中的脚本字段从数组中提取字符串值?

时间:2021-03-02 12:44:18

标签: kibana elasticsearch-painless

有没有办法在 string 的脚本字段中使用 arrayif statement 中提取 kibana 值。我尝试了以下代码,但是,我无法在 kibana 的发现选项卡中过滤掉正确和不正确的值。这可能是因为备注字段是 array

def result_string = "";

if (doc['nac.keyword'].value =="existing_intent" &&doc['remark.keyword'].value != "acceptable") {
            result_string = "incorrect";
        } 
        
if (doc['nac.keyword'].value =="existing_intent" &&doc['remark.keyword'].value == "acceptable") {
            result_string = "correct";
        } 
return result_string;`

1 个答案:

答案 0 :(得分:0)

您可以使用定义在 Array 上的 contains 方法来检查元素成员资格:

!doc['remark.keyword'].value.contains("acceptable") //does not contain

为此,您可能需要首先确保 doc['remark.keyword'].value 确实是一个数组。

相关问题