配置 logrotate 教程

導讀 通常來講,日誌是任何故障排除過程當中很是重要的一部分,但這些日誌會隨着時間增加。在這種狀況下,咱們須要手動執行日誌清理以回收空間,這是一件繁瑣的管理任務。爲了解決這個問題,咱們能夠在 Linux 中配置 logrotate 程序,它能夠自動執行日誌文件的輪換、壓縮、刪除和用郵件發出。咱們能夠配置 logrotate 程序,以便每一個日誌文件能夠在天天、每週、每個月或當它變得太大時處理。

配置 logrotate 教程配置 logrotate 教程

logrotate 是如何工做的html

默認狀況下,logrotate 命令做爲放在 /etc/cron.daily 中的 cron 任務,天天運行一次,它會幫助你設置一個策略,其中超過某個時間或大小的日誌文件被輪換。
命令:linux

/usr/sbin/logrotate

配置文件: /etc/logrotate.conf,這是 logrotate 的主配置文件。logrotate 還在 /etc/logrotate.d/ 中存儲了特定服務的配置。確保下面的那行包含在 /etc/logrotate.conf 中,以讀取特定服務日誌配置。git

include  /etc/logrotate.d`

logrotate 歷史: /var/lib/logrotate.statusgithub

重要的 logrotate 選項:post

compress             --> 壓縮日誌文件的全部非當前版本
daily,weekly,monthly --> 按指定計劃輪換日誌文件
delaycompress        --> 壓縮全部版本,除了當前和下一個最近的
endscript            --> 標記 prerotate 或 postrotate 腳本的結束
errors "emailid"     --> 給指定郵箱發送錯誤通知
missingok            --> 若是日誌文件丟失,不要顯示錯誤
notifempty           --> 若是日誌文件爲空,則不輪換日誌文件
olddir "dir"         --> 指定日誌文件的舊版本放在 「dir」 中
postrotate           --> 引入一個在日誌被輪換後執行的腳本
prerotate            --> 引入一個在日誌被輪換前執行的腳本
rotate 'n'           --> 在輪換方案中包含日誌的 n 個版本
sharedscripts        --> 對於整個日誌組只運行一次腳本
size='logsize'       --> 在日誌大小大於 logsize(例如 100K,4M)時輪換

配置命令行

讓咱們爲咱們本身的示例日誌文件 /tmp/sample_output.log 配置 logrotate。日誌

第一步:在 /etc/logrotate.conf 中添加如下行。htm

/tmp/sample_output.log {
  size 1k
  create 700 root root
  rotate 4
  compress
}

在上面的配置文件中:教程

 
  • size 1k - logrotate 僅在文件大小等於(或大於)此大小時運行。
  • create - 輪換原始文件並建立具備指定權限、用戶和組的新文件。
  • rotate - 限制日誌文件輪轉的數量。所以,這將只保留最近的 4 個輪轉的日誌文件。
  • compress - 這將壓縮文件。

第二步:一般,你須要等待一天才能等到 logrotate 由 /etc/cron.daily 執行。除此以外,你能夠用下面的命令在命令行中運行:ip

/usr/sbin/logrotate  /etc/logrotate.conf

在執行 logrotate 命令以前的輸出:

[root@rhel1 tmp]# ls -l /tmp/
total 28
-rw-------. 1 root root 20000 Jan 1 05:23 sample_output.log

在執行 logrotate 以後的輸出:

[root@rhel1 tmp]# ls -l /tmp
total 12
-rwx------. 1 root root 0 Jan 1 05:24 sample_output.log
-rw-------. 1 root root 599 Jan 1 05:24 sample_output.log-20170101.gz
[root@rhel1 tmp]#

這樣就能確認 logrotate 成功實現了。

via: http://www.linuxroutes.com/configure-logrotate/

做者:Manmohan Mirkar 譯者:geekpi 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出

原文來自:https://linux.cn/article-8227-1.html

本文地址:http://www.linuxprobe.com/configure-logrotate-tutorial.html

相關文章
相關標籤/搜索