我想过滤掉所有文档Too many connections
存在于 LogMessage 字段中。
我写的查询是:
'
{
"query": {
"bool": {
"must": {
"match": {
"logType": "Error"
}
},
"must_not": {
"match": {
"LogMessage": ".*Too many connections.*"
}
}
}
}
}'
另一方面,如果我在中使用整个字符串LogMessage
领域,工作正常。
我已经在这里验证了我的正则表达式:
https://regex101.com/r/EexTmV/1
请帮我解决这个问题。
你需要使用一个regexp query https://www.elastic.co/guide/en/elasticsearch/reference/current/query-dsl-regexp-query.html代替match
query
{
"query": {
"bool": {
"must": {
"match": {
"logType": "Error"
}
},
"must_not": {
"regexp": {
"LogMessage": ".*Too many connections.*"
}
}
}
}
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)