Tomcat输出catalina.out的大小控制
為什么80%的碼農都做不了架構師?>>> ??
資源URL:http://download.csdn.net/detail/attagain/7771065?
Tomcat默認生成的日志文件catalina.out,隨著時間的推移,逐漸增大,可能達到G數量級。文件過大,我們將無法使用過常規編輯工具查看,嚴重影響系統維護工作。解決此問題,主要從Tomcat和代碼兩方面考慮。
一、?代碼本身考慮
Tomcat輸出catalina.out文件,數據主要來源為:System.out 和 System.err 在控制臺上直接輸出的信息。為了減少日志輸出的壓力,規范代碼習慣,編碼時應避免使用System.out.println()和 e.printStackTrace()。
二、?Tomcat配置考慮
1、?Tomcat使用log4j
該方法,在這里不做討論。
2、?Tomcat配置
部署服務時,在Context中添加屬性swallowOutput="true",可以減少控制臺日志的輸出。
3、?使用cronolog工具分割
A、?cronolog工具下載
官方URL:http://cronolog.org/download/index.html
B、?cronolog編譯安裝
[TSP@tsp-dev-webservice ~]$ tar xvf cronolog-1.6.2.tar.gz
[TSP@tsp-dev-webservice cronolog-1.6.2]$ ./configure
[TSP@tsp-dev-webservice cronolog-1.6.2]$ make
[TSP@tsp-dev-webservice cronolog-1.6.2]$ sudo make install
C、?修改Tomcat啟動腳本catalina.sh?
a、?修改輸出日志路徑
修改:
?if [ -z "$CATALINA_OUT" ] ; then
? ???? CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out
fi
為:
??? if [ -z "$CATALINA_OUT" ] ; then
????? CATALINA_OUT="$CATALINA_BASE"/logs/catalina.%Y-%m-%d.out
fi
b、?刪除生成日志文件
注釋:
touch "$CATALINA_OUT"
?? 為:
#touch "$CATALINA_OUT"
c、?修改啟動腳本參數
修改:
????? org.apache.catalina.startup.Bootstrap "$@" start \
????? >> "$CATALINA_OUT" 2>&1 "&"
??? 為:
????? org.apache.catalina.startup.Bootstrap "$@" start 2>&1 \
????? | /usr/local/sbin/cronolog "$CATALINA_OUT" >> /dev/null &
D、?重啟Tomcat
Tomcat輸出日志文件分割成功,輸出log文件格式為:catalina.2014-08-15.out類型。
轉載于:https://my.oschina.net/liting/blog/414199
總結
以上是生活随笔為你收集整理的Tomcat输出catalina.out的大小控制的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【原创】linux 批量清空文本内容
- 下一篇: 【数据库设计-3】菜单设计