如何同时监控多个CI/CD流水线并在单页展示?
同一页面展示多CI/CD流水线监控方案
能否在同一页面展示多个CI/CD流水线?此处并非询问如何运行多个流水线,而是如何监控/展示它们。例如,假设我们拥有一个包含多个微服务的monorepo,希望在同一页面查看当前所有运行中流水线的CI/CD进度:
auth microservice : lint -> [build] -> test -> deploy payments microservice: lint -> build -> test -> [deploy]
当然可以实现,以下是几种实用方案:
一、主流CI/CD工具自带仪表盘
大部分成熟工具都支持聚合展示多流水线状态:
- GitLab CI/CD:项目的「CI/CD > Pipelines」页面可筛选分支、标签,查看所有流水线列表,每个流水线能标注所属微服务(需配置job标签);也可通过自定义仪表盘添加多个流水线的状态卡片,直观展示阶段进度。
- GitHub Actions:仓库「Actions」页面默认列出所有运行中流水线,可通过workflow文件名或
run-name字段标注微服务名称,快速区分不同服务的进度;也能借助自定义仪表盘聚合视图。 - Jenkins:安装
Build Monitor Plugin或Pipeline Stage View Plugin,创建自定义视图并添加各微服务流水线,每个流水线会以颜色区分状态(运行中蓝色、成功绿色、失败红色),并显示当前所处阶段。
二、自定义监控页面
如果工具自带功能不够灵活,可自行搭建:
- 调用CI/CD工具的API(如GitLab API、Jenkins API)拉取流水线实时状态和阶段数据,用React、Vue等前端框架或静态页面工具渲染成统一界面,按你示例的样式展示每个微服务的流水线进度,标注当前运行阶段。
- 结合Prometheus + Grafana:将CI/CD状态指标采集到Prometheus,在Grafana中创建自定义面板,聚合展示多流水线的进度、成功率等数据,还可配置告警提醒。
三、第三方DevOps监控工具
部分专门工具支持多流水线聚合:
- CircleCI:组织级仪表盘可按项目(微服务)分组,查看所有运行中流水线的状态和阶段。
- Atlassian Bamboo:通过自定义仪表盘添加「Stage Status」组件,将多个微服务的流水线进度集中展示。
内容的提问来源于stack exchange,提问作者username
相关产品推荐
相关产品推荐

