如何更改prometheus指标的终点

时间:2016-07-12 12:29:26

标签: spring-boot prometheus

我试图将一些指标从spring-boot服务公开给prometheus。 不幸的是,spring-boot执行器和prometheus simple-client都通过 / metrics 端点公开了它们的指标。

如何更改simple-client的端点?

由于

4 个答案:

答案 0 :(得分:7)

您可能希望查看Prometheus Java Simpleclient Spring Boot Metric,它会在/ prometheus端点公开prometheus指标。

Github项目:https://github.com/prometheus/client_java/tree/master/simpleclient_spring_boot

Maven神器:https://mvnrepository.com/artifact/io.prometheus/simpleclient_spring_boot

在你的pom.xml上:

<dependency>
    <groupId>io.prometheus</groupId>
    <artifactId>simpleclient_spring_boot</artifactId>
    <version>0.0.17</version>
</dependency>

在springboot配置类中:

@Configuration
public class Configuration {

    @Bean
    public ServletRegistrationBean servletRegistrationBean() {
        DefaultExports.initialize();
        return new ServletRegistrationBean(new MetricsServlet(), "/prometheus");
    }

    @Bean
    public SpringBootMetricsCollector springBootMetricsCollector(Collection<PublicMetrics> publicMetrics) {
        SpringBootMetricsCollector springBootMetricsCollector = new SpringBootMetricsCollector(
            publicMetrics);
        springBootMetricsCollector.register();
        return springBootMetricsCollector;
    }

答案 1 :(得分:3)

您可以更改弹簧启动执行器的endponit并将/metrics保留给Prometheus。

将以下配置添加到application.properties

endpoints.metrics.id=springmetrics
endpoints.metrics.sensitive=false
endpoints.metrics.enabled=true

你将获得弹簧执行器的新端点/springmetics和普罗米修斯的/metrics

答案 2 :(得分:1)

对于java客户端,您在设置servlet时指定端点,例如,请参阅https://github.com/RobustPerception/java_examples/blob/master/java_simple/src/main/java/io/robustperception/java_examples/JavaSimple.java#L39。您可以将端点更改为您喜欢的任何内容。

答案 3 :(得分:0)

您是否尝试在application.properties文件中设置以下属性:

management.endpoints.web.path-mapping.prometheus=
management.endpoints.web.base-path=