CodeRoadMap
首页路线题库资源库文章社区
CodeRoadMap

程序员的学习成长路线图。内容免费开放,登录后可同步路线图与课时进度。

由 程序员柏风 独立维护 · 关于作者

学习

  • 路线图
  • 课程
  • 面试题
  • 文章
  • 我

更多

  • 资源
  • 社区
  • 关于作者
  • 内容说明

© 2026 CodeRoadMap

津ICP备2026012044号-1·津公网安备12011002026155号·coderoadmap@126.com
Prometheus 与 Grafana 入门/课时/Spring Micrometer
RawBlame
课时目录12 节

Prometheus 与 Grafana 入门

  1. 01可观测性入门
  2. 02指标类型
  3. 03Docker 部署
  4. 04抓取配置
  5. 05PromQL 基础
  6. 06Spring Micrometer
  7. 07Grafana 看板
  8. 08告警规则
  9. 09K8s 中的 Prometheus
  10. 10指标 vs 日志
  11. 11与 Spring Cloud 可观测
  12. 12综合练习

Spring Micrometer

Actuator /actuator/prometheus、自定义 meter。

40 分钟

Spring Micrometer

CodeRoadMap backend 基于 Spring Boot,指标经 Micrometer 注册,由 Actuator 以 Prometheus 文本格式暴露。这是应用侧与本 track 的衔接点。

学习目标

  • 添加 micrometer-registry-prometheus 依赖
  • 暴露 /actuator/prometheus 并被 ops lab 抓取
  • 编写简单业务 Counter(如课程报名)

核心内容

依赖

<dependency>
  <groupId>io.micrometer</groupId>
  <artifactId>micrometer-registry-prometheus</artifactId>
</dependency>

已有 sb-actuator 时只需补 registry 与 exposure。

配置

management:
  endpoints:
    web:
      exposure:
        include: health,prometheus,metrics,info
  metrics:
    tags:
      application: coderoadmap-backend

application 标签便于多服务同 Prometheus 时过滤。

自动指标

Spring Boot 自动注册:

  • http_server_requests_seconds_* — HTTP 延迟与状态
  • jvm_memory_used_bytes — 堆内存
  • jdbc_connections_* — 数据源(若启用)
  • process_cpu_usage — CPU

与 sc-observability 中自定义 Counter 写法一致:

@Service
public class EnrollService {
    private final Counter enrollCounter;

    public EnrollService(MeterRegistry registry) {
        this.enrollCounter = Counter.builder("course.enroll.total")
            .tag("type", "free")
            .register(registry);
    }

    public void enroll(Long userId, String slug) {
        // 业务逻辑…
        enrollCounter.increment();
    }
}

验证链路

curl -s localhost:8080/actuator/prometheus | grep course_enroll
# Prometheus: course_enroll_total{type="free"}

确认 prom-scrape 中 metrics_path 正确。

练习

  • 访问 /actuator/metrics/http.server.requests 与 Prometheus 导出对照命名差异
  • 压测 GET /api/tracks,在 Prometheus 查 rate(http_server_requests_seconds_count[1m])
  • 在 后端路线图 标注 Actuator → Prometheus 节点
  • 小结

    Micrometer 产指标,Actuator 暴露 /actuator/prometheus,Prometheus 拉取入库。 下一课在 Grafana 建看板可视化这些序列。

    加载本节练习…
    ← 上一课PromQL 基础下一课 →Grafana 看板