概述
本指南帮助Java开发人员配置应用监控指标采集,涵盖JVM性能、应用性能、业务指标等关键监控数据。
监控方案选择
指标采集框架
- Micrometer:指标收集门面框架(推荐)
配置步骤
方案A:使用Micrometer + Prometheus(推荐)
1. 添加依赖
<!-- Maven -->
<dependencies>
<!-- Prometheus注册表 -->
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-registry-prometheus</artifactId>
<version>1.14.5</version>
</dependency>
<!-- Spring Boot Actuator(如果使用Spring Boot) -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>
</dependencies>2. Spring Boot配置示例
# application.yml
spring:
application:
name: demo-server
management:
server:
port: 8888
endpoints:
web:
exposure:
include: '*'
base-path: /actuator
metrics:
tags:
application: ${spring.application.name}
prometheus:
metrics:
export:
enabled: true
descriptions: false3. 自定义指标采集
import io.micrometer.core.instrument.MeterRegistry;
import org.springframework.stereotype.Component;
@Component
public class CustomMetrics {
private final Counter requestCounter;
private final Timer responseTimer;
public CustomMetrics(MeterRegistry registry) {
// 自定义计数器
requestCounter = Counter.builder("app.requests.total")
.description("总请求数")
.tag("application", "myapp")
.register(registry);
// 自定义计时器
responseTimer = Timer.builder("app.response.time")
.description("响应时间")
.publishPercentiles(0.5, 0.95, 0.99)
.register(registry);
}
public void recordRequest() {
requestCounter.increment();
}
public void recordResponseTime(Runnable task) {
responseTimer.record(task);
}
}关键监控指标
1. JVM指标
- 内存使用:堆内存、非堆内存、各分区使用率
- GC情况:GC次数、GC耗时
- 线程状态:线程数、死锁检测
- 类加载:加载/卸载类数量
2. 应用性能指标
- HTTP请求:QPS、响应时间、错误率
- 数据库连接池:活跃连接、等待连接
- 缓存命中率
- 外部调用成功率
3. 业务指标
- 关键业务流程执行次数
- 订单量、支付成功率等
- 用户活跃度
配置验证
1. 检查端点
# Prometheus指标端点
curl http://localhost:8888/actuator/prometheus
# 健康检查
curl http://localhost:8888/actuator/health
# 详细信息
curl http://localhost:8888/actuator/metrics2. 验证指标
# 查找特定指标
curl http://localhost:8888/actuator/prometheus | grep "jvm_memory_used"
# 响应示例:
# jvm_memory_used_bytes{area="heap",} 2.41056768E8
# jvm_memory_used_bytes{area="nonheap",} 8.0064128E7监控平台集成
- 登录容器引擎平台,进入主控制台;
- 进入目标 【项目详情页】;
- 切换至 【服务】 标签页;
- 在列表中找到目标服务,点击其右侧的 【监控配置】,即可进入 【监控指标采集配置】 页面。
- 如果没有服务,请先【创建服务】

| 项目 | 说明 | 示例值 |
|---|---|---|
| 容器内监控端口 | 目标服务中用于暴露监控指标的端口号。 | 8888 |
| 监控路径 | 目标服务上提供监控数据的 HTTP 路径。 | /actuator/prometheus |
| 抓取URL(自动生成) | 系统根据PodIP、端口和路径自动拼接的完整访问地址,用于实际抓取监控数据。 |
通过以上配置,您的Java应用将能够采集关键监控指标,帮助您及时发现和解决问题,保证系统稳定运行。
作者:叶奕珺 创建时间:2025-12-22 19:46
最后编辑:叶奕珺 更新时间:2026-01-15 14:15
最后编辑:叶奕珺 更新时间:2026-01-15 14:15