Prometheus+Grafana监控Springboot应用
一:简介
-
SpringBoot 的 actuator 提供了监控端点,micrometer产生监控数据。
-
Prometheus 是监控系统,可以从 Springboot 获取监控数据,以时序数据的形式存储,并提供了监控数据的查询服务。
-
Grafana 是专业的 UI 仪表盘系统,支持非常多的数据源,其中就包括 Prometheus,可以便利的从中获取数据,使用仪表盘展示出来。
二:步骤
- 创建应用 – 作为监控目标,产生监控数据。
- 集成 micrometer – 以便对接监控系统 Prometheus。
- 部署 prometheus
- 配置 prometheus – 监控之前创建的 springboot 应用,了解 Prometheus 的查询服务。
- 部署 Grafana
- 添加 Prometheus 数据源
- 添加 JVM 监控仪表盘 – 展示 springboot 应用的 JVM 状态。
- 自定义监控指标
- 动态变更监控目标,使用动态配置的方式。
1. 创建springboot应用 集成 micrometer
创建一个最简的 springboot 应用,添加 micrometer 依赖。
pom.xml :
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
<version>2.7.3</version>
</dependency>
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-prometheus</artifactId>
<version>1.9.3</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
<version>2.7.3</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>