如何划分两个 Prometheus 计数器

Posted

技术标签:

【中文标题】如何划分两个 Prometheus 计数器【英文标题】:How to divide two Prometheus Counters 【发布时间】:2020-01-20 22:33:45 【问题描述】:

我有两个指标,确切地说是计数器,假设它们被称为

访问者人数 登录次数

在 grafana 中,我想绘制的是登录次数除以访问者数量(或相反)随时间的变化。所以我尝试了

rate(NumberOfLogins) / rate(NumberOfVisitors)

但这会导致错误

执行查询时出错:无效参数“查询”:在字符处解析错误 46:调用函数“rate”时的预期类型范围向量,立即获得 向量

我不确定这意味着什么。希望这样的事情是可能的。任何帮助将不胜感激

【问题讨论】:

【参考方案1】:

速率函数需要一个范围向量,例如:

rate(NumberOfLogins[5m])

这意味着计算每个时间点最近 5 分钟内的费率。您可以将5m更改为其他时间范围。

因此,这将满足您的需求:

rate(NumberOfLogins[5m]) / rate(NumberOfVisitors[5m])

【讨论】:

以上是关于如何划分两个 Prometheus 计数器的主要内容,如果未能解决你的问题,请参考以下文章

无法使用docker(prom / prometheus)加载prometheus.yml配置文件

prometheus中pushgateway方式收集数据

如何重用prometheus Gauge metric?

Prometheus summary.observe 方法有啥作用?

prometheus快照

如何在 grafana 中创建普罗米修斯图来划分两个查询?