gpt4 book ai didi

elasticsearch - 如何在没有正则表达式的情况下使用脚本字段从日志字段中搜索子字符串

转载 作者:行者123 更新时间:2023-12-03 01:32:02 26 4
gpt4 key购买 nike

我正在尝试通过在日志字段(这是一个长文本字段)中捕获一些“关键字”来轻松地创建一些脚本字段。例如,我有一堆日志字段:

"Error: Duplicate entry in user1"

"Error: Duplicate entry in user2"

"Error: Duplicate entry in user1"

"Error: Duplicate entry in user3"

"Error: Duplicate entry in user2"

"Error: Duplicate entry in user1"

"Error: Duplicate entry in user3"


我正在使用的无痛工具:
if (doc['log.keyword'].value == 'Duplicate entry') {
return "match";
}
return "No match";

为了仅捕获“重复条目”错误消息而不考虑用户ID,我确定我需要使用正则表达式来做到这一点。我只是想知道是否还有另一种不用正则表达式的方法。有什么建议么。

最佳答案

有很多方法。您可以尝试以下方法:

GET logs/_search
{
"query": {
"script": {
"script":
"""
if (doc["log.keyword"].value == null) return false;
return doc["log.keyword"].value.contains("Duplicate entry");
"""
}
}
}

在kibana 5中,三重引号可能无效。我不记得确切了。只需替换为单引号

关于elasticsearch - 如何在没有正则表达式的情况下使用脚本字段从日志字段中搜索子字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55289869/

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