gpt4 book ai didi

java - 使用 prometheus 的自定义计数器在/actuator/prometheus 上不可见

转载 作者:行者123 更新时间:2023-12-01 23:18:30 26 4
gpt4 key购买 nike

我正在尝试在我的 spring-boot 应用程序中添加自定义指标。我已经查看了大量示例,但仍然无法添加自定义计数器。

application.properties

management.endpoint.metrics.enabled=true
management.endpoints.web.exposure.include=*
management.endpoint.prometheus.enabled=true
management.metrics.export.prometheus.enabled=true

代码

static final Counter requests = 
Counter.build().namespace("java").name("requests_total").help("Total requests.")
.register();

@CrossOrigin
@GetMapping("/test")
public int processRequest() {
requests.inc();
return (int) requests.get();
}

当我访问 API 时,我可以看到计数器值增加。问题是我在 http://localhost:8080/actuator/prometheus 和 prometheus :9090 页面上找不到新创建的指标。所以我认为计数器没有被注册(??)。我在这里缺少什么?

最佳答案

你可以做这样的事情。 Spring会自动找到收集器注册表并连接它。

@Component
public class CustomeCounter {

Counter mycounter;

public CustomCounter(CollectorRegistry registry) {
mycounter = Counter.build().name("test").help("test").register(registry);
}

public void incrementCounter() {
mycounter.inc();
}
}


@Component
public class Test{

@Resource
private CustomCounter customCounter;

public void testInc() {
customCounter.incrementCounter();
}
}

关于java - 使用 prometheus 的自定义计数器在/actuator/prometheus 上不可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58338264/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com