Tomcat關閉日誌catalina.out

獵手家園發表於2020-09-08

事件起因:有一天,接收伺服器報警,說硬碟空間不夠了。可我明明配了200G的空間,只掛了一個簡單的業務系統啊?

最後查到,原來一個名為catalina.out檔案佔了120多G。

 

經過查詢資料,瞭解到catalina.out檔案原來是tomcat自動產生的,執行久了會越來越大,對系統的穩定造成了一定的影響。

可透過修改conf/logging.properties日誌配置檔案來遮蔽掉這部分的日誌資訊。

catalina.org.apache.juli.FileHandler.level = WARNING
catalina.org.apache.juli.FileHandler.directory = ${catalina.base}/logs
catalina.org.apache.juli.FileHandler.prefix = catalina.

將level級別設定成WARNING就可以大量減少日誌的輸出,當然也可以設定成OFF,直接禁用掉。

日誌的級別有:SEVERE (highest value) > WARNING > INFO > CONFIG > FINE > FINER > FINEST (lowest value)

官方文件說明:http://tomcat.apache.org/tomcat-8.0-doc/logging.html

 

兩個比較簡單粗暴的方法:

1、直接刪除掉:rm -rf catalina.out

但是每次啟動的時候都會重新生成,我的辦法是寫到啟動指令碼里,在啟動業務後自動執行刪除。

 

2、存檔+清空

使用cron每天來備份當前的catalina.out,然後清空他的內容;

#!/bin/sh

y=`date "+%Y"`
m=`date "+%m"`
d=`date "+%d"`
cd /PATH /tomcat/logs
cp catalina.out catalina.out.$y$m$d
echo > catalina.out
exit

 

還有沒有更好的辦法,期待高人給個指點,謝謝!

相關文章