状态页面
- Tier: Ultimate
- Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
使用 GitLab 状态页面,您可以创建并部署一个静态网站,以便在事件期间高效地与用户沟通。状态页面首页会显示最近事件的概览:
选择某个事件会显示一个包含该事件更多信息的详情页面:
- 事件状态,包括事件最后更新的时间。
- 事件标题,包括任何表情符号。
- 事件描述,包括表情符号。
- 事件描述中提供的任何文件附件,或带有有效图片扩展名的评论。
- 对事件更新的按时间顺序排列的列表。
设置状态页面
要配置 GitLab 状态页面,您必须:
- 使用您的云提供商信息 配置 GitLab。
- 配置您的 AWS 账户。
- 在 GitLab 上 创建状态页面项目。
- 将事件同步到状态页面。
使用云提供商信息配置 GitLab
仅支持 AWS S3 作为部署目标。
先决条件:
- 您必须至少拥有 Maintainer 角色。
为了向 GitLab 提供将内容推送到状态页面所需的 AWS 账户信息:
- 在左侧边栏,选择 Search or go to 并找到您的项目。
- 选择 Settings > Monitor。
- 展开 Status page。
- 选中 Active 复选框。
- 在 Status Page URL 框中,提供您外部状态页面的 URL。
- 在 S3 Bucket name 框中,输入您的 S3 存储桶名称。有关更多信息,请参阅 存储桶配置文档。
- 在 AWS region 框中,输入您的存储桶所在区域。有关更多信息,请参阅 AWS 文档。
- 输入您的 AWS access key ID 和 AWS Secret access key。
- 选择 Save changes。
配置您的 AWS 账户
- 在您的 AWS 账户中,使用以下文件作为示例创建两个新的 IAM 策略:
- Create bucket。
- Update bucket contents(记得将
S3_BUCKET_NAME替换为您的存储桶名称)。
- 使用第一步创建的权限策略创建一个新的 AWS 访问密钥。
创建状态页面项目
配置完 AWS 账户后,您必须添加状态页面项目并配置必要的 CI/CD 变量,以便将状态页面部署到 AWS S3:
- Fork Status Page 项目。 您可以通过 Repository Mirroring 来完成, 这确保您能获得最新的状态页面功能。
- 在左侧边栏,选择 Settings > CI/CD。
- 展开 Variables。
- 从您的 Amazon 控制台添加以下变量:
-
S3_BUCKET_NAME- Amazon S3 存储桶的名称。 如果没有提供名称的存储桶存在,第一个流水线运行会创建 一个并将其配置为 静态网站托管。 -
AWS_DEFAULT_REGION- AWS 区域。 -
AWS_ACCESS_KEY_ID- AWS 访问密钥 ID。 -
AWS_SECRET_ACCESS_KEY- AWS 密钥。
-
- 在左侧边栏,选择 Build > Pipelines。
- 要将状态页面部署到 S3,选择 New pipeline。
考虑限制谁能访问此项目中的问题,因为任何可以查看事件的用户都可能 向您的 GitLab 状态页面发布评论。
将事件同步到状态页面
创建 CI/CD 变量后,配置您要用于事件的项目:
- 在左侧边栏,选择 Search or go to 并找到您的项目。
- 选择 Settings > Monitor。
- 展开 Status page。
- 填写您的云提供商凭据,并确保选中 Active 复选框。
- 选择 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
发布事件
要发布事件:
后台工作程序使用您在设置期间提供的凭据将事件发布到状态页面。作为发布的一部分,GitLab:
- 使用
Incident Responder匿名化用户和组提及。 - 移除非公开 GitLab 引用 的标题。
- 发布附加到事件描述中的任何文件,每个事件最多 5000 个。
发布后,您可以通过选择事件标题下方显示的 Published on status page 按钮访问事件的详情页面。
更新事件
要发布事件的更新,请更新事件的描述。
当被引用的事件发生更改(如标题或机密性)时,引用它们的事件不会更新。
在事件上发布评论
要在状态页面事件上发布评论:
- 在事件上创建评论。
- 当您准备好发布评论时,通过在评论上添加麦克风 emoji 反应
反应 (
:microphone:🎤) 来标记评论以供发布。 - 评论中附加的任何文件(每个事件最多 5000 个)也会被发布。
任何有权查看事件的人都可以对评论添加 emoji 反应,因此建议仅将问题访问权限限制给团队成员。
更新事件状态
要将事件状态从 open 更改为 closed,请在 GitLab 中关闭事件。关闭事件会触发后台工作程序来更新 GitLab 状态页面网站。
如果您 将已发布的事件设为机密, GitLab 会将其从您的 GitLab 状态页面网站中取消发布。