搭建线上jvm监控

这里写目录标题

  • Springboot项目配置
    • maven依赖
    • application.properties
    • 添加监控JVM的配置类
    • 启动springboot项目
  • Prometheus配置
  • 配置grafana

Springboot项目配置

maven依赖

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
<dependency><groupId>io.micrometer</groupId><artifactId>micrometer-registry-prometheus</artifactId>
</dependency>

application.properties

spring.application.name=springboot
server.port=8080
management.endpoints.web.exposure.include=*
management.metrics.tags.application=${spring.application.name}  

添加监控JVM的配置类

@Bean
public MeterRegistryCustomizer<MeterRegistry> configurer(@Value("${spring.application.name}") String applicationName) {return registry -> registry.config().commonTags("application", applicationName);
}

启动springboot项目

访问 http://localhost:8080/actuator/prometheus 查看指标是否正常

Prometheus配置

- job_name: "jvm"# 多久采集一次数据scrape_interval: 5s# 采集时的超时时间scrape_timeout: 5s# 采集的路径metrics_path: '/actuator/prometheus'# 采集Springboot服务的地址static_configs:- targets: ['127.0.0.1:8080']

启动prometheus,查看指标情况 prometheus.exe --config.file=file(此启动方式是windows下,安装包解压后,在项目根目录下执行的命令)

http://localhost:9090/metrics

配置grafana

模板地址 https://grafana.com/grafana/dashboards

https://grafana.com/grafana/dashboards/4701-jvm-micrometer/