Apacheのログファイルを定期的に分割させたい〜rotatelogs編〜

» 2001年05月16日 00時00分 公開
[木田佳克ITmedia]

この記事は会員限定です。会員登録すると全てご覧いただけます。

 httpサーバソフトのApacheを利用していると、「access_log」(アクセス記録ログファイル)が容量肥大化の一途をたどることがある。ただし最近のRed Hatディストリビューションであれば、あらかじめインストール直後からlogrotateと呼ばれるツールが動作しているため、心配する必要はない。問題なのは、logrotateが使えない場合や、RPMなどに頼らず自分でApacheをソース(tarボール)からインストールした場合だ。

 ソースからインストールを行うと、標準では/usr/local/apache/に各種のバイナリや設定ファイルが保存される。さらに/usr/local/apache/bin/ディレクトリ下には「rotatelogs」と呼ばれるバイナリファイルがあり、これを使うことで「access_log」ファイルを分割させることが可能だ。

 設定は簡単だ。次の行を/usr/local/apache/conf/httpd.confの中に記述しよう(ファイル内のいずれの行でも構わない)。

TransferLog "|/usr/local/apache/ \ bin/rotatelogs /var/logs/apache/access_log 86400"
ErrorLog "|/usr/local/apache/ \ bin/rotatelogs /var/logs/apache/error_log 86400"

 上記の例では「86400」(単位は秒)という数字が見られるが、ここでは1日単位に切り替えることを意味する。自分で秒数を設定すれば、自由に分割タイミングをコントロールできるのだ。

Copyright © ITmedia, Inc. All Rights Reserved.

注目のテーマ