facebook twitter hatena line email

「Linux/定期ログ圧縮」の版間の差分

提供: 初心者エンジニアの簡易メモ
移動: 案内検索
(ページの作成:「==設定ファイルのディレクトリ== ls /etc/logrotate.d/ ==ローテート作成== vi /etc/logrotate.d/sample /var/www/sample/logs/access_log /var/www/sample/l...」)
 
 
行43: 行43:
 
       sh /var/www/sample/bin/test.sh
 
       sh /var/www/sample/bin/test.sh
 
     endscript
 
     endscript
 +
}
 +
 +
==例:apacheのlogrotate設定はこんな感じ==
 +
$ vi /etc/logrotate.d/httpd
 +
/var/log/httpd/*log {
 +
    daily
 +
    rotate 30
 +
    missingok
 +
    notifempty
 +
    sharedscripts
 +
    delaycompress
 +
    postrotate
 +
        /sbin/service httpd reload > /dev/null 2>/dev/null || true
 +
    endscript
 
  }
 
  }

2015年5月27日 (水) 05:02時点における最新版

設定ファイルのディレクトリ

ls /etc/logrotate.d/

ローテート作成

vi /etc/logrotate.d/sample

/var/www/sample/logs/access_log /var/www/sample/logs/error_log {
    daily
    rotate 4
    missingok
}
  • この例だと、日ごとにバックアップし、4世代保持する
  • missingokはログがないときでもエラーとしない

ローテートされてるか確認

/usr/sbin/logrotate -d /etc/logrotate.d/sample

前回ローテート履歴

vi /var/lib/logrotate.status

正規表現でパス記述

/var/www/sample/logs/*_log {

ログバックアップ後に圧縮コマンドをうつ

vi /etc/logrotate.d/sample
/var/www/sample/logs/access_log /var/www/sample/logs/error_log {
    daily
    rotate 4
    missingok
    sharedscripts
    postrotate
       ls *.log-* | grep -v gz | xargs gzip
    endscript
}

ログバックアップ後にコマンドをうつ

vi /etc/logrotate.d/sample
/var/www/sample/logs/access_log /var/www/sample/logs/error_log {
    daily
    rotate 4
    missingok
    sharedscripts
    postrotate
      sh /var/www/sample/bin/test.sh
    endscript
}

例:apacheのlogrotate設定はこんな感じ

$ vi /etc/logrotate.d/httpd
/var/log/httpd/*log {
   daily
   rotate 30
   missingok
   notifempty
   sharedscripts
   delaycompress
   postrotate
       /sbin/service httpd reload > /dev/null 2>/dev/null || true
   endscript
}