私の職場はJIRAから別のバグトラに乗り換えてたので気づかなかったが、割と大きなニュースになっていた大規模障害。Registerは、こんなニュアンスで伝えている。
タイトルにもある通り大規模障害は1週間たっても解決していない。3月31日はWorld Backup Dayだが、そのときのbunting(祝い事などで飾られる三角形の旗)を外し忘れてるんじゃないかと皮肉を言われている。
障害が発生した4/5から6日も経過した時点でanother two weeks(あと2週間必要だ)と言っている。余談だが、Registerはその後の経過については書いていない。復旧の話は記事にはなりにくいのだろうか。
というわけで当事者のブログを読んでみる。
エグゼクティブサマリーでは発生した4月5日と最初に復元した4月8日、最後に復元した4月18日の3つの日付を示している。
原因については、ずばりコミュニケーション・ギャップであると断言している。では、どこにギャップがあったかというと、サービスを統合した際にレガシーとなったアプリを消す作業が必要となったが、このときにアプリケーションのIDではなくクライドサイト全体のIDを伝えてしまったらしい。
さらにまずいことに、削除に使われるAPIはアプリのIDを渡した場合でも、サイトのIDを渡した場合でも動作するようになっているのでアラートは出なかったという。
復旧までは24時間で、3時間ごとにミーティングを行ったという。ここに書くかどうかわからないが、こういうことでも伝えたほうがよいぐらい顧客との関係に影響したということなのだろう。
これに対する今後の改善点として4項目を挙げている。soft delete(論理削除)について触れている点が興味深い。詳細で、すべてのデータストアにsoft deleteを実装することと、soft deleteに対してstandardized and verified review process(標準化され検証されたレビュープロセス)を設けるとも書いている。確かに、一口に論理削除といってもフラグの立て方ひとつとっても複数のやり方が混在していそうだ。フラグではなく有効期間で制御している場合もある。
Atlassianは開発者向けのツールでビジネスをしてので、大半のユーザである開発者へ伝わる説明であることを意識したのだろう。時系列、影響範囲、原因と対策のそれぞれの書き方が参考になる日が来るかもしれない。