把tomcat里面的项目生成的日志进行分析切割和分类
发布时间:2020-12-15 07:14:16 所属栏目:安全 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 #!/bin/bashPATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/binexport PATHclearlogs_path="/var/log/tomcat"pro_logs_path="
以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站长网小编把它分享给大家,仅供参考 #!/bin/bash PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin export PATH clear logs_path="/var/log/tomcat" pro_logs_path="/path/tomcatlog/processed" ratedate=$(date -d "Yesterday" +"%Y-%m-%d") app_grp=(s1 s2 s3 s4 s5) function log_cut() { for i in ${app_grp[@]} do for j in $(cd $logs_path ; echo $i.log.*) do [ $j = $i.log.* ] && continue ratemonth=`echo ${j##*.}|awk -F '-' '{print $1"-"$2}'` [ ! -f $pro_logs_path/$i_$ratemonth.txt ] && touch $pro_logs_path/$i_$ratemonth.txt if [ "s1" = $i -o "s2" = $i ] ; then [ $ratedate != ${j##*.} ] && grep -v 'INFO' $logs_path/$j >> $pro_logs_path/$i_$ratemonth.txt || grep -v 'INFO' $logs_path/$j >> $pro_logs_path/$i_$ratedate.txt elif [ "s3" = $i ] ; then [ $ratedate != ${j##*.} ] && egrep -v 'INFO|TransServlet.java:36' $logs_path/$j >> $pro_logs_path/$i_$ratemonth.txt || egrep -v 'INFO|TransServlet.java:36' $logs_path/$j >> $pro_logs_path/$i_$ratedate.txt elif [ "s4" = $i ] ; then [ $ratedate != ${j##*.} ] && egrep -v 'INFO|InceptData=true' $logs_path/$j >> $pro_logs_path/$i_$ratemonth.txt || egrep -v 'INFO|InceptData=true' $logs_path/$j >> $pro_logs_path/$i_$ratedate.txt elif [ "s5" = $i ] ; then [ $ratedate != ${j##*.} ] && egrep 'threw|at ' $logs_path/$j >> $pro_logs_path/$i_$ratemonth.txt || egrep 'threw|at ' $logs_path/$j >> $pro_logs_path/$i_$ratedate.txt fi rm $logs_path/$j done done } function hmd_cut() { for k in $(cd $logs_path ; echo *0000.txt) do mddate=${k:2:6} if [ $mddate != $(date -d "last month" +"%Y%m") -a $mddate != $(date +"%Y%m") ] ; then ls -lh $logs_path/$k|awk '{print $NF,$5}'|sed 's//var/log/tomcat///g' >> $pro_logs_path/hmd.txt rm $logs_path/$k fi done } function txt_clear_up() { for w in ${app_grp[@]} do for tt in $(cd $pro_logs_path ; echo $w.*) do ratemonth=`awk -F '-|_' '{print $2"-"$3}' $tt` [ $tt != $w_$ratemonth.txt -a $tt != $w_$ratedate.txt ] && cat $pro_logs_path/$tt >> $pro_logs_path/$w_$ratemonth.txt rm $pro_logs_path/$tt done done } log_cut hmd_cut txt_clear_up #ls -lh $pro_logs_path 以上内容由PHP站长网【52php.cn】收集整理供大家参考研究 如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |