You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用SpringBoot2、InfluxDB与Grafana理解并应用Micrometer指标

指标单位相关说明

Spring Boot 指标导出底层默认基于 Micrometer 实现,官方内置的核心指标都有明确的单位定义:

  • 时间类指标(如请求耗时、GC 暂停时长)默认单位为秒,如果你的配置中没有手动修改导出单位,就可以按秒计算
  • 计数类指标(如请求次数、GC 次数)无单位,为纯计数数值
  • 内存类指标默认单位为字节
    如果是自定义业务指标,单位由你注册指标时指定的参数决定。如果拿不准单位,可以查看同指标在 Prometheus 导出格式下的 HELP 注释,里面会明确标注单位定义。

histogram 类型指标字段含义与绘图方式

metric_type = histogram 是分布统计类指标,各字段含义统一如下:

  • count:统计窗口内对应事件的总发生次数
  • sum:统计窗口内所有事件的数值总和
  • mean:统计窗口内事件的平均值,等价于 sum / count
  • upper:统计窗口内事件的最大值

你说的没错,这类指标确实可以生成两类常用图表:

计数类图表

用 count 字段计算即可:

  • 接口请求场景:用 non_negative_derivative("count", 1s) 计算每秒请求数(QPS),也可以按 uri、status 等标签分组统计不同接口、不同状态码的请求量
  • GC 场景:按 action 标签分组,统计年轻代、老年代 GC 的累计次数或者每秒发生次数

时长类图表

用 sum、mean、upper 字段计算即可:

  • 接口请求场景:可以直接展示 mean 得到平均请求耗时,展示 upper 得到最大请求耗时,也可以统计指定周期内的总请求处理时长
  • GC 场景:可以展示 mean 得到单次 GC 平均暂停时长,展示 upper 得到单次 GC 最大暂停时长,也可以统计指定周期内的 GC 总暂停时长

结合你的示例补充说明

你给出的 HTTP 请求指标示例里,count=1 表示该统计窗口内只有 1 次 /actuator/health 接口的 GET 请求,sum=0.892144 表示这次请求总耗时 0.89 秒左右,因为只有 1 次请求,所以均值和最大值相等。
你给出的 GC 指标示例里,count=1 表示该统计窗口内发生了 1 次年轻代 GC,sum=2 表示这次 GC 总暂停时长为 2 秒(如果数值明显不符合你的实际业务情况,可以检查 Micrometer 配置是否修改了默认的时间导出单位)。

内容的提问来源于stack exchange,提问作者Juan Vega

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.13 08:33:02