nginx属于日志的高产应用,但自身不想jboss等其他应用天生具有自我分割的功能,所以需要人工干预分割,
近期在做日志巡检的时候,发现有的日志已经达到6G之多,这说明之前做的日志分割脚本并没有真正的按预想的期望运行。
打开日志才发现,6G大部分是空行,在打tar压缩之后也就6M,排查分析原因,只有是因为打tar的时候文件还在不断写入,这样tar就会中断,echo “”不断累积
新脚本如下,经测试好用,写进定时任务再观察看看正不正常。
#!/bin/bash cd /alidata/log/nginx logPath=$1 logFlie=$2.log filesize=`ls -l $logFlie | awk '{ print $5 }'` maxsize=$((1024*100)) if [ $filesize -gt $maxsize ]; then cp -pf ./$logFlie ./$logPath echo -n "" > ./$logFlie tar -zcPf ./$logPath/$logFlie.`date -d "-1 day" +"%Y-%m-%d-%H-%M"`.tar.gz ./$logPath/$logFlie rm -f ./$logPath/$logFlie echo $(date) ====$logFlie is be tared >> ./autotar.log fi
©️公众号:思考者文刀
- 上一篇: 关于增加微服务监控及自动处理机制
- 下一篇: 阿里云应用实时监控(ARMS)探针安装及配置方法实操
评论
wordpress建站吧
回复学习一下,暂时用不到,