httpdの設定後はログローテーション設定を行なっておきましょう。
ローテーションをしないとログが1ファイルになり容量だ肥大化して検証時に余計な手間がかかります。
Contents
ログローティション対象のhttpdログファイル
ローテーションする対象は以下とします。
/var/log/httpd/access_log
/var/log/httpd/error_log
作業について
以下の作業はroot権限で作業しています。root権限以外で作業する場合はsudoを付けるなど読み替えてください。
設定ファイルの変更
下記のログローテーション設定ファイルを開きます。
# vi /etc/logrotate.d/httpd
以下の3つのパラメータを追記します。
- daily・・・ログを日毎に分割。月毎に分ける場合は「monthly」を指定。
- rotate・・・ログを残しておく世代を指定。指定数を超えたログは削除。
設定例では7世代保存にしています。 - compress・・・ローテーションしたログをgzipで圧縮。
/var/log/httpd/*log { daily missingok rotate 7 notifempty sharedscripts compress delaycompress postrotate /sbin/service httpd reload > /dev/null 2>/dev/null || true endscript }
動作確認
翌日以降に日単位でログファイルが作成されているか確認します。
logrotateコマンドで動作確認をします。オプションを付けずに実行するとログローテーションが実行されてしまうので必ずオプション付き(特にd)で実行します。
# logrotate -dv /etc/logrotate.d/httpd
2つのオプションは以下のようになります。
- -d・・・実際にはログとーテーションせずにデバグモードで実行。
- -v・・・詳細情報を表示
設定反映の確認
翌日以降に日単位でログファイルが作成されているか確認します。
-rw-r--r-- 1 root root 0 12月 28 03:38 access_log -rw-r--r-- 1 root root 5004 12月 27 18:47 access_log-20191228 -rw-r--r-- 1 root root 440 12月 29 03:32 error_log -rw-r--r-- 1 root root 491 12月 28 03:38 error_log-20191228.gz -rw-r--r-- 1 root root 756 12月 29 03:32 error_log-20191229 -rw-r--r-- 1 root root 0 12月 28 03:38 ssl_access_log -rw-r--r-- 1 root root 7030 12月 27 19:01 ssl_access_log-20191228 -rw-r--r-- 1 root root 0 12月 27 18:35 ssl_error_log -rw-r--r-- 1 root root 0 12月 27 18:35 ssl_request_log
以上で設定は完了です。
(Visited 3,233 times, 1 visits today)