GitLabステータスページ

GitLab Ultimate12.10で導入されました

GitLabステータスページでは、インシデント中にユーザーに効率的に伝えるための静的ウェブサイトを作成し、デプロイすることができます。

設定方法

注:デプロイ先としてサポートされているのはAWS S3のみです。
graph TB subgraph GitLab Instance issues(issue updates) -- trigger --> middleware(Background job: JSON generation) end subgraph Cloud Provider middleware --saves data --> c1(Cloud Bucket stores JSON file) end subgraph Status Page d(Static Site on CDN) -- fetches data --> c1 end

Status Pageの設定はとても簡単ですが、いくつかしなければならないことがあります。

クラウドアカウントの設定

GitLab Status Pageを使うには、まずオペレーション設定ページでクラウドプロバイダーのアカウント情報を設定する必要があります。 現在、AWSのみがサポートされています。

AWSセットアップ

  1. AWS アカウントで、2 つの新しい IAM ポリシーを作成します。
  2. 最初のステップで作成した権限ポリシーで新しいAWSアクセスキーを作成します。

ステータスページ プロジェクト

Status PageをAWS S3にデプロイするには、Status Pageプロジェクトを追加し、必要なCI変数を設定する必要があります。

  1. Status Pageプロジェクトをフォークしてください。Repository Mirroring (リポジトリミラーリング) を使用して、最新の Status Page 機能を取得することもできます。
  2. Settings > CI/CD > Variablesで以下の変数を追加します。 Amazonからこれらの変数を取得するには、Amazon Consoleを使用します):
    • S3_BUCKET_NAME - Amazon S3 バケットの名前 (指定した名前のバケットが存在しない場合、最初のパイプライン実行でバケットが作成され、静的ウェブサイトのホスティング用に設定されます)
    • AWS_DEFAULT_REGION - AWS地域
    • AWS_ACCESS_KEY_ID - AWS アクセスキー ID
    • AWS_SECRET_ACCESS_KEY - AWSのシークレット
  3. パイプラインを実行して、Status PageをS3にデプロイします。

ステータスページへのインシデントの同期

CI/CD変数が設定されたら、イシューに使用するプロジェクトを設定する必要があります:

  1. オペレーション設定ページを表示するには、{設定} 設定 > オペレーション > ステータスページを開きます。
  2. クラウドプロバイダーの認証情報を入力し、[アクティブ]チェックボックスがオンになっていることを確認します。
  3. 変更を保存する]をクリックします。

ステータスページUI

ステータスページのランディングページには、最近のインシデントの概要が表示されます。 インシデントをクリックすると、インシデントの詳細ページに移動します。

Status Page landing page

インシデント詳細ページ

インシデント詳細ページには、特定のインシデントに関する詳細情報が表示されます:

  • インシデントが最後に更新された日時を含む、インシデントのステータス。
  • 絵文字を含むインシデントのタイトル。
  • 絵文字を含む事件の説明。
  • インシデントの説明またはコメントで提供された、有効な画像拡張子を持つ添付ファイル。 GitLab 13.1で導入されました
  • 事件の最新情報を時系列に並べたリスト。

Status Page detail

どのように動作するか

出版事件

インシデントを公開するには、まずステータスページの設定を有効にしたプロジェクトでイシューを作成する必要があります。

デフォルトでは、イシューはステータスページに公開されません。イシューを公開するには、イシューで/publish クイックアクションを使用してください。 イシューを公開できるのは、プロジェクトまたはグループのオーナーだけです。

クイックアクションが使用されると、バックグラウンドワーカーが、セットアップ時に提供した認証情報を使用して、イシューをステータスページに公開します。

すべてのインシデントは公開されているため、ユーザーとグループの言及はIncident Responderで匿名化され、非公開の GitLab 参照のタイトルは削除されます。

GitLabプロジェクトでインシデントが公開されると、インシデントのタイトルの下に表示されるPublished on statuspageボタンをクリックすることで、インシデントの詳細ページにアクセスすることができます。

Status Page detail link

注:イシューを機密扱いにすると、そのイシューは非公開になります。

出版に関する最新情報

インシデントの更新を公開するには、インシデント・イシューの説明を更新します。

注意:参照されたイシューが変更された場合(タイトル、機密保持など)、参照されたインシデントは自動的に更新されません。

コメントの追加

ステータスページのインシデントにコメントを追加するには、インシデントのイシューにコメントを作成します。

コメントを公開する準備ができたら、コメントにマイクアワードの絵文字リアクション(:microphone 🎤)を追加します。 これにより、コメントがステータスページにデプロイされるべきものとしてマークされます。

注意:イシューを閲覧できるアクセス権を持つ人であれば誰でも、コメントに絵文字アワードを追加することができます。

インシデント・ステータスの変更

インシデントのステータスをopen からclosedに変更するには、GitLab 内でインシデントのイシューをクローズしてください。 その後、ステータスページのウェブサイトでまもなく更新されます。

アタッチメントストレージ

GitLab 13.1で導入されました。

GitLab 13.1 以降、インシデント・イシューの説明やコメントに添付されたファイルは、公開フローの一部としてステータスページのストレージに公開・非公開されます。

制限

ステータスページに転送される添付ファイルは、1イシューにつき5000ページのみです。