Tips記事
» 2001年05月16日 00時00分 UPDATE

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

[木田佳克,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.

注目のテーマ