Prometheus PromQL—计算一个度量值具有相同值的次数
有没有任何函数可以显示普罗米修斯身上某个特定指标有多少次具有相同的值 我有一个不断返回整数1024的度量: 执行nsa服务器代理在KM上 当出现问题时,该值可能为1023甚至1022。我想要实现的是有一个查询,返回该度量返回1024或1023的任意时间Prometheus PromQL—计算一个度量值具有相同值的次数,prometheus,promql,Prometheus,Promql,有没有任何函数可以显示普罗米修斯身上某个特定指标有多少次具有相同的值 我有一个不断返回整数1024的度量: 执行nsa服务器代理在KM上 当出现问题时,该值可能为1023甚至1022。我想要实现的是有一个查询,返回该度量返回1024或1023的任意时间 我尝试过一些计数函数,但看起来它们适用于不同的场景 您可以使用子查询或录制规则来进行此操作。子查询版本大致如下: sum_over_time(count_values without() ("value", up)[10m:]) (在您的情况下
我尝试过一些计数函数,但看起来它们适用于不同的场景 您可以使用子查询或录制规则来进行此操作。子查询版本大致如下:
sum_over_time(count_values without() ("value", up)[10m:])
(在您的情况下,将up
替换为exec\u nsa\u server\u brokers\u on\u KM
;并且可以选择使用avg\u over\u time
来获取比率而不是绝对值)
这将为您提供过去10分钟内每个timeseries具有给定值的近似次数(或您感兴趣的任何时间范围)
如果您计算该值的频率足够高(例如,在刷新的仪表板上),记录规则替代方案可能会更有效,它只包括将
计数值的值记录到一个新的度量中,而不记录()(“value”,up)
,然后计算随时间的总和()
/随时间的平均值()
在该指标之上。“多少次”取决于刮取间隔,并假设没有刮取失败或被跳过,并且假设没有发生漂移和其他一些情况。你能澄清一下你想要实现什么吗?我有一个例子,每当事件发生时(例如,当物联网设备离线/在线时)(不使用普罗米修斯刮板机,但在接收事件时接收维多利亚度量中的数据)。所以我有一些数据,比如12点钟-devcon_s=1,3点钟-devcon_s=0,4点钟-devcon_s=1等等。我想计算一下一天中设备断开连接的次数。你知道我怎么做吗<代码>重置(devcon_s[24小时])?看见