我有一个日志流,它有一个UserID=标签。我试着在一小时内统计唯一用户的数量。
下面是我的日志流的一个例子:
ts=2022-09-16T10:52:54.21344541Z level=INFO UserID=65166 elapsed=2.364015ms
ts=2022-09-16T10:52:51.580617785Z level=INFO UserID=24413 elapsed=2.324235ms
ts=2022-09-16T10:52:48.947248244Z level=INFO UserID=65166 elapsed=2.818146ms
ts=2022-09-16T10:52:41.51854716Z level=INFO UserID=24413 elapsed=2.633352ms
ts=2022-09-16T10:51:14.584272582Z level=INFO UserID=24413 elapsed=2.04884ms
ts=2022-09-16T10:51:14.45564065Z level=INFO UserID=65166 elapsed=4.889566ms我所做的最接近的事情就是计算每个用户的请求数量,但我只需要知道给定时间范围内唯一用户的数量。我现在拥有的是:
count(count_over_time({app="app"} | logfmt [1h])) by (UserID)
发布于 2022-09-17 12:51:19
在多玩了一会儿之后,我意识到我可以将上面的查询打包到另一个count()中,并以这种方式获取唯一用户的数量。为了完整起见,下面是查询:
count(count(count_over_time({app="app"} | logfmt [1h])) by (UserID))
我得到的是:

https://stackoverflow.com/questions/73754177
复制相似问题