kubectl port-forward
访问bash
复制
kubectl port-forward svc/grafana -n monitoring 3000:3000
访问 http://localhost:3000
,默认凭据为:
admin
admin
(首次登录后需修改)如果已配置 Ingress,访问对应的域名(如 http://grafana.example.com
)。
Grafana 默认可能已集成 Prometheus。若未配置,手动添加:
http://prometheus-k8s.monitoring.svc:9090
)。4701
(Micrometer 官方推荐)。4701
,点击 Load。若需自定义,可创建一个新仪表盘并添加以下面板:
PromQL 查询:
promql
复制
jvm_memory_used_bytes{application="your-springboot-app-name", area="heap"}
可视化类型:Time series 或 Gauge。
PromQL 查询:
promql
复制
sum(rate(http_server_requests_seconds_count[5m])) by (uri, method, status)
可视化类型:Table 或 Bar chart。
在仪表盘中检查是否有数据更新。
确认指标名称与 Spring Boot 应用暴露的 Prometheus 指标一致:
bash
复制
kubectl exec -it <pod-name> -n epoch-test -- curl localhost:8080/actuator/prometheus
在 Spring Boot 代码中添加自定义指标:
java
复制
import io.micrometer.core.instrument.Counter;
import io.micrometer.core.instrument.MeterRegistry;
@Autowired
private MeterRegistry registry;
public void trackCustomMetric() {
Counter counter = registry.counter("custom_metric");
counter.increment();
}
PromQL:
promql
复制
(jvm_memory_used_bytes{area="heap"} / jvm_memory_max_bytes{area="heap"}) * 100 > 80
持续时长: 5m
通知渠道: 配置 Slack、Email 等。
/actuator/prometheus
端点,确认指标存在。同步标签:在 Spring Boot 的 application.yml
中添加统一标签:
yaml
复制
management:
metrics:
tags:
application: ${spring.application.name}
4701
: Spring Boot 2.1 Statistics6756
: JVM Micrometer Metrics11378
: Spring Boot HikariCP Monitoring完成以上步骤后,你的 Spring Boot 服务的运行状态、性能指标和业务数据将实时展示在 Grafana 中!
最后成功监控