我有兴趣监视我的应用程序使用的 HTTP REST API。
使用 Spring Boot、dropwizard 和
@EnablePrometheusEndpoint
注释。我能够在 /prometheus
端点上生成这样的普罗米修斯指标:
http_client_requests_method_GET_uri_api_v1_objects_status_200_count 3.0
http_client_requests_method_GET_uri_api_v1_objects_status_404_count 1.0
我想在grafana中构建一个图表,以显示具有不同状态代码的uri api_v1_objects上对GET方法的所有调用(每个状态代码一行)。
我应该将状态代码设置为指标的标签吗? io.prometheus simpleclient lib 是否允许使用标签注册 dropwizard 指标?
目前,当我定义图表时,我需要为每个状态代码静态定义一行。对于未来可能出现的新状态代码(500 等),这不是动态的
预先感谢您的帮助。
奥雷利恩
我应该将状态代码设置为指标的标签吗?
在我看来,这将是最好的主意。
io.prometheus simpleclient lib 是否允许使用标签注册 dropwizard 指标?
问题在于DW不能很好地处理标签。
如果您使用的是 spring-boot,我真的建议您迁移到 micrometer 新的公制框架。它是 spring-boot 2 的默认设置,它处理标签和其他元素,因此它比 DW 更适合 promentheus。