【发布时间】:2019-09-09 18:06:07
【问题描述】:
我尝试编写一个 PromQL 查询来检测计数指标的变化。
我的抓取间隔是 15 秒。
我这样查询指标:
http_server_requests_seconds_count{outcome!="REDIRECTION",outcome!="SUCCESS"}
它显示了所有http_server_requests 中有多少没有重定向且未成功。
我尝试使用此指标编写警报表达式如下所示:
sum by(service, method, outcome, status, uri) (
rate(
http_server_requests_seconds_count{
outcome!="REDIRECTION",
outcome!="SUCCESS"
}[1m]
)
) * 60
我的想法是,当发生变化时,[1m] 乘以 60 秒的速率将是 1,但据我所知,我得到的是 2?
这些图表清楚地表明了这一点:
上图是求和表达式,下图是服务器请求计数的变化。当底部图计数 +1 时,顶部图也应暂时上升到 1(但实际上它上升到 2)。
我做错了什么?我是不是误会了什么?当发生更改时,如何编写一个查询以提供值 1?我应该期望能够编写这样的查询吗?
谢谢!
【问题讨论】:
标签: prometheus promql