Добро пожаловать в SO, Адриан.
Вы запускаете _search
по all
индексам, так как вы не указали никакого имени индекса. Пожалуйста, попробуйте GET <your_index_name>/_search { ... request body ...}
.
Кроме того, "gte": "now"
вряд ли вернет какие-либо записи, поскольку это означает дату greater than or equal to current date
. В вашем случае вы хотите, чтобы записи older
, чем текущая дата. Таким образом, вы можете использовать lt:now
или еще лучше lt:now/d
, поскольку now/d
хорош с точки зрения производительности и позволяет кэшировать.
Попробуйте следующее:
GET <your_index_name>/_search
{
"query": {
"bool": {
"filter": [
{
"exists": {
"field": "products"
}
},
{
"range": {
"happening_at": {
"lt": "now/d"
}
}
}
]
}
}
}