获取prometheus/grafana中不同标签值的计数

获取prometheus/grafana中不同标签值的计数,prometheus,grafana,promql,Prometheus,Grafana,Promql,我试图在Grafana中创建一个表/图表,显示在给定时间范围内(例如最近24小时)登录到给定应用程序的唯一用户总数。我有一个指标,app\u request\u path,它记录每分钟到达特定路径的请求数: app\u请求\u计数{app=“我的app”,path=“/login”} 这给了我以下信息: app_request_count{app="my-app",path="/login",status="200",username="username1"} app_reque

我试图在Grafana中创建一个表/图表,显示在给定时间范围内(例如最近24小时)登录到给定应用程序的唯一用户总数。我有一个指标,
app\u request\u path
,它记录每分钟到达特定路径的请求数:

app\u请求\u计数{app=“我的app”,path=“/login”}

这给了我以下信息:

    app_request_count{app="my-app",path="/login",status="200",username="username1"}
    app_request_count{app="my-app",path="/login",status="200",username="username2"}
现在我想计算唯一用户名的数量,因此我运行:

count_values("username", app_request_count{app="my_app", path="/login"})
我得到:

    {username="0"}
    {username="1"}
    {username="2"}
    {username="3"}
    {username="4"}
    {username="5"}
我错过了什么/我做错了什么?理想情况下,我希望获得一个标量值,该值显示在过去24小时内登录的唯一用户名的总数

非常感谢。

无(用户名)计数(应用程序请求计数)


count\u值
用于度量值,
count
用于时间序列。也不建议将用户名之类的东西作为标签值,因为它们往往具有很高的基数。它们也可能是PII,这可能会产生法律影响。

谢谢!这并不完全符合我的需要,因为它没有涵盖一段时间。然而,我确实设法调整了它以实现我想要的:
countwithout(username)(sum(sum)(sum(sum_over_time(app_request_count{app=“my app”,path=“/login”}[24h]))by(username))
非常感谢您的帮助!