范围或缺失 - ElasticSearch - 查询 DSL
Range or missing - ElasticSearch - Query DSL
我目前正在尝试将以下逻辑纳入 ES 查询 - http_code
是否存在?如果有,应该在400-600之间;但它也可能丢失。
以下查询不起作用,我认为它需要更改和更正。
{
"query": {
"bool": {
"must": [
{
"range": {
"http_code": {
"gte": 400,
"lt": 600
}
}
},
{
"bool": {
"should": [
{
"bool": {
"must_not": {
"exists": {
"field": "http_code"
}
}
}
}
]
}
}
]
}
}
}
最初的要求是在范围为 400-600 的 Kibana 仪表板中保存一个过滤器,或者它丢失了。
要进行您建议的查询,您需要执行类似的操作:
The original requirement is to save a filter in a Kibana dashboard with range 400-600 OR it's missing. as:
{
"query": {
"bool": {
"minimum_should_match": 1,
"should": [
{
"range": {
"http_code": {
"gte": 400,
"lt": 600
}
}
},
{
"bool": {
"must_not": {
"exists": {
"field": "http_code"
}
}
}
}
]
}
}
}
我目前正在尝试将以下逻辑纳入 ES 查询 - http_code
是否存在?如果有,应该在400-600之间;但它也可能丢失。
以下查询不起作用,我认为它需要更改和更正。
{
"query": {
"bool": {
"must": [
{
"range": {
"http_code": {
"gte": 400,
"lt": 600
}
}
},
{
"bool": {
"should": [
{
"bool": {
"must_not": {
"exists": {
"field": "http_code"
}
}
}
}
]
}
}
]
}
}
}
最初的要求是在范围为 400-600 的 Kibana 仪表板中保存一个过滤器,或者它丢失了。
要进行您建议的查询,您需要执行类似的操作:
The original requirement is to save a filter in a Kibana dashboard with range 400-600 OR it's missing. as:
{
"query": {
"bool": {
"minimum_should_match": 1,
"should": [
{
"range": {
"http_code": {
"gte": 400,
"lt": 600
}
}
},
{
"bool": {
"must_not": {
"exists": {
"field": "http_code"
}
}
}
}
]
}
}
}