Grafana 看板
Data source、Panel、Dashboard 导入。
35 分钟
Grafana 看板
Grafana 把 PromQL 查询变成曲线、表格与告警面板。ops lab 的 :3000 即 Grafana,数据源指向同 compose 内的 Prometheus。
学习目标
- 添加 Prometheus 数据源并测试连接
- 创建 Panel:QPS、错误率、JVM 内存
- 导入社区 Dashboard 并改 label 匹配本站 backend
核心内容
数据源
Grafana → Connections → Data sources → Prometheus
- URL(compose 内):
http://prometheus:9090 - URL(Grafana 跑在宿主机):
http://localhost:9090 - 点击 Save & test 应显示 green
手工 Panel 示例
Stat — 当前 QPS
sum(rate(http_server_requests_seconds_count{job="coderoadmap-backend"}[5m]))
Visualization: Time series 或 Stat;Legend: {{method}} {{uri}}。
Time series — P99 延迟
histogram_quantile(0.99,
sum by (le) (rate(http_server_requests_seconds_bucket{job="coderoadmap-backend"}[5m]))
)
Unit 设为 seconds (s);Y 轴从 0 开始便于读尾延迟。
Dashboard 组织
建议变量(Variables):
# Dashboard settings → Variables
name: env
type: query
query: label_values(up, env)
Panel 查询加 {env="$env"},dev/staging 切换同一套看板。
导入 JSON(可选)
Grafana.com 搜 JVM Micrometer 或 Spring Boot 2.1 Statistics,导入后把 job / application label 改成本站 scrape 配置(见 prom-scrape)。
与 Actuator health 对照
Grafana 看 趋势;瞬时存活仍用 /actuator/health(sb-actuator)给 K8s 探针。
练习
- 建 3 个 Panel:QPS、5xx 比例、heap used
- 设置 Dashboard 自动刷新 30s,压测 backend 观察变化
- 导出 Dashboard JSON 存到 ops lab 目录备 Git 管理
小结
下一课写 alerting rules 把阈值固化为告警。