正式なドキュメントは英語版であり、この日本語訳はAI支援翻訳により作成された参考用のものです。日本語訳の一部の内容は人間によるレビューがまだ行われていないため、翻訳のタイミングにより英語版との間に差異が生じることがあります。最新かつ正確な情報については、英語版をご参照ください。

ステータスページ

  • プラン: Ultimate
  • 提供形態: GitLab.com、GitLab Self-Managed、GitLab Dedicated

GitLabのステータスページを使用すると、インシデント発生時にユーザーに効率的に伝えるための静的なウェブサイトを作成し、デプロイできます。ステータスページのランディングページには、最近のインシデントの概要が表示されます:

ステータスページのランディングページ

インシデントを選択すると、特定のインシデントに関する詳細情報が記載された詳細ページが表示されます:

ステータスページの詳細

  • 最後にインシデントが更新された時間など、インシデントのステータス。
  • 絵文字を含むインシデントのタイトル。
  • 絵文字を含むインシデントの説明。
  • インシデントの説明、または有効な画像拡張子を持つコメントで提供されるすべての添付ファイル。
  • インシデントの更新の時系列順のリスト。

ステータスページをセットアップする

GitLabのステータスページを設定するには、以下が必要です:

  1. クラウドプロバイダー情報を使用してGitLabを設定します。
  2. AWSアカウントを設定します。
  3. GitLabでステータスページプロジェクトを作成します。
  4. ステータスページにインシデントを同期します。

クラウドプロバイダー情報でGitLabを設定する

デプロイターゲットとしてサポートされているのは、AWS S3のみです。

前提要件:

  • メンテナーロール以上が必要です。

ステータスページにコンテンツをプッシュするために必要なAWSアカウント情報をGitLabに提供するには、次の手順を実行します:

  1. 左側のサイドバーで、検索または移動先を選択して、プロジェクトを見つけます。
  2. 左側のサイドバーで、設定を選択して、プロジェクトを見つけます。モニタリング > モニタリングを選択します。
  3. ステータスページします。
  4. 有効チェックボックスを選択します。
  5. Status Page URLボックスに、外部ステータスページのURLを入力します。
  6. S3バケット名ボックスに、S3バケットの名前を入力します。詳細については、バケット構成のドキュメントを参照してください。
  7. AWSリージョンボックスに、バケットのリージョンを入力します。詳細については、AWSドキュメントを参照してください。
  8. AWSアクセスキーIDAWSシークレットアクセスキーを入力します。
  9. 変更を保存を選択します。

AWSアカウントを設定する

  1. AWSアカウント内で、次のファイルを例として使用して、2つの新しいIAMポリシーを作成します:
  2. 最初の手順で作成した権限ポリシーを使用して、新しいAWSアクセスキーを作成します。

ステータスページプロジェクトを作成する

AWSアカウントを設定したら、ステータスページプロジェクトを追加し、必要なCI/CD変数を設定して、ステータスページをAWS S3にデプロイする必要があります。

  1. ステータスページプロジェクトをフォークする。これはリポジトリのミラーリングを介して行うことができます。これにより、最新のステータスページ機能を入手できます。
  2. 左側のサイドバーで、設定 > CI/CDを選択します。
  3. 変数を展開します。
  4. Amazonコンソールから次の変数を追加します:
    • S3_BUCKET_NAME - Amazon S3バケットの名前。指定された名前のバケットが存在しない場合、最初のパイプラインの実行で静的ウェブサイトホスティング用に作成および構成されます。

    • AWS_DEFAULT_REGION - AWSリージョン。

    • AWS_ACCESS_KEY_ID - AWSのアクセスキーID。

    • AWS_SECRET_ACCESS_KEY - AWSのシークレット。

  5. 左側のサイドバーで、ビルド > パイプラインを選択します。
  6. ステータスページをS3にデプロイするには、パイプラインを新規作成を選択します。

このプロジェクトでイシューにアクセスできるユーザーを制限することを検討してください。インシデントを表示できるすべてのユーザーが、GitLabステータスページにコメントを公開できる可能性があります。

ステータスページにインシデントを同期する

CI/CD変数を作成したら、インシデントに使用するプロジェクトを設定します。

  1. 左側のサイドバーで、検索または移動先を選択して、プロジェクトを見つけます。
  2. 設定 > モニタリングを選択します。
  3. ステータスページします。
  4. クラウドプロバイダーの認証情報を入力し、必ず有効チェックボックスをオンにしてください。
  5. 変更を保存を選択します。

GitLabステータスページの使用方法

GitLabインスタンスを設定すると、関連する更新により、インシデントに関するJSON形式のデータが外部クラウドプロバイダーにプッシュされるバックグラウンドジョブがトリガーされます。ステータスページのウェブサイトは、このJSON形式のデータを定期的にフェッチします。チームからの余分な労力をかけずに、進行中のインシデントに関する情報を提供することで、ユーザーにフォーマットして表示します:

%%{init: { "fontFamily": "GitLab Sans" }}%%
graph TB
    accTitle: Understand your status page
    accDescr: How GitLab fetches, formats, and displays incident data

    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

インシデントを公開する

インシデントを公開するには、次の手順を実行します:

  1. GitLabステータスページの設定を有効にしたプロジェクトでインシデントを作成します。
  2. プロジェクトまたはグループオーナーは、/publish クイックアクションを使用して、インシデントをGitLabステータスページに公開する必要があります。機密インシデントは公開できません。

バックグラウンドワーカーは、セットアップ中に提供した認証情報を使用して、インシデントをステータスページに公開します。公開の一環として、GitLabは次のことを行います:

  • Incident Responderを使用して、ユーザーとグループのメンションを匿名化します。
  • 非公開のGitLab参照のタイトルを削除します。
  • インシデントの説明に添付されているすべてのファイルを、インシデントあたり最大5000個まで公開します。

公開後、インシデントのタイトルの下に表示されるステータスページに公開済みボタンを選択して、インシデントの詳細ページにアクセスできます。

ステータスページの詳細リンク

インシデントを更新する

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

参照されているインシデントが変更された場合(タイトルや機密性など)、参照元のインシデントは更新されません。

インシデントにコメントを公開する

ステータスページのインシデントにコメントを公開するには、次の手順を実行します:

  • インシデントに関するコメントを作成します。
  • コメントを公開する準備ができたら、マイクの絵文字リアクション(:microphone:🎤)をコメントに追加して、コメントを公開用にマークします。
  • コメントに添付されているすべてのファイル(インシデントあたり最大5000個)も公開されます。

インシデントを表示するアクセス権を持つユーザーは誰でも絵文字リアクションをコメントに追加できるため、イシューへのアクセスをチームメンバーのみに制限することを検討してください。

インシデントのステータスを更新する

インシデントのステータスをopenからclosedに変更するには、GitLab内でインシデントをクローズします。インシデントをクローズすると、バックグラウンドワーカーがトリガーされ、GitLabステータスページのウェブサイトが更新されます。

公開済みのインシデントを機密にすると、GitLabはGitLabステータスページのウェブサイトからそれを公開解除します。