新聞中心
鑒于在調(diào)試logback和log4j的文件切割一直無法成功,隨性用shell寫個(gè)腳本用來切割tomcat下的日志文件(大家如果有在logback或log4j使用文件切割成功的話,可以留下使用方式,先謝謝了)

創(chuàng)新互聯(lián)公司主要從事成都網(wǎng)站制作、成都網(wǎng)站建設(shè)、外貿(mào)營(yíng)銷網(wǎng)站建設(shè)、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)蠡縣,十年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):028-86922220
1:廢話少說,直接貼上腳本:
#!/bin/sh
log_dir=/var/log/tomcat
monitor_file=$1 #tomcat目錄下的catalina.out文件的絕對(duì)路徑
file_size=`du -m $monitor_file | awk '{print $1}'`
if [ $file_size -ge 100 ]
then
if [ ! -d $log_dir ]
then
mkdir /var/log/tomcat #創(chuàng)建保存切割文件目錄,這個(gè)路徑可以自行修改,保存到你想要的目錄
fi
cp $1 /var/log/tomcat/log-`date +%Y-%m-%d-%H%M%S`.log #保存日志文件
echo `date +%Y-%m-%d-%H:%M:%S`":文件切割" >>/var/log/tomcat/split.log #記錄切割日志
echo "" > $1 #清空tomcat的log/catalina.out文件內(nèi)容
fi
說明:這個(gè)腳本很簡(jiǎn)單,linux用個(gè)定時(shí)器沒分鐘定時(shí)掃描日志文件的大小,就是當(dāng)文件大于100M的時(shí)候,先把文件復(fù)制到指定的目錄,再清空原先tomcat的日志文件。這里是用crontab來使用定時(shí)器,至于這個(gè)命令的語法在這里就不多說,有興趣的可以自行g(shù)oogle,這里還是有個(gè)小小的不足,因?yàn)槭前疵糠昼姸〞r(shí)去掃描日志文件,所以最后切割文件大小還是會(huì)在100~102M之間。
然后就用定時(shí)器,定時(shí)執(zhí)行這個(gè)腳本
2:用 crontab -e 編輯定時(shí)器代碼
*/1 * * * * sh /lee_js/monitor_script.sh /opt/apache-tomcat-7.0.67/logs/catalina.out #第一個(gè)路徑是腳本的路徑,第二個(gè)參數(shù)是tomcat下catalina.out文件的絕對(duì)路徑
然后保存
至此搞定日志切割
注:若沒有crontab命令 可使用 yum安裝:
yum install vixie-cron
yum install crontabs
若文章在表述和代碼方面如有不妥之處,歡迎批評(píng)指正。留下你的腳印,歡迎評(píng)論!希望能互相學(xué)習(xí)
本文題目:shell腳本切割Tomcat的日志文件
URL分享:http://fisionsoft.com.cn/article/cdddsoj.html


咨詢
建站咨詢
