21
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

失敗から学んだ、焦らない障害対応

Last updated at Posted at 2025-12-11

はじめに

この記事は『LITALICO Engineers Advent Calendar 2025』のシリーズ3の11日目の記事です。

株式会社LITALICOでエンジニアをやっている@marie-yです。
リリース直後にアラートが鳴った瞬間、冷や汗が吹き出す感覚。エンジニアなら誰しも経験があるのではないでしょうか。私はあります。

「最近自分がリリースした機能でのバグかもしれない😨」
「早く直さないと😨」

今年に入ってから、自分が主体となって障害対応を行う機会が増えました。最初はとにかく焦って上記のようなことを考えてしまい、うまく対応することができていませんでした。しかし、何度か冷や汗をかく経験を経て、「バグを早く直すこと」よりも、「関係者やユーザーの困りを最小限にすること」や「その場で適切な判断をすること」が重要だと痛感しました。

この記事では、障害対応に苦手意識を持っていた私が、チームでの「振り返り」を通じて少しずつ見えてきた、「焦らずに対応するためのフロー」「失敗から学んだ工夫」 を共有します。

この記事の対象読者

  • 障害対応のアラートが鳴ると、冷や汗が止まらない方
  • 対応中に「次に何をすべきか」迷ってしまいがちな方
  • チームとしての障害対応フローを改善したいと考えている方

前提:障害に対する向き合い方

まず、チームで認識を合わせている大前提があります。もちろん障害は起きないに越したことはありません。しかし、システムである以上、一定の確率で発生することは避けられません。

起きてしまった事実は変えられません。ですが、そこからのリカバリーの品質はいかようにも高められます。

「気合で乗り切る」のではなく、過去の失敗を「振り返り」で洗い出し、それを 「テンプレート(型)」「仕組み」 に落とし込んでおく。そうやって「準備」をしておくことが、最大の精神安定剤になると学びました。

障害対応フロー(改善版)

まずは、振り返りを経て改善しつつある、理想的な動き方を図にしてみました。

ここからは、実際に失敗して、振り返りで修正してきた各段階のリアルな 「Before / After」 を紹介します。

🚀 検知・初動

アラートが鳴ったり、連絡が入ったりした直後の、一番焦る時間帯です。

❌ Before:関係者のメンション先が明確でない

障害の一次報告の際に、関係者をメンション先に含めて連絡ができていませんでした。CS(カスタマーサクセス)や営業担当への連絡が必要なことは分かっているのですが、焦っていると頭から抜けたり、「この場合、誰に連絡すればいいんだっけ?」と迷ったりして、結局連絡が遅れてしまうことがありました。

⭕️ After:連絡先の「仕組み化」

「誰に連絡するか」をその場で考えるのをやめました。Slackに障害報告用のグループメンションを作成し、あらかじめCSや営業の関係者を入れておく運用に変更しました。これにより、いざという時はそのグループへメンションするだけで済みます。


👥 体制・役割分担

人が集まってくれた後の動き方です。

❌ Before:役割が曖昧なまま障害対応が始まる

以前から障害対応テンプレートには、以下のような役割記入欄があったのですが、障害対応中には活用されておらず、障害対応後にまとめる際に記載していました。集まったメンバーで役割が曖昧なまま対応が始まり、全員が同じ問題に対して調査してしまうなど、役割分担が曖昧で効率が悪い状態でした。

  • 指揮(全体把握・コマンダー)
  • 連絡
  • 記録
  • メイン調査

⭕️ After:役割分担を「意識的に」行う

振り返りの場で「役割分担が曖昧だった」「誰が指揮をとるかを明確にした方が良い」という議論がありました。そこで、形骸化していたテンプレートの役割記入欄を再認識し、対応開始時に意識的に役割を決めることをチームで再認識しました。

特に重要なのが「指揮(コマンダー)」という役割の定義です。
技術的に詳しい人が調査に没頭するために、あえて別のメンバーが「全体把握に専念する(作業をしない)」役割を担います。「今何がわかっていて、何がわかっていないか」を整理し、タスクを割り振る役です。また、「記録」担当が状況を逐一「対応メモ」に残すことで、情報が属人化するのを防ぎます。

現在進行形で改善中
正直なところ、自分はまだ役割分担がうまくできるわけではありません。「誰がやるか」で迷ったり、「何をすべきか」についてうまく指示が出せなかったりすることもあるので、改善中です。


🛠 復旧作業・判断

原因調査から復旧に向かう段階です。

❌ Before:原因特定に時間をかけてしまう

エンジニアとしては、どうしても「なぜバグったのか?」という根本原因が気になります。「原因がわからないと報告できない」と思い込み、原因調査に時間をかけすぎてしまうことがありました。

⭕️ After:「事象把握」や「影響範囲の特定」、「暫定対応」を優先する

「原因特定」をする前にまずは「事象把握」や「影響範囲の特定」を優先して実施しました。特に「影響範囲の特定」は抜け漏れていたのですが、誰に影響があるのか、どのくらいの数のユーザーに影響しているのかによって、事業への影響度が変わるため、先に特定することが重要です。

根本原因がわからなくても、「機能を一時的にOFFにする」「リリースをRevertする」といった「暫定対応」を実施する判断をして、まずはユーザーへの被害を止めることを優先することもできます。「暫定対応」がそもそもできない場合は「原因特定」をして「恒久対応」を実施します。

📝 Tips:障害票テンプレート

最後に、チームで使っている障害対応テンプレートの工夫を紹介します。
最大の特徴は、「対応メモ」というフリースペースが最上部にあることですが、まずはテンプレート全体の構成を紹介します。

テンプレートの構成要素

エンジニアチームでは、Googleドキュメントで以下の項目を設けて障害票テンプレートを作成しています。GitHubのissueではなく、Googleドキュメントで作っている理由は、CSや営業の方でも閲覧できるようにするためです。

  • タイトル: yyyymmdd_【インシデントレベル】_タイトル の形式で記載。
  • 対応メモ: 障害対応で行ったこと、検討したことを逐次「全て」記入するフリースペース。今誰が何を調べているか、外部から見て状況がわかるように意識する(後述)。
  • インシデントレベルの判断根拠: レベル判断の理由、根拠、およびSlackでの報告URLを記載。
  • 1. 不具合概要: 発生期間、対象ページ、内容を、対応の場にいなかった人でもわかるように記入。
  • 2. 不具合発生原因: Biz職の人でもわかる説明と、必要に応じてエンジニア向けの詳細説明を記入。
  • 3. 影響範囲: 発生期間、影響を受けたユーザー数などを記入。
  • 4. 対応(暫定/恒久/再発防止):
    • 4.1 暫定対応: Biz職の人でもわかるように記入。
    • 4.2 恒久対応: 現時点での見立てや、担当者・対応タイミングを記載。
    • 4.3 再発防止策: 発生プロセスを振り返り、再発防止のために行うべきことを記入。
  • 5. 不具合発生/発覚/対応経緯: 時系列で記入し、関連する議事録やSlackのリンクも貼る。

なぜ「対応メモ」があるのか?

発生原因や影響範囲をきれいにまとめるのは、事態が収束した後で十分です。
対応中は、とにかくスピードが重要です。チームでは、「対応メモ」に、以下のように時系列で情報をどんどん書いています。

14:00 〇〇さんからSlackで報告あり。ハドルに集合
14:05 ログ確認。XXのエラーが出ていることを確認。

  • https://xxxx のページで以下のようなXXのエラーが発生している
    (スクショ)

14:15 Slack で報告(報告URL: XXXX)
14:15 △△さんにヘルプ要請
...

メリット1:初動のスピードが落ちない

形式を気にする必要がないので、思考を止めずに情報を書き出せます。途中から合流したメンバーも、このメモを上から追えば「何が試されて、何がダメだったか」が一目でわかります。

メリット2:振り返りの資産になる

時系列のログが残っていることで、後日の振り返りで「この時の判断、もう少し早くできたかもね」「ここでこの情報が出ていたなら、次はこう動こう」という、非常に精度の高いフィードバックが可能になります。記憶に頼った振り返りでは得られない学びが、ここにはあります。

おわりに

障害対応に、万能な「正解」はありません。状況によって最適解は変わります。

だからこそ、振り返って対応の質を改善していくことが大事だと思います。

「焦った」「うまく対応できなかった」で終わらせず、チームで話し合って「テンプレート(型)」をアップデートしたり、仕組み化をする。このサイクルを回すことで、過度な不安がなくなり、よりユーザーに向き合った最適な対応ができるようになっていくと思います。

この記事が、アラートが鳴った時のあなたの「焦り」を、少しでも和らげるヒントになれば嬉しいです :raised_hands:

明日は、@komakitaさんの記事です。ぜひ明日の記事も読んでみてください!

21
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
21
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?