1 か月あたり約 95 万ページビューを提供する Django サイト (Webfaction でホストされている) でクラッシュが発生しており、デバッグ方法がわかりません。予測不可能な間隔で (平均すると 1 日に 1 回ですが、毎日同じ時間ではありません)、サイトへのすべてのリクエストがハング/タイムアウトし始め、Apache を再起動するまでサイトに完全にアクセスできなくなります。これらのリクエストは、フロントエンド アクセス ログには 499 として表示されますが、アプリケーションのログにはまったく表示されません。
サーバーのログ (django-timelog によって生成されたものを含む) を調べてみると、サイトがダウンする直前にページがヒットするパターンが見つからないようです。最近のクラッシュでは、サイトがダウンする直前にヒットしたすべてのページが、テンプレートを使用した標準的なレンダリングから応答までの操作のように見えました。タイムログによると、クラッシュ直前のリクエストはそれほど長くはかからないようで、負荷テストで意図的にクラッシュを再現することはできませんでした。
Webfaction は、許可されたメモリ使用量をオーバーランした場合ではなく、さもないと通知されると言っています。注意すべきことの 1 つは、サイトを復旧したときにデータベースが再起動されないことです (アプリ/Apache のみ)。
この種の繰り返し発生する問題をどのように調査しますか? ぶら下がっているコード行がどこかにあるようです - それを見つけるためのプロセスについて何か提案はありますか?