Apacheのログに処理時間を追加する

投稿者: | 2017年5月25日

以前、ApacheのログにプロセスIDを追加する記事を書きましたが、今回は処理時間の追加方法です。
プロセスIDと同じく、処理時間を残しておくのも障害の原因解明に役立ちますね。

処理時間をログに記録するには、apacheのコンフィグファイルを開け、使用しているLogFormatに処理時間を示す「%T」を追加することになります。

LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %P %T" combined

その後apacheを再起動して、アクセスすると、次のようなログが出力されます。

xxx.xxx.xxx.xxx - - [25/May/2017:12:27:40 +0900] "GET /test.php HTTP/1.1" 200 - "-" "Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36" 20607 5

 最後の「5」が処理時間で、5秒かかったことになります。
さらに細かい時間を知りたい時は「%T」ではなく「%D」を使うとマイクロ秒まで調べられます。

この他にもApacheのログはいろいろな情報を出力できますが、詳しくは本家のドキュメントをご覧ください。