Antonchik
@Antonchik
Программирую на HTML

Как написать такой запрос в elastic?

Есть такой набор данных:
{
    "@timestamp": "2023-05-28T12:12:09.592Z",
    "userId": "Pir6UkHdRXMgZvFHMRttHAT3nXyxzxWw+hsf1iXyMiw=",
    "userSession": "a2942642-9569-452b-a642-cc2f9a80b88c",
    "state": "active"
},
{
    "@timestamp": "2023-05-28T12:15:09.592Z",
    "userId": "Pir6UkHdRXMgZvFHMRttHAT3nXyxzxWw+hsf1iXyMiw=",
    "userSession": "a2942642-9569-452b-a642-cc2f9a80b88c",
    "state": "inactive"
},

как можно агрегировать данные по userId и userSession и получить разницу двох timestamp, тоесть разницу между inactive и active состоянием?

Какой-то такой результат должен быть:
{
    "start":"2023-05-28T12:12:09.592Z",
    "end": "2023-05-28T12:15:09.592Z",
    "userId": "Pir6UkHdRXMgZvFHMRttHAT3nXyxzxWw+hsf1iXyMiw=",
    "userSession": "a2942642-9569-452b-a642-cc2f9a80b88c",
    "dateDiff": "3 minute (или кол.во секунд)"
},
  • Вопрос задан
  • 81 просмотр
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы