logrotateのスケジュールは何ですか?


18

大きなログファイルを作成するプログラムに取り組んでいます。

logrotateで処理したいです。

これは私が置く構成です/etc/logrotate.d/

/var/log/myproject.log  {
 hourly
 maxsize 1
 rotate 6
 missingok
 notifempty
 compress
 nocreate
 copytruncate
 su www-data www-data 
}

/var/log/myproject.log所有者がいますwww-data

コマンド

sudo logrotate -vf /etc/logrotate.conf

そして

sudo logrotate -vf /etc/logrotate.d/myproject

ログを正しくローテーションします。

ただし、呼び出し後/etc/cron.hourlyは空です。つまり、logrotateは1時間ごとに呼び出されません。

  1. logrotateスクリプトを使用することが保証されています/etc/cron.dailyか?

  2. スクリプトは、ログファイルの更新頻度をチェックします。つまり、私が持っている場合logrotateでスクリプト/etc/cron.dailyといくつかのログファイルのX中に/etc/logrotate.d/Iセットweeklyの設定を、うX毎日または毎週回転させることが?

  3. にコピーアンドペースト/etc/cron.daily/logrotateすることはできます/etc/cron.hourly/か?カットアンドペーストできますか?

  4. 0anacronファイルを追加する必要があります/etc/cron.hourly/か?

  5. 1時間ごとのログ記録を有効にするために、他に何かする必要がありますか?


2
出力を見て:質問1のためのヒントgrep -r logrotate /etc/cron*
guntbert

@guntbert前に言ったことがありますが、もう一度言います。あなたは聖人であり、ヒーローです。
ダースエグレギアス

回答:


10
  1. 番号。

  2. からman logrotate

    Each  configuration  file  can  set  global  options (local definitions
    override global ones, and later definitions override earlier ones)
    

    あ、はい。

  3. 繰り返しますが、マンページから:

    hourly Log files are rotated every hour. Note that usually logrotate is
           configured  to  be  run  by  cron daily. You have to change this
           configuration and run logrotate hourly  to  be  able  to  really
           rotate logs hourly.
    

    そのため、はい、スクリプトを移動する必要があります。cron.daily私のシステムでスクリプトを調べて、それを動かしてもうまくいくと思います。

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.