Spring Boot 中的指标未显示在 Prometheus 中

按照以下步骤将指标从 Spring Boot 发送到 Prometheus:


注意:我已经使用 Docker 映像在我的 Mac 上本地安装了 Prometheus。


在 pom.xml 中添加了这个:


<dependency>

    <groupId>org.springframework.boot</groupId>

    <artifactId>spring-boot-starter-actuator</artifactId>

    <version>2.0.4.RELEASE</version>

</dependency>

<!-- Micormeter core dependecy  -->

<dependency>

    <groupId>io.micrometer</groupId>

    <artifactId>micrometer-core</artifactId>

    <version>1.0.6</version>

</dependency>

<!-- Micrometer Prometheus registry  -->

<dependency>

    <groupId>io.micrometer</groupId>

    <artifactId>micrometer-registry-prometheus</artifactId>

    <version>1.0.6</version>

</dependency>

在 application.properties 中添加了这个:


server.port: 9000

management.server.port: 9001

management.server.address: 127.0.0.1


management.endpoint.metrics.enabled=true

management.endpoints.web.exposure.include=*

management.endpoint.prometheus.enabled=true

management.metrics.export.prometheus.enabled=true

在配置文件中使用以下几行启动 Prometheus:

全局配置


global:

  scrape_interval:     5s # Set the scrape interval to every 5 seconds.

  evaluation_interval: 5s # Evaluate rules every 5 seconds.

scrape_configs:

- job_name: 'hello-world-promethus'

  metrics_path: '/actuator/prometheus'

  static_configs:

  - targets: ['localhost:9001']

当我点击:http://localhost:9001/actuator/prometheus 时,我可以看到指标,但它们在 Prometheus UI 上不可见。


我错过了什么?


暮色呼如
浏览 125回答 1
1回答

catspeake

解决方案很简单。只有在运行 Prometheus Docker Container 时才会遇到这种情况。将目标从:'localhost:9001' 更改为 'docker.for.mac.localhost:9001'。例如:- job_name: hello-world-promethus&nbsp; scrape_interval: 5s&nbsp; scrape_timeout: 5s&nbsp; metrics_path: /actuator/prometheus&nbsp; scheme: http&nbsp; static_configs:&nbsp; - targets:&nbsp; &nbsp; - docker.for.mac.localhost:9001
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java