tomcat catalina.out日志切割(logrotate)


簡單說明:
1,因為tomcat日志會一直往catalina.out里面輸出,所以回到值catalina.out非常大,占用磁盤空間
2,日志非常大,查看日志就需要很長時間。
3,據說catalina.out日志超過2個G,程序崩潰時將有可能會啟動失敗並且不會有任何錯誤信息提示

所以,基於以上三點,所以需要對catalina.out進行切割。

我早期切割的方法是寫腳本,原理就是講catalin.out 復制一份,重新命名加上日期。然后再cat /dev/null > catalina.out 清空日志即可。

二,使用系統自帶的日志切割工具logrotate切割

vi /etc/logrotate.d/tomcat
/usr/local/apache-tomcat/logs/catalina.out {
copytruncate
daily
rotate 5
missingok
compress
size 16M
}

配置簡單說明:
/usr/local/apache-tomcat/logs/catalina.out{ #要切割的文件
daily # 每天進行catalina.out文件的切割
rotate 5 # 保留5個文件
missingok # 文件丟失了,繼續切割而不報錯
compress # 使用壓縮的方式
size 16M # 當catalina.out文件大於16MB時,就切割

工作原理:
每天晚上crond守護進程會運行在/etc/cron.daily目錄中的任務列表;
與logrotate相關的腳本也在/etc/cron.daily目錄中。運行的方式為"/usr/bin/logrotate /etc/logrotate.conf";
/etc/logrotate.conf文件include了/etc/logrotate.d/目錄下的所有文件。還包括我們上面剛創建的tomcat文件;
/etc/logrotate.d/tomcat文件會觸發/usr/local/apache-tomcat/logs/catalina.out文件的輪轉。
}

參考:http://lavenliu.blog.51cto.com/5060944/1765791


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM