我无法弄清楚下面的查询有什么问题。
GET website/_search
{
"query": {
"bool": {
"filter": [
{
"range": {
"@timestamp": {
"gte": "now-1d/d",
"lt": "now/d"
}
},
"match": {
"aspnet-request-url.keyword": "abc.com/Default.aspx"
}
}
]
}
}
}
range
和match
都很好地独立工作。
根据文档,当合并多个查询时,我们应该在must
查询下使用filter
、must-not
和must-not
。
尽管如此,它还是给了[range] malformed query, expected [END_OBJECT] but found [FIELD_NAME]
。
任何帮助都是非常感谢的。
发布于 2020-10-28 09:24:43
范围格式错误的查询,预期的END_OBJECT但找到FIELD_NAME
从上面的错误中可以清楚地看出,查询的格式不正确。请参阅此,以了解更多关于查询和筛选上下文.结构的信息。
您缺少一些括号,请尝试下面的搜索查询
{
"query": {
"bool": {
"filter": [
{
"range": {
"@timestamp": {
"gte": "now-1d/d",
"lt": "now/d"
}
}
},
{ <-- note this
"match": {
"aspnet-request-url.keyword": "abc.com/Default.aspx"
}
}
]
}
}
}
https://stackoverflow.com/questions/64578074
复制