Help us learn about your current experience with the documentation. Take the survey.

状态页面

  • Tier: Ultimate
  • Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated

使用 GitLab 状态页面,您可以创建并部署一个静态网站,以便在事件期间高效地与用户沟通。状态页面首页会显示最近事件的概览:

Status Page landing page

选择某个事件会显示一个包含该事件更多信息的详情页面:

Status Page detail

  • 事件状态,包括事件最后更新的时间。
  • 事件标题,包括任何表情符号。
  • 事件描述,包括表情符号。
  • 事件描述中提供的任何文件附件,或带有有效图片扩展名的评论。
  • 对事件更新的按时间顺序排列的列表。

设置状态页面

要配置 GitLab 状态页面,您必须:

  1. 使用您的云提供商信息 配置 GitLab
  2. 配置您的 AWS 账户
  3. 在 GitLab 上 创建状态页面项目
  4. 将事件同步到状态页面

使用云提供商信息配置 GitLab

仅支持 AWS S3 作为部署目标。

先决条件:

  • 您必须至少拥有 Maintainer 角色。

为了向 GitLab 提供将内容推送到状态页面所需的 AWS 账户信息:

  1. 在左侧边栏,选择 Search or go to 并找到您的项目。
  2. 选择 Settings > Monitor
  3. 展开 Status page
  4. 选中 Active 复选框。
  5. Status Page URL 框中,提供您外部状态页面的 URL。
  6. S3 Bucket name 框中,输入您的 S3 存储桶名称。有关更多信息,请参阅 存储桶配置文档
  7. AWS region 框中,输入您的存储桶所在区域。有关更多信息,请参阅 AWS 文档
  8. 输入您的 AWS access key IDAWS Secret access key
  9. 选择 Save changes

配置您的 AWS 账户

  1. 在您的 AWS 账户中,使用以下文件作为示例创建两个新的 IAM 策略:
  2. 使用第一步创建的权限策略创建一个新的 AWS 访问密钥。

创建状态页面项目

配置完 AWS 账户后,您必须添加状态页面项目并配置必要的 CI/CD 变量,以便将状态页面部署到 AWS S3:

  1. Fork Status Page 项目。 您可以通过 Repository Mirroring 来完成, 这确保您能获得最新的状态页面功能。
  2. 在左侧边栏,选择 Settings > CI/CD
  3. 展开 Variables
  4. 从您的 Amazon 控制台添加以下变量:
    • S3_BUCKET_NAME - Amazon S3 存储桶的名称。 如果没有提供名称的存储桶存在,第一个流水线运行会创建 一个并将其配置为 静态网站托管

    • AWS_DEFAULT_REGION - AWS 区域。

    • AWS_ACCESS_KEY_ID - AWS 访问密钥 ID。

    • AWS_SECRET_ACCESS_KEY - AWS 密钥。

  5. 在左侧边栏,选择 Build > Pipelines
  6. 要将状态页面部署到 S3,选择 New pipeline

考虑限制谁能访问此项目中的问题,因为任何可以查看事件的用户都可能 向您的 GitLab 状态页面发布评论

将事件同步到状态页面

创建 CI/CD 变量后,配置您要用于事件的项目:

  1. 在左侧边栏,选择 Search or go to 并找到您的项目。
  2. 选择 Settings > Monitor
  3. 展开 Status page
  4. 填写您的云提供商凭据,并确保选中 Active 复选框。
  5. 选择 Save changes

如何使用您的 GitLab 状态页面

配置您的 GitLab 实例后,相关更新会触发一个后台任务,将 JSON 格式的事件数据推送到您的外部云提供商。您的状态页面网站会定期获取此 JSON 格式的数据。它将其格式化并显示给用户,提供有关正在进行的事件的信息,而无需您的团队额外努力:

%%{init: { "fontFamily": "GitLab Sans" }}%%
graph TB
    accTitle: 了解您的状态页面
    accDescr: GitLab 如何获取、格式化和显示事件数据

    subgraph GitLab 实例
    issues(issue updates) -- 触发 --> middleware(后台任务:JSON 生成)
    end
    subgraph 云提供商
    middleware -- 保存数据 --> c1(云存储桶存储 JSON 文件)
    end
    subgraph 状态页面
    d(CDN 上的静态网站) -- 获取数据 --> c1
    end

发布事件

要发布事件:

  1. 在您启用了 GitLab 状态页面设置的项目中创建一个事件。
  2. 项目或组所有者 必须使用 /publish 快速操作 将事件发布到 GitLab 状态页面。机密事件 无法发布。

后台工作程序使用您在设置期间提供的凭据将事件发布到状态页面。作为发布的一部分,GitLab:

  • 使用 Incident Responder 匿名化用户和组提及。
  • 移除非公开 GitLab 引用 的标题。
  • 发布附加到事件描述中的任何文件,每个事件最多 5000 个。

发布后,您可以通过选择事件标题下方显示的 Published on status page 按钮访问事件的详情页面。

Status Page detail link

更新事件

要发布事件的更新,请更新事件的描述。

当被引用的事件发生更改(如标题或机密性)时,引用它们的事件不会更新。

在事件上发布评论

要在状态页面事件上发布评论:

  • 在事件上创建评论。
  • 当您准备好发布评论时,通过在评论上添加麦克风 emoji 反应 反应 (:microphone: 🎤) 来标记评论以供发布。
  • 评论中附加的任何文件(每个事件最多 5000 个)也会被发布。

任何有权查看事件的人都可以对评论添加 emoji 反应,因此建议仅将问题访问权限限制给团队成员。

更新事件状态

要将事件状态从 open 更改为 closed,请在 GitLab 中关闭事件。关闭事件会触发后台工作程序来更新 GitLab 状态页面网站。

如果您 将已发布的事件设为机密, GitLab 会将其从您的 GitLab 状态页面网站中取消发布。