天天看點

tomcat日志切割

第一種方法:yum 安裝cronolog軟體

1.yum install cronolog -y 第三方軟體

源碼包下載下傳位址

<a href="http://download.chinaunix.net/download.php?id=3457&amp;ResourceID=1851">http://download.chinaunix.net/download.php?id=3457&amp;ResourceID=1851</a>

2.修改配置檔案。修改前記得備份

[root@tomcat01 sbin]# cat -n /aliyun/tomcat7/bin/catalina.sh

184 #if [ -z "$CATALINA_OUT" ] ; then

185 # CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out

186 #fi

改為下面的

187 ###################

188 if [ -z "$CATALINA_OUT" ] ; then

189 CATALINA_OUT="$CATALINA_BASE"/logs/tomcat01.$(date +%F).out

190 fi

191 #####################

注釋掉373 #touch "$CATALINA_OUT"

386 387 改為一下:

386 org.apache.catalina.startup.Bootstrap "$@" start 2&gt;&amp;1 \

387 | /usr/local/sbin/cronolog "$CATALINA_OUT" &gt;&gt; /dev/null &amp;

395 396 改為一下:

395 org.apache.catalina.startup.Bootstrap "$@" start 2&gt;&amp;1 \

396 | /usr/local/sbin/cronolog "$CATALINA_OUT" &gt;&gt; /dev/null &amp;

注意此兩處修改不要注視,注釋啟動tomcat時會報錯。要直接删掉這兩處的原内容

[root@tomcat01 logs]# /aliyun/tomcat7/bin/startup.sh

報錯:/usr/local/sbin/ 沒有cronolog 

[root@tomcat01 logs]# cp /usr/sbin/cronolog /usr/local/sbin/

/aliyun/tomcat7/bin/startup.sh (成功)

如果抱錯catalina.sh,說明此腳本檔案沒有執行權限,是以 chown +x catalina.sh

3.區分不同的tomcat機器的日志友善集中收集tomcat實時日志

[root@tomcat01 logs]# vim /aliyun/tomcat7/bin/catalina.sh

189 ATALINA_OUT="$CATALINA_BASE"/logs/ tomcat01.$(date +%F).out

/aliyun/tomcat7/bin/startup.sh

[root@tomcat01 logs]# find ./ -type f -name "tomcat01.2016-04-22.out"

./tomcat1.2016-04-22.out

./tomcat01.2016-04-22.out

第二種方法源碼包編譯安裝cronolog第三方tomcat日志切割軟體

1.源碼包下載下傳位址

2.安裝過程

cd /aliyun/soft/

rz -y cronolog-1.6.2.tar.gz

ls

tar xf cronolog-1.6.2.tar.gz -C /aliyun/

cd /aliyun/cronolog-1.6.2/

./configure 

echo $?

make &amp;&amp; make install

[root@tomcat02 sbin]# ll /usr/local/sbin/

total 52

-rwxr-xr-x 1 root root 40438 May 12 09:15 cronolog

-rwxr-xr-x 1 root root 9673 May 12 09:15 cronosplit

到此處編譯安裝完成

3.編輯檔案按天切割日志

vim /aliyun/tomcat7/bin/catalina.sh

4.重新啟動tomcat生效

[root@tomcat02 sbin]# ll /aliyun/tomcat7/logs/

total 0

[root@tomcat02 sbin]# /etc/init.d/tomcat7 stop

tomcat7 service is stopped! [ OK ]

[root@tomcat02 sbin]# /etc/init.d/tomcat7 start

tomcat7 service is starting! [ OK ]

total 16

-rw-r--r-- 1 root root 4295 May 12 09:34 catalina.2016-05-12.log

-rw-r--r-- 1 root root 0 May 12 09:34 localhost.2016-05-12.log

-rw-r--r-- 1 root root 0 May 12 09:34 localhost_access_log.2016-05-12.txt

-rw-r--r-- 1 root root 4295 May 12 09:34 tomcat02.2016-05-12.out

 本文轉自 wjw555 51CTO部落格,原文連結:http://blog.51cto.com/wujianwei/2056448