Если вы хотите объединить несколько запросов, как вы делаете с range
и exists
, вам нужно использовать bool query и решить, какие из ваших предложений являются обязательными (must
), необязательными(should
), фильтр (filter
) или не должен быть представлен в результатах (must_not
)
Запрос, который будет работать, может выглядеть следующим образом (в этом примере вы обязательны)):
{
"query": {
"bool": {
"must": [
{
"range": {
"@timestamp": {
"gte": "2019-08-04T11:00:00",
"lt": "2019-10-04T12:00:00"
}
}
},
{
"exists": {
"field": "params.zone"
}
}
]
}
},
"_source": [
"@timestamp",
"params.zone"
]
}