从 JVM 指标暴露到 Grafana 仪表盘,搭建一套完整的 Java 应用监控体系。

一、可观测性三支柱

  • 1.1 Metrics(指标)——Prometheus + Grafana
  • 1.2 Logging(日志)——ELK / Loki
  • 1.3 Tracing(链路)——SkyWalking / Jaeger
  • 1.4 三者的关系

二、Prometheus 核心概念

  • 2.1 数据模型——Metric Name + Labels
  • 2.2 四种指标类型——Counter / Gauge / Histogram / Summary
  • 2.3 PromQL 基本语法
  • 2.4 拉模式——Prometheus 主动 pull 指标

三、Spring Boot 指标暴露

  • 3.1 Micrometer——指标门面
  • 3.2 spring-boot-starter-actuator + micrometer-registry-prometheus
  • 3.3 /actuator/prometheus 端点
  • 3.4 自定义指标——@Timed / Counter / Gauge

四、Prometheus 配置

  • 4.1 prometheus.yml——抓取配置
  • 4.2 Kubernetes 服务发现——kubernetes_sd_configs
  • 4.3 relabel_config——标签重写
  • 4.4 告警规则——alert.rules

五、Grafana 仪表盘

  • 5.1 数据源配置——添加 Prometheus
  • 5.2 JVM 监控仪表盘——Micrometer JVM 指标
  • 5.3 业务指标仪表盘——QPS / RT / 错误率
  • 5.4 导入社区仪表盘——ID 4701

六、Alertmanager 告警

  • 6.1 告警规则配置
  • 6.2 告警路由——按严重程度分渠道
  • 6.3 告警通知——企业微信/钉钉/邮件
  • 6.4 告警静默与抑制

七、总结

  • Micrometer + Prometheus + Grafana 是 Java 监控的事实标准
  • 关键指标——JVM 指标 + 接口 QPS/RT + 业务指标