价值流仪表盘(Beta)
旗舰版

  • 引入于 15.8 版本,作为内部 Beta 功能,功能标志group_analytics_dashboards_page。默认禁用。
  • 发布于 15.11 版本,作为 Beta 功能,功能标志group_analytics_dashboards_page。默认启用。
  • 一般可用于 16.0 版本。删除功能标志 group_analytics_dashboards_page

价值流仪表盘是一个可自定义的仪表盘,可用于识别数字化转型改进的趋势、模式和机会。 价值流仪表盘中的集中式 UI 作为单一事实来源 (SSOT),所有利益相关者都可以访问和查看与组织相关的同一组指标。

价值流仪表盘包括以下指标: - DORA 指标 - 价值流分析(VSA) - 流指标 - 漏洞指标

您可以使用价值流仪表盘:

  • 跟踪并比较一段时间内的上述指标。
  • 尽早识别下降趋势。
  • 了解安全风险。
  • 深入研究各个项目或指标,采取改进措施。

价值流仪表盘面板

价值流仪表盘面板有一个默认配置,但是您还可以自定义仪表盘面板

概览面板

  • 引入于极狐GitLab 16.7,并使用名为 group_analytics_dashboard_dynamic_vsd功能标志。默认禁用。
  • 在极狐GitLab 17.0 中 GA。
  • 功能标志 group_analytics_dashboard_dynamic_vsd 在极狐GitLab 17.0 中被移除。

概览面板提供了一个整体的命名空间活动视图,通过可视化关键的 DevOps 指标来实现:

  • 子群组
  • 项目
  • 用户
  • 问题
  • 合并请求
  • 流水线

概览面板上展示的数据是通过批处理收集的。极狐GitLab 将每个子群组的记录计数存储在数据库中,然后聚合记录计数以提供顶级群组的指标。数据按月聚合,通常在月底进行,具体取决于极狐GitLab 系统上的负载。

note 要查看概览面板上的指标,必须启用后台聚合

DevSecOps 指标比较面板

  • 顶级群组的贡献者计数指标引入于极狐GitLab 16.9。

DevSecOps 指标比较面板显示群组或项目的月度、上月、上上月和过去 180 天的指标。这些可视化有助于您了解关键的 DevSecOps 指标是否每月都有所改善。价值流仪表盘显示三个 DevSecOps 指标比较面板:

  • 生命周期指标
  • DORA 指标
  • 安全指标

在每个对比面板,您可以:

  • 一目了然地比较群组、项目和团队间的绩效。
  • 识别贡献最大的团队和项目,以及表现优异或表现不佳的团队和项目。
  • 进一步分析指标。

当您悬停在一个指标上时,一个工具提示会显示该指标的解释和一个链接到相关的文档页面。

每月的值也显示了与上个月相比的百分比增加或减少。

过去六个月的迷你图颜色表示该时间段内值的趋势,而不是百分比变化率。

过去六个月的迷你图颜色从蓝色到绿色,其中绿色表示正趋势,蓝色表示负趋势。迷你图颜色能够帮助您识别时间趋势中的模式(例如季节性变化)。

通过标签过滤 DevSecOps 指标对比面板

标签筛选条件会作为查询参数附加到每个符合条件的指标的下钻报告的 URL 中,并会自动应用。 如果配置文件中的比较面板使用 filters.labels 启用,则下拉链接会继承面板筛选器中的标签。

panels:
  - title: 'Group dora metrics'
    visualization: vsd_dora_metrics_table
    queryOverrides:
      namespace: my-dora-group
      filters:
        labels:
          - in_development
          - in_review
note 仅有精确匹配的标签才会应用。

DORA Performer 评分面板

  • 引入于极狐GitLab 16.3,功能标志dora_performers_score_panel。默认禁用。
  • 在极狐GitLab 16.11 中 GA。功能标志 dora_performers_score_panel 被移除。

DORA 指标 Performer 评分面板是一个条形图,可直观地显示组织在不同项目中的 DevOps 绩效水平的状态。

该图表是项目 DORA 分数的细分,分为高、中和低。它聚合了群组中的所有子项目。

图表上的每个条形显示每个分数类别的项目总数,每月计算一次。要从图表中排除数据(例如“不包括”),请在图例中选择要排除的系列。将鼠标悬停在每个条上会显示一个解释分数定义的对话框。

例如,如果项目的部署频率(速度)部分得分较高,则意味着该项目每天至少部署到生产环境一次。

指标 描述
部署频率 每天部署到生产环境的数量 ≥30 1-29 ≤1
变更准备时间 从代码提交到代码在生产中成功运行所需的天数 ≤7 8-29 ≥30
恢复服务时间 发生影响用户的服务事件或缺陷时恢复服务的天数 ≤1 2-6 ≥7
变更失败率 生产变化导致服务质量下降的百分比 ≤15% 16%-44% ≥45%

通过项目主题过滤 DORA Performer 评分

当您使用 YAML 配置自定义仪表板时,您可以按分配的主题过滤显示的项目。

panels:
  - title: 'My dora performers scores'
    visualization: dora_performers_score
    queryOverrides:
      namespace: group/my-custom-group
      filters:
        projectTopics:
          - JavaScript
          - Vue.js

如果提供了多个主题,则所有主题都必须匹配,项目才会包含在结果中。

启用或禁用概览后端聚合
旗舰版

  • 引入于极狐GitLab 16.1,并使用名为 value_stream_dashboard_on_off_setting功能标志。默认禁用。
  • 在极狐GitLab 16.4 中为私有化部署版本启用。
  • 功能标志 value_stream_dashboard_on_off_setting 被移除。

要启用或禁用价值流仪表盘的概览后端聚合,您可以:

  1. 在左侧导航栏,选择 搜索或转到 并找到您的顶级群组。
  2. 选择 设置 > 分析
  3. 价值流仪表盘 下,选择或清除 启用价值流仪表盘的概览后端聚合 复选框。

要获取群组中的聚合使用计数,请使用 GraphQL API

查看价值流仪表盘

先决条件:

  • 您必须至少具有群组的报告者角色。
  • 针对价值流仪表盘的概览后端聚合必须被启用。
  • 要在对比面板上查看贡献者计数指标,您必须设置 ClickHouse。

查看价值流仪表盘:

  • 从分析仪表盘:

    1. 在群组的左侧边栏上,选择 搜索或转到 并找到您的群组。
    2. 选择 分析 > 分析仪表盘
  • 从价值流分析:

    1. 在左侧边栏中,选择 搜索或转到 并找到您的项目或群组。
    2. 选择 分析 > 价值流分析
    3. 筛选结果 文本框下,在 生命周期s 行,选择 价值流仪表盘 / DORA
    4. 可选。要打开新页面,将 /analytics/dashboards/value_streams_dashboard 附加到群组 URL(例如 https://gitlab.com/groups/gitlab-org/-/analytics/dashboards/value_streams_dashboard)。

查看项目的价值流仪表盘

  • 引入于极狐GitLab16.7,使用名为 project_analytics_dashboard_dynamic_vsd功能标志。默认禁用。
  • 功能标志 project_analytics_dashboard_dynamic_vsd 在极狐GitLab 17.5 中被移除。

先决条件:

  • 您必须至少具有项目的报告者角色。
  • 价值流仪表盘的概览后端聚合必须被启用。

查看项目的价值流仪表盘:

  1. 在左侧边栏中,选择 搜索或转到 并找到您的项目。
  2. 选择 分析 > 分析仪表板
  3. 从可用仪表板列表中选择 价值流仪表盘

自定义仪表盘面板

您可以自定义价值流仪表盘面板,以包括您选择的子群组和项目。

要自定义页面的默认内容,您需要在您选择的项目上创建一个 YAML 配置文件。在该文件中,您可以定义各种设置和参数,例如标题、描述、面板数量和标签过滤器。该文件是基于模式的,并由版本控制系统(如 Git)管理。这使您可以跟踪和维护配置更改的历史记录,如果需要,可以回滚到以前的版本,并与团队成员有效地协作。查询参数仍可用于覆盖 YAML 配置。查询参数还可以被用来覆盖 YAML 配置。

在您自定义仪表盘面板前,您必须选择一个项目来存储您的 YAML 配置文件。

先决条件:

  • 您必须至少具有该群组的维护者角色。
  1. 在左侧边栏中,选择 搜索或转到 并找到您的群组。
  2. 选择 设置 > 分析
  3. 选择您要存储 YAML 配置文件的项目。
  4. 选择 保存更改

设置项目后,设置配置文件:

  1. 在左侧边栏中,选择 搜索或转到 并找到您的项目。
  2. 在默认分支中,创建配置文件:.gitlab/analytics/dashboards/value_streams/value_streams.yaml
  3. value_streams.yaml 配置文件中,填写配置选项:
字段 描述
title 面板的自定义名称
queryOverrides (之前是 data 覆盖特定于每种可视化效果的数据查询参数。
namespacequeryOverrides 的子字段) 面板使用的群组或项目
filtersqueryOverrides 的子字段) 为每种可视化类型筛选查询内容。 查看支持的可视化
visualization 要呈现的可视化类型。支持的有 dora_chartdora_performers_scoreusage_overview
gridAttributes 面板的尺寸和位置
xPosgridAttributes 的子字段) 面板的水平位置
yPosgridAttributes 的子字段) 面板的垂直位置
widthgridAttributes 的子字段) 面板的宽度(最大 12)
heightgridAttributes 的子字段) 面板的高度
# version - The latest version of the analytics dashboard schema
version: '2'

# title - Change the title of the Value Streams Dashboard.
title: 'Custom Dashboard title'

# description - Change the description of the Value Streams Dashboard. [optional]
description: 'Custom description'

# panels - List of panels that contain panel settings.
#   title - Change the title of the panel.
#   visualization - The type of visualization to be rendered
#   gridAttributes - The size and positioning of the panel
#   queryOverrides.namespace - The Group or Project path to use for the chart panel
#   queryOverrides.filters.excludeMetrics - Hide rows by metric ID from the chart panel.
#   queryOverrides.filters.labels -
#     Only show results for data that matches the queried label(s). If multiple labels are provided,
#     only a single label needs to match for the data to be included in the results.
#     Compatible metrics (other metrics will be automatically excluded):
#       * lead_time
#       * cycle_time
#       * issues
#       * issues_completed
#       * merge_request_throughput
panels:
  - title: 'Group usage overview'
    visualization: usage_overview
    queryOverrides:
      namespace: group
      filters:
        include:
          - groups
          - projects
    gridAttributes:
      yPos: 1
      xPos: 1
      height: 1
      width: 12
  - title: 'Group dora and issue metrics'
    visualization: dora_chart
    queryOverrides:
      namespace: group
      filters:
        excludeMetrics:
          - deployment_frequency
          - deploys
        labels:
          - in_development
          - in_review
    gridAttributes:
      yPos: 2
      xPos: 1
      height: 12
      width: 12
  - title: 'My dora performers scores'
    visualization: dora_performers_score
    queryOverrides:
      namespace: group/my-project
      filters:
        projectTopics:
          - ruby
          - javasript
    gridAttributes:
      yPos: 26
      xPos: 1
      height: 12
      width: 12

支持的可视化过滤器

queryOverrides 字段的子字段 filters 可以用来定制面板中显示的数据。

DevSecOps 指标对比面板过滤器

针对 dora_chart 可视化的过滤器。

过滤器 描述 支持的值
excludeMetrics 根据指标 ID 从图表面板中隐藏相应的行 deployment_frequency, lead_time_for_changes,time_to_restore_service, change_failure_rate, lead_time, cycle_time, issues, issues_completed, deploys, merge_request_throughput, median_time_to_merge, contributor_count, vulnerability_critical, vulnerability_high
labels 通过标签过滤数据 任何可用的群组标签。以下指标都支持标签过滤器:lead_time, cycle_time, issues, issues_completed, merge_request_throughput, median_time_to_merge

DORA 绩效分数面板过滤器

针对 dora_performers_score 可视化的过滤器。

过滤器 描述 支持的值
projectTopics 根据项目所分配的主题来筛选显示的项目。 任何可用的群组主题

使用概览面板过滤器

针对 usage_overview 可视化的过滤器。

群组和子群组命名空间
过滤器 描述 支持的值
include 限制返回的指标,默认展示所有的可用指标 groups, projects, issues, merge_requests, pipelines, users
项目命名空间
过滤器 描述 支持的值
include 限制返回的指标,默认展示所有的可用指标 issues, merge_requests, pipelines

仪表盘指标和下拉报告

指标 描述 下拉报告 文档页面 ID
部署频率 每天部署到生产环境的平均部署数量。此指标衡量价值被交付给终端用户的频率。 部署频率选项卡 部署频率 deployment_frequency
变更前置时间 将提交成功交付到生产的时间。此指标反映了 CI/CD 流水线的效率。 前置时间选项卡 变更前置时间 lead_time_for_changes
服务恢复时间 组织在生产环境上失败中恢复的时间。 服务恢复选项卡 服务恢复时间 time_to_restore_service
变更失败率 引发生产事件的部署百分比。 变更失败率选项卡 变更失败率 change_failure_rate
前置时间 议题被创建和关闭的中位数时间。 价值流分析 查看议题的前置时间和周期时间 lead_time
周期时间 从一个关联议题的合并请求的最早提交时间到该问题关闭时的中位时间 价值流概览 查看议题的前置时间和周期时间 cycle_time
创建的议题 新议题创建的数量。 议题分析 议题分析 issues
关闭的议题 每月关闭的议题数量。 议题分析 议题分析 issues_completed
部署次数 部署到生产的总数。 合并请求分析 合并请求分析 deploys
合并请求吞吐量 每月合并的合并请求数量。 群组生产分析, Projects Merge Request Analytics 群组生产分析 Projects Merge request analytics merge_request_throughput
合并的中位时间 合并请求创建和合并之间的中位数时间 群组生产分析项目合并请求分析 群组生产分析 项目合并请求分析 median_time_to_merge
贡献者计数 该群组中每月有贡献的独立用户数量 贡献分析 用户贡献事件 contributor_count
严重漏洞 项目或群组中随时间变化的严重漏洞情况 漏洞报告 漏洞报告 vulnerability_critical
高危漏洞 项目或群组中随时间变化的高危漏洞情况 漏洞报告 漏洞报告 vulnerability_high

使用 Jira 的价值流仪表盘指标

以下指标不依赖于使用 Jira:

  • DORA 部署频率
  • DORA 变更前置时间
  • 部署数量
  • 合并请求吞吐量
  • 合并的中位数
  • 漏洞