(1)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>
(2)application.properties
spring.application.name=springboot_jvm
server.port=6001
management.endpoints.web.exposure.include=*
management.metrics.tags.application=${spring.application.name}
(3)SpringBoot主启动类中添加监控JVM的配置类
@Bean
MeterRegistryCustomizer<MeterRegistry> configurer(@Value("${spring.application.name}") String applicationName) {
return registry -> registry.config().commonTags("application", applicationName);
}
(4)启动springboot项目,访问 http://localhost:6001/actuator/prometheus 可以看到一些统计指标
代码地址:https://github.com/DannyHoo/PrometheusProject/tree/master/SpringBootJVM
修改宿主机prometheus配置文件prometheus.yml
scrape_configs:
- job_name: "springboot_jvm"
# 多久采集一次数据
scrape_interval: 5s
# 采集时的超时时间
scrape_timeout: 5s
# 采集的路径
metrics_path: '/actuator/prometheus'
# 采集Springboot服务的地址
static_configs:
- targets: ['10.246.140.63:6001']
主要是在prometheus.yml默认配置中加一个job,job_name为 "springboot_jvm"
,修改完配置文件,重启Prometheus
docker restart prometheus
然后在Prometheus的targets中(http://127.0.0.1:9090/targets)就可以看到刚才配置的Node Exporter服务了:
添加JVM监控看板(具体添加步骤可参考前面的文章《【监控利器Prometheus】——Prometheus+Grafana监控服务器资源》)
导入官网模板4701,DataSource选之前配置好的Prometheus,导入后的效果如下:
上篇写了通过Prometheus+Grafana监控服务器资源时,是通过Node Exporter来采集服务器资源的,如果Java项目不是SpringBoot项目,要采集JVM信息,可以启动Java项目的时候通过JMX Exporter(下载地址:https://repo1.maven.org/maven2/io/prometheus/jmx/jmx_prometheus_javaagent/ )来进行采集。以 jmx_prometheus_javaagent-0.12.0.jar 为例,当启动Java应用时
2、新增配置文件 simple-config.yml
---
wercaseOutputLabelNames: true
lowercaseOutputName: true
whitelistObjectNames: ["java.lang:type=OperatingSystem"]
rules:
- pattern: 'java.lang<type=OperatingSystem><>((?!process_cpu_time)\w+):'
name: os_$1
type: GAUGE
attrNameSnakeCase: true
3、启动Java应用
java -javaagent:/usr/local/jmx/jmx_prometheus_javaagent-0.12.0.jar=3010:/usr/local/jmx/simple-config.yml -jar 要监控的应用.jar
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有