我有一个计数器类型的度量varnish_main_client_req,我想设置一个警报,如果请求率在给定时间内下降/上升一定量(例如“最近 2 分钟内偏离的请求量!”),就会触发警报。
使用deriv()函数应该比比较相对值更好,但它只能与仪表一起使用。是否有可能转换一个不断增加的指标。与额定指标相反。测量?
查询:deriv(rate(varnish_main_client_req[2m])[5m])
期望:Prometheus 计算过去 2 分钟内客户端请求的速率,并返回过去 5 分钟内结果值的导数。
实际结果:
“错误”:“在字符 48 处解析错误:范围规范必须以度量选择器开头,但要跟在 *promql.Call 之后”
记录规则可能是一种选择,但对于应该与查询一起使用的东西来说,它感觉像是一种廉价的解决方法:
my_gauge_metric = rate(some_counter_metric[2m])