logrotate による access_log の分割
背景: access_log が肥大化していた.
目的: access_log の分割
方法: logrotate を利用
$ vi /etc/logrotate.d/httpd /usr/local/apache2/logs/access_log /usr/local/apache2/logs/error_log { daily rotate 90 missingok sharedscripts postrotate</span> /bin/kill -HUP `cat /usr/local/apache2/logs/httpd.pid 2>/dev/null` 2> /dev/null || true endscript }
結果:
- 日毎(daily)にlogファイルを作成.
- 90日分(rotate 90)保存.
- postrotate 〜 true によってapache2再起動.
考察:
- /etc/logrotate.d/にファイルを追加するだけで自動的にrotationされるようになる.
- 分割するタイミングは,[daily, weekly, month]から選ぶことができる.
- 保存するファイル数は[rotate]によって指定可能.
- ただし,apache2の再起動が必要.[[]]