侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130562 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

linux nginx与tomcat或log4j日志备份压缩清理脚本

2023-10-01 星期日 / 0 评论 / 0 点赞 / 46 阅读 / 3698 字

此脚本为nginx日志的处理,如为tomcat或log4j 则修改日志日期格式与日志文件后缀名 #!/bin/sh#########nginx日志处理##############chmod u+x /

此脚本为nginx日志的处理,如为tomcat或log4j 则修改日志日期格式与日志文件后缀名

#!/bin/sh#########nginx日志处理##############chmod u+x /software/nginx/nginx/nginxLogHandle.sh#sh /software/nginx/nginx/nginxLogHandle.sh#crontab -e   加入定时任务#每天凌晨1点开始执行,丢弃执行输出#   0 1 * * *  sh /software/nginx/nginx/nginxLogHandle.sh > /dev/null 2>&1#cat /software/nginx/nginx/logsBak/0_HandleLog.txt#定义变量开始#压缩备份前一天到前多少天的日志zipLogDayNum=20#删除多少天前的日志delLogDayNum=30#日志目录nginxLogPath="/software/nginx/nginx/logs"#日志备份目录nginxLogBackPath="/software/nginx/nginx/logsBak"#脚本执行日志记录路径nginxLogFindFilePath="/software/nginx/nginx/logsBak"nginxLogZipFileName="$nginxLogFindFilePath/0_findZipHandle.txt"nginxLogDelFileName="$nginxLogFindFilePath/0_findDelHandle.txt"#脚本执行日志记录nginxLogHandleFileName="$nginxLogFindFilePath/0_HandleLog.txt"#定义变量结束echo "#################################################" >> $nginxLogHandleFileNameecho "############## nginx日志处理 ###################" >> $nginxLogHandleFileNameecho "######################" $(date +"%Y-%m-%d %H:%M:%S:%N") "###########################" >> $nginxLogHandleFileNameecho "#################################################" >> $nginxLogHandleFileNameecho "####zipLogDayNum###" $zipLogDayNum >> $nginxLogHandleFileNameecho "####delLogDayNum###" $delLogDayNum >> $nginxLogHandleFileNameecho "####nginxLogPath###" $nginxLogPath >> $nginxLogHandleFileNameecho "####nginxLogBackPath###" $nginxLogBackPath >> $nginxLogHandleFileNameecho "####nginxLogZipFileName###" $nginxLogZipFileName >> $nginxLogHandleFileNameecho "####nginxLogDelFileName###" $nginxLogDelFileName >> $nginxLogHandleFileName#检查备份目录是否存在if [ ! -x "$nginxLogBackPath" ]then {  	mkdir $nginxLogBackPath} fi  #检查文件记录目录是否存在if [ ! -x "$nginxLogFindFilePath" ]then {  	mkdir $nginxLogFindFilePath} fi  #清空查找记录文件if [ -f "$nginxLogZipFileName" ]then {		rm -rf $nginxLogZipFileName}fiif [ -f "$nginxLogDelFileName" ]then {		rm -rf $nginxLogDelFileName}fi#查找符合条件的文件放入txtfor ((num=1; num<$zipLogDayNum; ++num))do  	logDateStr=$(date -d-$num' day' +"%Y%m%d")	find $nginxLogPath -name "*.log-$logDateStr" >> $nginxLogZipFileNamedone #循环查找到文件cat $nginxLogZipFileName | while read findRowdo    echo $(date +"%Y-%m-%d %H:%M:%S:%N") "####压缩文件并删除###" $findRow >> $nginxLogHandleFileName    findFileName=$(basename $findRow)	#echo "$findFileName.tar.gz"   tar -zcf $nginxLogBackPath/$findFileName.tar.gz $findRow	rm -rf $findRowdone##删除文件for ((num=$delLogDayNum; num<$delLogDayNum+10; ++num))do  	logDateStr=$(date -d-$num' day' +"%Y%m%d")	find $nginxLogBackPath -name "*.log-$logDateStr.tar.gz" >> $nginxLogDelFileNamedone cat $nginxLogDelFileName | while read findRowdo 	echo $(date +"%Y-%m-%d %H:%M:%S:%N") "####删除备份###" $findRow >> $nginxLogHandleFileName	rm -rf $findRowdoneecho "#################################################" >> $nginxLogHandleFileNameecho "######################" $(date +"%Y-%m-%d %H:%M:%S:%N") "###########################" >> $nginxLogHandleFileNameecho "#################################################" >> $nginxLogHandleFileNameecho "" >> $nginxLogHandleFileNameecho "" >> $nginxLogHandleFileNameecho "" >> $nginxLogHandleFileName

 

广告 广告

评论区