Ubuntu

logrotate 每 2 小時

  • August 4, 2015

我正在嘗試每 2 小時製作一次 httpry 日誌。我將此添加到我的logrotate.conf文件中:

/var/log/httpry/*.log {
   rotate 1
   weekly
   create 640 root admin
   missingok
   notifempty
}

我嘗試將每週更改為每小時(仍然需要每 2 小時一次),但它不起作用。我閱讀將腳本從 cron.daily 複製到 cron.hourly 但我所有的 cron 文件都是空的。

如何每 2 小時創建一個新的日誌文件?

我以前在一個單獨的部落格上看到過這個技巧:

為 logrotate 創建一個配置文件,讓我們呼叫它httpry.conf

/var/log/httpry/*.log {
   size 2
   rotate 84
   compress
   missingok
   copytruncate
}

然後從 cron(根據日誌文件的權限和所有權可能需要在 root 的 crontab 中),一個 crontab:

0 */2 * * * logrotate -f /path/to/httpry.conf

編輯:為 OP 描述 crontab 編輯

可以通過發出 為您的使用者帳戶創建一個 crontab crontab -e。如果您想以 root:crontab -e user或在某些系統上編輯特定使用者的 crontab crontab -e -u user。然後,您將被放入一個編輯器中,該編輯器允許您編輯 crontab,並且將文件寫出將檢查 crontab 是否有錯誤(如果不正確則給出錯誤)或如果正確​​則安裝 crontab。

正如他在部落格中描述的rotate 84那樣,選項是保留一周的日誌。(24/2 小時間隔 = 每天 12 個日誌,12 * 7 = 84 .. 或 1 週的日誌)。

引用自:https://unix.stackexchange.com/questions/220200