使用logrotate分割Tomcat的catalina日志


切割catalian日志的方式有很多種,比如shell腳本的、cronolog或者通過配置log4j等等這些都可以實現。但今天我要介紹是使用logrotate來按日期生成日志。

原文是一個外國博主的文章,在這里分享給大家。

 

如果catalina.out的大小超過了2G,那么tomcat可能在沒有錯誤提示的情況下崩潰、無法啟動。所以為了避免出現這個問題,我們應該每天分割catalina.out。

如何每天自動的分割catalina.out或者大小達到5M時切割catalina.out

1.新建一個文件

在/etc/logrotate.d/ 目錄下新建一個文件,命名隨意。

1 /etc/logrotate.d/tomcat

2.復制下面的語句至上文新建的文件中

1 /var/log/tomcat/catalina.out {   copytruncate   daily   rotate 7   compress   missingok   size 5M  }

各個配置的具體含義:

  • 確保/var/log/tomcat/catalina.out指向你服務器中的catalina.out的地址
  • daily - 每天切割
  • rotate - 保留最多七個文件
  • compress - 壓縮分割后的文件
  • size - 當catalina.out大於5M時分割

如何起作用

  1. 每天晚上,cron daemon會自動執行/etc/cron.daily目錄下的任務
  2. 這個會觸發/etc/cron.daily/logrotate文件,logrotate一般是隨linux按安裝的。它會執行這個命令-“/etc/sbin/logrotate /etc/logrotate.conf”(注意空格)
  3. /etc/logrotate.conf 包含了/etc/logrotate.d目錄下的所有腳本
  4. 這個會觸發上一步你寫的/etc/logrotate.d/tomcate文件

手動執行logrotate

執行以下語句來手動運行cron任務

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

logrotate的更多操作

1 man logrotate

From http://www.vineetmanohar.com

 


免責聲明!

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



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