過去ログを解析する作業は、宝探しに似ていることが多い。ログに残る情報は手がかりであって、そこから原因を組み立てるのは推理ゲームのような感覚になる。
僕はまずタイムスタンプとユーザーセッションの対応付けから始める。特定のユーザー操作やサーバーイベントとログ行を突き合わせれば、再現性の高い手順が浮かび上がることがある。スタックトレースやエラーメッセージがあれば一発で原因に近づけるが、多くの場合は足りないピースを代替データ(メトリクス、リクエストヘッダ、デプロイ履歴)で埋める必要がある。
注意点として、ログがローテーションで欠けていたり、サンプリングで抜かれていたり、個人情報のマスキングで重要なコンテキストが失われていることがある。特に大規模MMOの運用経験から言うと、'World of Warcraft'のように分散システムで発生するバグは、ログだけでは断定しづらく、ログの粒度と相互参照が鍵になると感じている。最終的にログは強力だが、単独で万能ではない――補助データと照合するワークフローを整えることが肝心だ。