Есть такой набор данных:
{
"@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 (или кол.во секунд)"
},