Pat*_*Pat 6 spring-boot grafana spring-boot-actuator prometheus
关于 Spring Boot 的问题,以及如何获取 HTTP 响应状态代码并将其显示到 Grafana 中。
设置:2.5.1 版本的 Java Spring Boot 应用程序(与任何 Spring Boot 2.xx 相关)。该应用程序具有执行器和千分尺依赖性。应用程序可以正常生成 Prometheus 指标。
我对这个仪表板非常感兴趣:HTTP 响应状态代码。不是经过的时间,不是计数,只是 HTTP 状态代码响应(以 200、401、503 等响应)。由于依赖性,我看到了这些指标!
http_server_requests_seconds
因此,我首先尝试了这个:
increase(http_server_requests_seconds{_ws_="my_workspace",_ns_="my_namespace",_source_="my_source", _bucket_="+Inf"}[15m])
这似乎产生了一些东西:
我可以看到一些 HTTP 200,一些 HTTP 503,但由于某种原因,我不仅看到一个 200,而且看到一堆似乎已经过去了一段时间的内容。
这个查询正确吗?为了随着时间的推移获得不同的 HTTP 状态代码响应,最合适的查询是什么?
最重要的是,代表 HTTP 状态代码响应差异的最佳可视化仪表板是什么?
Grafana 将为 Prometheus 查询中找到的每个不同标签添加一行。当您定义不包含所有不同标签的图例时,您将看到具有相同图例的多行。
increase(http_server_requests_seconds_count{}[1m])有图例{{status}}:
如果删除图例的定义,您应该能够查看所有标签以确定哪些标签创建重复值。
increase(http_server_requests_seconds_count{}[1m])没有图例定义:
如果您对查询进行更多限制,例如通过添加条件{method="POST"},也会减少行数:
另一种选择是汇总结果以消除标签。根据问题,您希望看到每个 HTTP 状态代码的总增加量。以下是我找到的一个很好的可视化方法的示例:
sum(increase(http_server_requests_seconds_count{}[1m])) by (status)有图例{{status}}:
| 归档时间: |
|
| 查看次数: |
11984 次 |
| 最近记录: |