【问题标题】:Calculate the number of requests per second using Spring Boot Actuator使用 Spring Boot Actuator 计算每秒的请求数
【发布时间】:2019-03-23 07:06:16
【问题描述】:
我想计算来自 Spring Boot 2 应用程序的特定 URL 每秒的请求数,以及每个请求(延迟)所花费的时间(以毫秒为单位)。我们可以从 Actuator/Prometheus 中看到以下指标:
http_server_request_config_seconds_count
http_server_request_config_seconds_sum
我很困惑如何在 Prometheus 中绘制它以获得我的结果。我需要添加直方图或分位数吗?
【问题讨论】:
标签:
spring-boot
prometheus
spring-boot-actuator
【解决方案1】:
如果您只关心每秒请求数,则不需要任何与分位数相关的内容。
irate(http_server_requests_seconds_count{uri="/your-uri"}[5m])
如果您对整体响应时间感兴趣:
irate(http_server_request_duration_seconds_sum{exception="None", uri = "/your-url"}[5m]) / irate(http_server_requests_duration_seconds_count{exception="None", uri = "/your-url"}[5m])
如果您想要更精确的指标(分位数),可以参考 [Prometheus 文档][1]。
[1]:https://prometheus.io/docs/practices/histograms/#quantiles
例如:
histogram_quantile(0.99, sum(rate(http_server_requests_seconds_bucket{exception="None", uri = "/your-uri"}[5m])) by (le))