-d, –debug :debug模式,測(cè)試配置文件是否有錯(cuò)誤。
-f, –force :強(qiáng)制轉(zhuǎn)儲(chǔ)文件。
-m, –mail=command :壓縮日志后,發(fā)送日志到指定郵箱。
-s, –state=statefile :使用指定的狀態(tài)文件。
-v, –verbose :顯示轉(zhuǎn)儲(chǔ)過程。
例如:想強(qiáng)行切割日志文件,不等logrotate切割。
[root@test01 ~]# /usr/sbin/logrotate -vf /etc/logrotate.d/tomcat #我是用來測(cè)試用的嘿嘿 注意:CentOS7 命令是在/usr/sbin/里。
五.常用配置參數(shù)說明
Logrotate功能的實(shí)現(xiàn),最重要的就是它的配置參數(shù)
下面介紹下它常用的配置參數(shù):
compress
啟用壓縮,指的是輪替后的舊日志,這里默認(rèn)用的是gzip壓縮的
daily
每天輪替
dateext
使用當(dāng)期日期作為命名格式
dateformat .%s
配合dateext使用,緊跟在下一行出現(xiàn),定義文件切割后的文件名,必須配合dateext使用,只支持 %Y %m %d %s 這四個(gè)參數(shù)
ifempty
即使日志文件是空的也輪替
將輪替后的文件發(fā)送到指定E-mail地址
copytruncate
用于還在打開中的日志文件,把當(dāng)前日志備份并截?cái)?,是先拷貝再清空的方式,拷貝和清空之間有一個(gè)時(shí)間差,可能會(huì)丟失部分日志數(shù)據(jù)。
monthly
一個(gè)月輪替一次
nocompress
如果在logrotate.conf中啟用了壓縮,這里是做不用壓縮的參數(shù)
nomail
不發(fā)送郵件到任何地址
notifempty
如果日志是空的就不輪替(也就是空日志不切割)
olddir 目錄
輪替后日志文件放入指定的目錄,必須和當(dāng)前日志文件在同一個(gè)文件系統(tǒng)
rotate 次數(shù)
輪替最多保留之前的數(shù)據(jù)幾次,超出的將被刪除或郵件接收,設(shè)為0則不保存
size size
當(dāng)日志增長到指定大小的時(shí)候開始輪替
weekly
如果當(dāng)前的星期幾比上次輪替的星期幾少,或者過了一個(gè)多星期,就會(huì)發(fā)生輪替通常是在每周的第一天輪替,如果logrotate不是每天運(yùn)行的,會(huì)在第一次有機(jī)會(huì)時(shí)進(jìn)行輪替
yearly
如果當(dāng)前年份不同于上次輪替的年份,則進(jìn)行日志輪替
Missingok
如果日志丟失,不報(bào)錯(cuò)繼續(xù)滾動(dòng)下一個(gè)日志
六.安裝配置Logrotate
#yum安裝下
[root@test01 ~]# yum -y install logrotate
#機(jī)器已經(jīng)裝好tomcat,下面配置切割tomcat日志的配置文件
[root@test01 ~]# vim /etc/logrotate.d/tomcat
注意:logrotate的配置文件是/etc/logrotate.conf,通常不需要對(duì)它進(jìn)行修改。
日志文件的切割輪循設(shè)置在獨(dú)立的配置文件中,它們是放在/etc/logrotate.d/目錄下的。
[root@test01 ~]# mkdir -p /var/log/tomcat/oldlog
[root@test01 ~]# cat /etc/logrotate.d/tomcat
/usr/local/tomcat8/logs/catalina.out { #要切割的日志路徑,如果是多個(gè)就用空格分隔
notifempty #如果日志是空的就不輪替(也就是空日志不切割)
rotate 5000 #輪替最多保留之前的數(shù)據(jù)5000次
missingok #如果日志丟失,不報(bào)錯(cuò)繼續(xù)滾動(dòng)下一個(gè)日志
compress #啟用壓縮,指的是輪替后的舊日志,這里默認(rèn)用的是gzip壓縮的
dateext #使用當(dāng)期日期作為命名格式
dateformat .%Y%m%d-%H%u70B9 #配合dateext使用,緊跟在下一行出現(xiàn),定義文件切割后的文件名,必須配合dateext使用,只支持 %Y %m %d %s
olddir /var/log/tomcat/oldlog #輪替后日志文件放入指定的目錄
}
注意:我這個(gè)配置里沒有設(shè)置多久切割一次,但是它也是一天切割一次,因?yàn)楫?dāng)/etc/logrotate.d/tomcat這個(gè)文件沒有配置時(shí),默認(rèn)是每天定時(shí)執(zhí)行/etc/cron.daily/logrotate這個(gè)文件,這個(gè)文件是一天一次的。
#強(qiáng)制執(zhí)行切割,查看/var/log/tomcat/oldlog下是否有日志
[root@test01 ~]# /usr/sbin/logrotate -vf /etc/logrotate.d/tomcat reading config file /etc/logrotate.d/tomcat olddir is now /var/log/tomcat/oldlog Allocating hash table for state file, size 15360 B Handling 1 logs rotating pattern: /usr/local/tomcat8/logs/catalina.out forced from command line (5000 rotations) olddir is /var/log/tomcat/oldlog, empty log files are not rotated, old logs are removed considering log /usr/local/tomcat8/logs/catalina.out log needs rotating rotating log /usr/local/tomcat8/logs/catalina.out, log->rotateCount is 5000 Converted \\\' .%Y%m%d-%H%u70B9\\\' -> \\\'.%Y%m%d-%H%u70B9\\\' dateext suffix \\\'.20181226-15點(diǎn)\\\' glob pattern \\\'.[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]-[0-9][0-9]點(diǎn)\\\' glob finding old rotated logs failed fscreate context set to unconfined_u:object_r:usr_t:s0 renaming /usr/local/tomcat8/logs/catalina.out to /var/log/tomcat/oldlog/catalina.out.20181226-15點(diǎn) compressing log with: /bin/gzip set default create context to unconfined_u:object_r:usr_t:s0 set default create context
#查看切割結(jié)果
#把之前切割的刪除了,因?yàn)樵俣〞r(shí)切割文件是相同的,還是catalina.out.20181226-15點(diǎn).gz這個(gè)文件,所以不會(huì)切割成功。
[root@test01 ~]# rm -rf /var/log/tomcat/oldlog/catalina.out.20181226-15點(diǎn).gz [root@test01 ~]# ls /var/log/tomcat/oldlog/ [root@test01 ~]#
#設(shè)置定時(shí)任務(wù),每一分鐘切割一次(注意:日志里要有內(nèi)容,因?yàn)榍懊娑x空的日志文件是不切割的)
[root@test01 ~]# crontab –e */1 * * * * /usr/sbin/logrotate -vf /etc/logrotate.d/tomcat >>/var/log/tomcat/oldlog/cutting.log
#每倆小時(shí)切割一次
[root@test02 ~]# crontab -l 0 */2 * * * /usr/sbin/logrotate -vf /etc/logrotate.d/tomcat >> /root/chenjiaxin/cutting.log
#查看定時(shí)切割的結(jié)果
當(dāng)然,上面設(shè)置一分鐘切割一次,是為了實(shí)驗(yàn)?zāi)鼙M快看到效果。實(shí)際是需要根據(jù)公司需要來設(shè)置多久來切割一次日志的!
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持西部數(shù)碼。
更多關(guān)于云服務(wù)器,域名注冊(cè),虛擬主機(jī)的問題,請(qǐng)?jiān)L問西部數(shù)碼官網(wǎng):www.ps-sw.cn