Slack
このガイドでは、現在私たちが Slack を利用して管理しているものについて取り扱います。
Notify Oncall
技術的詳細
- デプロイメントタイプ:
Ad-hoc - プロジェクト: Notify Oncall
- Zendesk US Government のみで動作
Notify Oncall とは
Notify Oncall は、直接ページングする DRI が設定されていない緊急チケットが作成された際に、対応可能な US Government サポートチームのエージェント全員にアラートを送るために利用している仕組みです。#spt_us-government Slack チャンネル にメッセージを投稿します。
Notify Oncall の仕組み
US Government の緊急チケットが作成されると、Zendesk が Pagerduty にシグナルを送信します。Customer Support - US Federal サービス 上の Pagerduty Webhook 経由で、Notify Oncall プロジェクト上の GitLab CI/CD パイプラインがトリガーされます。
その後、Notify Oncall は Pagerduty から送信されたペイロードに含まれる担当者リストをチェックし、処理を継続するかどうかを判断します。担当者として人間がリストに含まれている場合、ステータスコード 0 で終了します(すでに人間がページングされている緊急事態について通知する必要がないため)。
次に、Notify Oncall は以下の基準を用いて、対応可能なエージェントのリストを判定します。
- Zendesk US Government インスタンス上のサポートチームのエージェントである
- PTO 中ではない(
Support - Time Offカレンダーで判定) - 勤務時間内である(サポートチームの YAML ファイルで判定)
そして、このエージェントのリストを Slack のユーザー ID に変換します(サポートチームの YAML ファイルで対応付け)。この情報をもとに、Notify Oncall は #spt_us-government Slack チャンネル に投稿し、緊急チケットについて通知します。
Notify Oncall の変更
注意
- これには Notify Oncall プロジェクトに対して少なくとも
Developer権限が必要です。 - 対応する依頼 Issue(機能リクエスト、管理上のもの、バグなど)が存在する場合に限り実施するべきです。存在しない場合は、まず作成し、標準のプロセスを経てから対応してください。
Notify Oncall に変更を加えるには、プロジェクトリポジトリでマージリクエストを作成する必要があります。具体的な変更内容は依頼そのものによって異なります。
ピアによるレビューと承認を受けたら、マージリクエストをマージできます(次回のトリガー実行時に変更が適用されます)。
Very Breached Ticket slackbot
技術的詳細
- デプロイメントタイプ:
Ad-hoc - プロジェクト: Very Breached Ticket Slackbot
- Zendesk Global のチケットでのみ動作
VBT slackbot とは
Very Breached Ticket(VBT)Slackbot は、48 時間を超えて SLA を違反している特定のチケットを報告するために利用しているツールです。発見したチケットに関する通知を #spt_leaders-daily Slack チャンネル に投稿します。
VBT slackbot の仕組み
これは Zendesk API の preview views エンドポイントを用いてチケットのリストを生成することで動作します。プレビューに使用される条件は次のとおりです。
- 以下のすべての条件を満たす必要があります
- SLA 違反からの経過時間が 48 営業時間を超えている
- チケットの
Ticket formがBillingではない - チケットの
Ticket formがSupport Opsではない - チケットのステータスが
solved未満(つまりnew、open、on-hold)
- 以下のいずれかの条件を満たす必要があります
- チケットの
Ticket StageがEmergencies - チケットの
Ticket StageがFRT
- チケットの
VBT slackbot は次に #spt_leaders-daily Slack チャンネル に投稿し、発見したチケットについて通知します。各チケットには以下が含まれます。
- チケットへのリンク
- チケットの
Ticket form - 違反したタイムスタンプ
- 何時間前に違反したか
VBT slackbot の実行タイミング
VBT slackbot は、GitLab のスケジュール済みパイプラインを介して、決まった 3 つの時刻に実行されます。
- UTC 14:00、月曜から金曜(
0 14 * * 1-5) - UTC 21:30、日曜から木曜(
30 21 * * 0-4) - UTC 07:00、月曜から金曜(
0 7 * * 1-5)
VBT slackbot の変更
注意
- これには Very Breached Ticket Slackbot プロジェクトに対して少なくとも
Developer権限が必要です。 - 対応する依頼 Issue(機能リクエスト、管理上のもの、バグなど)が存在する場合に限り実施するべきです。存在しない場合は、まず作成し、標準のプロセスを経てから対応してください。
VBT slackbot に変更を加えるには、プロジェクトリポジトリでマージリクエストを作成する必要があります。具体的な変更内容は依頼そのものによって異なります。
ピアによるレビューと承認を受けたら、マージリクエストをマージできます(次回のスケジュール実行時に変更が適用されます)。
よくある問題とトラブルシューティング
このセクションは必要に応じて項目が追加されていくリビングドキュメントです。
bfd74782)