Я пытаюсь получить список пользователей, которые в качестве своей последней активности "подключаются".В идеале я хочу, чтобы это было в виде метрики, или таблицы данных в Кибане, показывающей количество пользователей, которые подключились последними, и список их соответственно.Однако я отказался от возможности делать это в Кибане.Я могу получить нечто подобное непосредственно от Elasticsearch, используя агрегирование терминов, за которым следует top_hits, как показано ниже.Но проблема в том, что, хотя я сортирую top_hits по @timestamp, полученный документ в НЕ самом последнем.
{
"size" : 0,
"sort": { "@timestamp": {"order": "desc"} },
"aggs" : {
"by_user" : {
"terms" : {
"field" : "fields.username.keyword",
"size" : 1
},
"aggs": {
"last_message": {
"top_hits": {
"sort": [
{
"@timestamp": {
"order": "desc"
}
}
],
"_source": {
"includes": ["fields.username.keyword", "@timestamp", "status"]
},
"size": 1
}
}
}
}
}
}
- Есть ли способ сделать это непосредственно в Кибане?
- Как я могу убедиться, что top_hits дает мне последние результаты, а не "самые важные"?