« webサーバ設定のカスタマイズ | メイン | 仮想サーバ用の logwatch 設定 »

UNIX

仮想サーバのログローテート

前回の仮想サーバ構成を前提としたログローテート設定の修正。
logrotate 3.7.4
[root@www ~]# cp /etc/logrotate.d/httpd etc_logrotate.d_httpd
[root@www ~]# vi /etc/logrotate.d/httpd
[root@www ~]# cat /etc/logrotate.d/httpd
/var/log/httpd/*log /home/*/web/*/logs/*log {
        daily
        rotate 99
        create 0660 apache apache
        missingok
        notifempty
        compress
        delaycompress
        sharedscripts
        postrotate
                /sbin/service httpd reload > /dev/null 2>/dev/null || true
        endscript
}
●「/home/*/web/*/logs/*log」の * (ワイルドカード)指定の規則にマッチする深さのパス毎に串刺しにローテート。
●「daily」日毎にローテート。
●「rotate 99」99世代まで保持。
●「create 0660 apache apache」権限指定。
●「missingok」ログ不在エラーでも続行。
●「notifempty」ログが空ならスキップ。
●「compress」ログを圧縮する。
●「delaycompress」2世代目(*log.2)のログを圧縮する。→1世代目(*log.1)をログ解析する為。
●「sharedscripts」ログ対象が複数の場合、指定スクリプトは1回。
●「postrotate」ローテート後にスクリプト実行。→全仮想サーバのローテート後1度 apache を再起動。
●-d文法チェック -v 詳細表示 -f 強制実行
[root@www ~]# logrotate -vd /etc/logrotate.d/httpd

トラックバック

このエントリーのトラックバックURL:
https://www.remix.asia/cgi/mt/mt-tb.cgi/6854

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)