« | Home | »

2012.02.19

Apacheのログファイルの分割保存

Apacheのログファイルで特にアクセスログは、そのままではどんどん肥大化する。
それで、/etc/newsyslog.confに分割保存の設定をした。
newsyslog.confの最後に下の赤字の2行を追加。

# logfilename          [owner:group]    mode count size when  flags [/pid_file] [sig_num]
/var/log/all.log                            600  7     *    @T00  J
/var/log/amd.log                         644  7     100  *     J
/var/log/auth.log                         600  7     100  *     JC

/log/httpd-access.log                   644  12    *    $M1D0  J  /var/run/httpd.pid 30
/var/log/httpd-error.log                644  12    *    $M1D0  J  /var/run/httpd.pid 30

ログファイルの各設定の意味は、center>

logfilename /var/log/httpd-access.log ログァイルの場所。
[owner:group] 普通はブランクで、rootになっている。
mode 600, 644 ログァイルのパーミッション。
count 7 ログァイルの世代数
size 100, * ログファイルをローテイトする容量でKB単位。
なお*は容量を特に指定せず、時刻で切り替えるときに用いる。
when @T100, @01T05, $M1D0等 @T00 は、毎日午前 0:00 にローテーションさせると
いう意味で、@01T05 は、毎日午前 1:05 に$W6D0 は、
毎週土曜日の午前 0:00 に$M1D0 は、毎月1日の
午前 0:00にローテーションさせるという意味になる。
flags J, JC, Z等 Jはbzip2で圧縮することを意味し、ファイルがないときに新たに生成するときはCを付ける(JCと表記)。また、
Bはバイナリーで、Zはgzipで圧縮する。
[/pid_file] /var/run/httpd.pid ログの切り出しを行った際にSIGNALを飛ばす先の
プロセスのpidファイルを指定。
[sig_num] 30 送信するSIGNAL で30はSIGUSR1。
ApcheはSignalを送らないと掴んだファイルを離さない。

コメント

コメントはありません

コメントフィードを購読する

コメント投稿





コメント本文に次の(X)HTMLタグを使えます:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)