使用 Prometheus 测量服务延迟
Measure service latency with Prometheus
我是 Prometheus 和 Grafana 的新手。我的主要目标是获得每个请求的响应时间。
对我来说,这似乎是一件简单的事情 - 但无论我做什么,我都没有得到我需要的结果。
我需要能够分析上次 minutes/hours/days 中的服务延迟。我发现的当前实现是一个简单的摘要(没有分位数的定义),每 15 秒被抓取一次。
- 是否可以从我的 Prometheus SUMMARY 中获取最后一分钟的平均请求延迟?
- 如果是:如何?如果否:我该怎么办?
目前我正在使用以下查询:
rate(http_response_time_sum{application="myapp",handler="myHandler", status="200"}[1m])
/
rate(http_response_time_count{application="myapp",handler="myHandler", status="200"}[1m])
我得到两个“数据集”。第一个的值是“NaN”。我想这是除以零的结果。
(我正在使用 spring-客户端)。
您的查询是正确的。如果在过去一分钟内没有查询,结果将为 NaN。
我是 Prometheus 和 Grafana 的新手。我的主要目标是获得每个请求的响应时间。
对我来说,这似乎是一件简单的事情 - 但无论我做什么,我都没有得到我需要的结果。
我需要能够分析上次 minutes/hours/days 中的服务延迟。我发现的当前实现是一个简单的摘要(没有分位数的定义),每 15 秒被抓取一次。
- 是否可以从我的 Prometheus SUMMARY 中获取最后一分钟的平均请求延迟?
- 如果是:如何?如果否:我该怎么办?
目前我正在使用以下查询:
rate(http_response_time_sum{application="myapp",handler="myHandler", status="200"}[1m])
/
rate(http_response_time_count{application="myapp",handler="myHandler", status="200"}[1m])
我得到两个“数据集”。第一个的值是“NaN”。我想这是除以零的结果。
(我正在使用 spring-客户端)。
您的查询是正确的。如果在过去一分钟内没有查询,结果将为 NaN。