流転工房

シンギュラリティをこの目に

現場で使えるデバッグ&トラブルシュート(小堀一雄他)読了、、障害対応の段取を明文化。


本書では、デバッグ作業のターゲットはバグであり、トラブルシュートのターゲットは故障となる。故にまずトラブルシュートを行い、故障の原因特定がソースコードにあるとなればデバッグを行う。


そのためのツールやノウハウが体系的にまとめられている良技術書。Java編とあるけど、トラブル全体を把握するところにも重点が置かれているので、どの担当であっても学ぶところは多い。


自分が得たところは以下の部分で、トラブルシュートのゴールの明確化ということ。

トラブルシュートの方向性や作業内容を決めるため、利用者に故障内容を説明し、ゴールを明確化します。

このとき重要なのは、利用者がどのような対処を望んでいるかを具体的なレベルで確認することです。

なぜなら故障の内容によっては、利用者は根本対処よりも歯止め対処や運用対処を望む場合があるからです。


障害発生時の初動や関係者の参集まではよくても、その後が船頭多くして、だったり、現状把握・問題追跡がおざなりで不確定な言ったもん勝ちの情報に振り回されるのはよくあること。


対応初期が混乱するとゴールも見えなくなるので、本書の勧める「共有すべき情報」と「合意を取るべき事項」はしっかりと押さえたい。


共有すべき情報:
 ・発生した故障内容(故障の内容、発生日時、発生頻度、影響範囲)

 ・現時点での解析状況と体制

合意を取るべき事項:
 ・作業スコープの明確化
 ・修正方針
 ・今後のアクション(特にスケジュール)


その他、環境作成方法や監視メトリック、バージョン管理等々、実践データも多く盛り込まれている。設計者、プログラマ、テスター、運用管理者必携!とあるけど、インフラエンジニアも携帯しておきたい。