New*_*ser 3 grafana prometheus promql
我必须根据 Prometheus 指标创建可视化。我有一个计数器指标http_request_counter,我想显示一天内服务的总请求的摘要。当我们使用石墨作为数据源时,我就是这样做的。
alias(summarize(sumSeries(consolidateBy(nonNegativeDerivative(http_request_counter.count), 'sum')), '1d', 'sum', false), 'TPS per day')
Run Code Online (Sandbox Code Playgroud)
我看到了一些文档并尝试用increase(http_requests_total[24h])它绘制了带有值的图表t-24h。
summarize有人可以帮我找到普罗米修斯中等效的功能吗?
你需要sum(increase(http_requests_total[24h]))。它返回图表上每个点在过去24 小时内的请求摘要数量。默认情况下,Grafana 会从 Prometheus 查询许多点,以便根据图形的当前水平分辨率绘制平滑的图形。在 Grafana 中编辑图表时,可以使用选项调整图表上的点数min step。另一种选择是使用子查询以及外部查询所需的步骤:
last_over_time(sum(increase(http_requests_total[24h]))[1d:1d])
Run Code Online (Sandbox Code Playgroud)
它将返回一日步长的连续线路。这些步骤将在过去移动一天,例如,当天的步骤将包含前一天发出的请求数。这种转变可以用负数来消除offset:
last_over_time(sum(increase(http_requests_total[1d] offset -1d))[1d:1d])
Run Code Online (Sandbox Code Playgroud)
不幸的是,这个查询在 Prometheus 中不能开箱即用,因为它默认不接受负偏移量。启动 Prometheus 时,必须使用 --enable-feature=promql-negative-offset 命令行标志启用它们。幸运的是,我工作的系统 VictoriaMetrics 中的MetricsQL默认支持负偏移量。
| 归档时间: |
|
| 查看次数: |
12546 次 |
| 最近记录: |