1. 程式人生 > >日誌輪轉

日誌輪轉

系統運維;Linux;雲計算;

日誌的輪替、日誌的輪轉
為什麽要輪轉?
1)防止日誌文件過大
2)定期清除日誌

日誌輪轉的配置文件

vim /etc/logrotate.conf

# grep -v ^# /etc/logrotate.conf | grep -v ^$
    weekly                          //輪轉的周期,一周一輪轉
    rotate 4                         //保留幾個舊的日誌文件,類似於備份
    create                            //舊日誌輪轉後是否創建新的空白日誌
    dateext                           //使用日期作為舊日誌的後綴
    include /etc/logrotate.d     //包含該路徑下的所有配置文件
    /var/log/wtmp {               //針對特定的日誌進行定制設置
        monthly                      //輪滾周期,一個月
        create 0664 root utmp   //創建新的日誌文件  權限664 所有者root 所屬組utmp
        minsize 1M                  //輪滾的最小大小是1M
        rotate 1                      
    }
    /var/log/btmp {
        missingok               //丟了也沒關系
        monthly
        create 0600 root utmp
        rotate 1
    }

小實驗:
1、修改配置文件,添加一行自己定義的內容,重啟服務

vim /etc/rsyslog.conf

    authpriv.*            /usr/local/secure
# systemctl rsyslog restart

2、自己編寫輪轉配置文件

vim /etc/logrotate.d/secure

    /usr/local/secure {
        missingok
        notifempty
        daily
        create
        rotate 4    
        compress
    }

3、手動輪轉日誌文件

logrotate -vf /etc/logrotate.d/secure

# cd /usr/local
# ls secure*
    secure  secure.1.gz

相關的參數 功能
compress 通過gzip壓縮轉儲以後的日誌
nocompress 不需要壓縮時,用這個參數
copytruncate 用於還在打開中的日誌文件,把當前日誌備份並截斷
nocopytruncate 備份日誌文件但是不截斷
create mode owner group 轉儲文件,使用指定的文件模式創建新的日誌文件
nocreate 不建立新的日誌文件
delaycompress 和compress 一起使用時,轉儲的日誌文件到下一次轉儲時才壓縮
nodelaycompress 覆蓋delaycompress 選項,轉儲同時壓縮。

errors address 專儲時的錯誤信息發送到指定的Email 地址
ifempty 即使是空文件也轉儲,這個是logrotate 的缺省選項。
notifempty 如果是空文件的話,不轉儲
mail address 把轉儲的日誌文件發送到指定的E-mail 地址
nomail 轉儲時不發送日誌文件
olddir directory 轉儲後的日誌文件放入指定的目錄,必須和當前日誌文件在同一個文件系統
noolddir 轉儲後的日誌文件和當前日誌文件放在同一個目錄下
prerotate/endscript 在轉儲以前需要執行的命令,這兩個關鍵字必須單獨成行
postrotate/endscript 在轉儲以後需要執行的命令,這兩個關鍵字必須單獨成行
daily 指定轉儲周期為每天
weekly 指定轉儲周期為每周
monthly 指定轉儲周期為每月
rotate count 指定日誌文件刪除之前轉儲的次數,0 指沒有備份,5 指保留5 個備份
tabootext [+] list 讓logrotate 不轉儲指定擴展名的文件,缺省的擴展名是:.rpm-orig, .rpmsave, v, 和~
size size 當日誌文件到達指定的大小時才轉儲,Size 可以指定bytes (缺省)以及KB (sizek)或者MB

日誌輪轉