如何用Prometheus与Grafana按标签组合统计有效voucher_id数量?
Grafana 表格可视化:按渠道/币种分组统计活跃优惠券ID数量
实现步骤
1. 新建Table面板并选择数据源
- 进入Grafana,点击**+ Create** → Panel
- 在数据源选择器中,选择你的Prometheus数据源
- 面板类型切换为Table
2. 编写PromQL查询语句
使用以下查询,筛选过去24小时内有使用记录(rate>0)的优惠券ID,再按channel和currency分组统计唯一ID数量:
count by(channel, currency) ( group by(voucher_id, channel, currency) ( rate(vouchers_total[24h]) > 0 ) )
- 逻辑说明:
rate(vouchers_total[24h]) > 0:筛选过去24小时内有增长(即被使用过)的优惠券计数器序列group by(voucher_id, channel, currency):将符合条件的序列按三个标签分组,确保每个优惠券ID对应唯一的渠道+币种组合count by(channel, currency):统计每个渠道+币种组合下的唯一优惠券ID数量
3. 配置表格列显示
在Panel options标签页中,调整列的展示设置:
- 第一列:选择字段
channel,自定义列名为「渠道」 - 第二列:选择字段
currency,自定义列名为「币种」 - 第三列:选择查询返回的
Value字段,自定义列名为「活跃优惠券ID数量」
4. 时间范围设置
在面板上方的时间选择器中,设置为Last 24 hours,确保统计范围符合需求
内容的提问来源于stack exchange,提问作者J Freebird
相关产品推荐
相关产品推荐

