#elasticsearch #grafana #grafana-loki #loki
Вопрос:
У меня есть набор журналов, подобных этому:
{"action": "action_a", "username": "user_1", "ts": "2021-09-10T02:18:14.103Z"}
{"action": "action_a", "username": "user_2", "ts": "2021-09-10T02:17:14.103Z"}
{"action": "action_a", "username": "user_1", "ts": "2021-09-09T02:16:14.103Z"}
{"action": "action_a", "username": "user_1", "ts": "2021-09-08T02:15:14.103Z"}
Можно ли сгруппировать журналы по дате и имени пользователя, чтобы получить количество уникальных пользователей в день?
В настоящее время у меня есть следующий запрос:
sum by (username) (count_over_time({job="my-app"} | json | username != "" [$__range]))
Это фактически дает мне круговую диаграмму уникальных пользователей для текущего диапазона панели мониторинга. Вместо этого я хотел бы, чтобы временной ряд показывал количество уникальных пользователей в день (например, за последние 60 дней). Другими словами, Ежедневные активные пользователи (DAU).
С помощью приведенных выше журналов мне нужно что-то вроде:
{"2021-09-10": 2}
{"2021-09-09": 1}
{"2021-09-08": 1}
Возможно ли это с Локи или мне следует вместо этого обратиться к чему-то вроде Elasticsearch?