有没有办法使用 Prometheus 记录经过的时间

kra*_*v94 4 java monitoring grafana prometheus

我有一个 spring-boot 应用程序,我用它Prometheus来收集指标数据。Prometheus 有一些指标,例如Counter可以很好地计算某事发生的次数,Gauge它也可以保持计数,但可以减少等等。是否有一个指标可以让我跟踪某事的请求持续时间?例如,假设我想记录在进行 api 调用和 api 返回响应之间所花费的时间。我将如何跟踪进行调用和收到 api 响应之间的时间?然后,是否可以在Y坐标上创建一个图表,我可以列出响应所花费的时间长度(以秒或毫秒为单位);然后在X 轴,是否显示时间戳(收集指标的时间)?

bri*_*zil 7

对于计时事件大小,例如 api 延迟,您可能需要一个Summary.

然后,您可以使用以下方法计算聚合平均延迟

  sum without (instance)(rate(my_summary_latency_seconds_sum[5m]))
/
  sum without (instance)(rate(my_summary_latency_seconds_count[5m])
Run Code Online (Sandbox Code Playgroud)