如何可视化所有请求的平均响应时间

Ami*_*udi 4 grafana prometheus promql

我有一个指标http_request_duration_seconds,它是基于操作的直方图,

http_request_duration_seconds ASP.NET Core 应用程序处理的 HTTP 请求的持续时间。类型 http_request_duration_seconds 直方图

哪些数据是:

http_request_duration_seconds_sum{code="200",method="GET",controller="Player",action="Load"} 0.4301564
http_request_duration_seconds_count{code="200",method="GET",controller="Player",action="Load"} 1
http_request_duration_seconds_sum{code="200",method="POST",controller="Auth",action="Token"} 0.2790333
http_request_duration_seconds_count{code="200",method="POST",controller="Auth",action="Token"} 1
Run Code Online (Sandbox Code Playgroud)

现在在 Grafana 中,我想可视化指定时间范围(例如 5 分钟)内所有操作的平均响应时间。

在此示例数据中,我此时所需的输出应该是(0.43 + 0.27) / ( 1 + 1)

promql执行此操作的查询是什么?

Jac*_*son 11

尝试

sum(rate(http_request_duration_seconds_sum[5m])) / sum(rate(http_request_duration_seconds_count[5m]))

有关更多详细信息,请参阅Prometheus 文档。