Prometheus云原生监控:运维与开发实战
上QQ阅读APP看书,第一时间看更新

3.2.1 引入Maven依赖

因为Spring Boot 2.x在Actuator模块中使用Micrometer来实现监控,所以需要引入spring-boot-starter-actuator依赖。必要的3个配置分别是spring-boot-starter-actuator、micrometer-registry-prometheus和micrometer-core。Maven项目中pom文件的配置方式如下所示。


<!--监控系统健康情况的工具-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
<version>2.2.X.RELEASE</version>
</dependency>

<!--桥接Prometheus-->
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-prometheus</artifactId>
<version>1.3.0</version>
</dependency>

<!--micrometer核心包,按需引入,使用Meter注解或手动埋点时需要-->
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-core</artifactId>
<version>1.3.0</version>
</dependency>

我个人推荐加入micrometer-jvm-extras依赖,它可以获取Spring Boot的JVM信息,这些指标信息可以方便用户基于Grafana绘制可视化的JVM监控大盘。


<!--micrometer获取JVM相关信息,并展示在Grafana上-->
<dependency>
<groupId>io.github.mweirauch</groupId>
<artifactId>micrometer-jvm-extras</artifactId>
<version>0.1.4</version>
</dependency>

注意

·请使用以上Maven依赖的最新版本。

·Spring Boot 2.x项目引入上述依赖后,就会自动启用相关的配置。每一种监控系统的配置是不一样的,可以查看Spring Boot 2.x官方文档[1]

如果使用Spring Boot 1.5.x版本,需要引入micrometer-spring-legacy包,完整的Spring Boot 1.5.x的Maven依赖范例如下所示。


<!--监控系统健康情况的工具-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
<version>1.5.X.RELEASE</version>
</dependency>

<!--桥接Prometheus-->
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-prometheus</artifactId>
<version>1.3.0</version>
</dependency>

<!--micrometer核心包,按需引入,使用Meter注解或手动埋点时需要-->
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-core</artifactId>
<version>1.3.0</version>
</dependency>

<!--1.5.x版本Spring Boot兼容micrometer-->
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-spring-legacy</artifactId>
<version>1.3.0</version>
</dependency>

[1] https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#production-ready-metrics-export-prometheus。