Apacheのログ出力に追加しておいたほうがいい(かもしれない)設定
この前誰かに聞かれたので、ついでにブログにしとく。
apacheのLogFormat設定でデフォルトからさらに追加することと言えばRefererとかUser-AgentとかCookieぐらいで済ませることが多いと思うが、運用で悩んだときにヒントになる情報は他にもある。
%X 応答が完了したときの接続ステータス:
X = 応答が完了する前に接続が異常終了
+ = 応答が送られた後に接続を持続することが可能
- = 応答が送られた後に接続が切られる
というもの。javaであれperlであれphpであれ、アプリケーション側ではなんも起きてなさそうなのにユーザーから苦情が来たので何かと思ったらフロントエンドのApacheと途中のネットワークスイッチの間の問題だとか、apacheのKeepAlive設定がらみの問題でした、みたいな場合にこのステータス情報が調査をラクにしてくれることがある。
%D リクエストを処理するのにかかった時間、マイクロ秒単位
「あるページだけが異様に重い気がするんだけど?」といった場合に体感スピードではなくその正確な値を得ることができる。純粋にWebアプリ的な処理時間であってネットワーク的な遅延時間などはこれじゃ取れないけど。なお、「%T リクエストを扱うのにかかった時間、秒単位」というのもあるんだが、「処理するのにかかった時間」と「扱うのにかかった時間」がどう違うのかわからん(笑)。いずれにせよ秒単位よりはマイクロ秒単位のほうがいいだろう。
あとは、apacheのログに好きな情報を出す方法(PHP編)(2006/7)で書いたような情報とか。
まあつまり、たまにはapacheのマニュアル眺めてみるのも悪くないんじゃないかということで。see also:
- apacheのログに出る時刻はバージョン1.3.xと2.xとで違う (2006/7)
- PHPにAPC入れて処理が速くなった様子を数字で把握する (2009/1)

コメントする
(初めてのコメントの時は、コメントが表示されるためにこのブログのオーナーの承認が必要になることがあります。承認されるまでコメントは表示されませんのでしばらくお待ちください)