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

如何可视化Spring Actuator Prometheus指标并托管至GitLab Pages

完全可以实现,整套流程可以完全在GitLab生态内闭环,不需要依赖外部第三方服务,最终能做到和OpenAPI文档一致的可检索、分类浏览的可视化效果。

具体实现逻辑

1. 指标拉取环节

在GitLab CI中配置流水线定时任务,定期请求你服务的/api/actuator/prometheus端点拉取最新的Prometheus格式指标原文。如果你的端点有访问鉴权,把访问凭证存在GitLab CI的私密变量里,请求时带上对应鉴权头即可,不会出现凭证泄露问题。

注意控制拉取频率,非生产环境每天拉1~2次足够,生产环境如果需要展示近实时数据可以设为每小时1次,避免给业务服务造成不必要的请求压力。

2. 可视化页面构建

拉取到的Prometheus文本是标准结构化内容,你可以直接做解析渲染,不需要从零开发复杂逻辑:

  • 先把原始文本按Prometheus规范拆分,提取每个指标的名称、类型、帮助说明、关联标签、当前样本值几个核心字段
  • 页面层做几个基础交互就能达到类OpenAPI的使用体验:
    • 按指标类型(Counter/Gauge/Histogram/Summary)做分组分类
    • 支持关键词检索,可匹配指标名、帮助说明内容
    • 指标默认折叠展示核心信息,点击展开查看完整标签维度、样本值详情
    • 给每个指标加独立锚点,支持直接跳转分享单个指标的说明
  • 不想手写前端代码的话,也可以直接用现成的Prometheus指标静态展示模板,把拉取到的指标数据作为入参喂给模板,直接构建出完整的静态页面,所有依赖可以提前锁版本存在仓库内,构建阶段不需要访问外部网络。

构建阶段建议加一层敏感数据过滤,把包含内部IP、业务敏感信息、用户隐私的标签或指标直接剔除,避免敏感数据泄露。页面上可以额外保留原始指标文本的下载入口,方便需要配置监控规则的用户直接取用原始格式内容。

3. GitLab Pages部署

CI构建完成后,把生成的HTML、JS、CSS及原始指标文件全部作为构建产物,提交到GitLab Pages的部署任务即可。你可以根据指标的敏感程度配置Pages的访问权限:内部使用的指标设为仅项目成员可访问,公开服务的指标可以放开匿名访问。部署完成后就能通过GitLab Pages分配的固定地址访问可视化的指标文档了。

内容的提问来源于stack exchange,提问作者Semyon Kirekov

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 23:24:15