这篇文章主要为大家展示了“如何以Nginx脚本方式切割日志”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何以Nginx脚本方式切割日志”这篇文章吧。
#!/bin/bash
#Nginx的log日志目录
log_path='/opt/app/nginx/logs/'
#Nginx的pid文件存放目录
pid_path="${log_path}nginx.pid"
#清理掉指定日期前的日志
DAYS=60
#生成昨天的日志文件
#若指定10天前 date -d"10 day ago 2017-06-08" +%Y-%m-%d
mv ${log_path}access.log ${log_path}access_$(date -d "yesterday" +"%Y%m%d").log
mv ${log_path}error.log ${log_path}error_$(date -d "yesterday" +"%Y%m%d").log
kill -USR1 `cat ${pid_path}`
#文件夹大小转换成M
#文件大小默认是字节
size=`du -b ${log_path} | awk '{print int($1/1024/1024)}'`
#删除60天前的文件
if [ "$size" -gt "1000" ];then
#find 对应目录 -mtime +天数 -type f -name "文件名" -exec rm -rf {} \;
find ${log_path} -mtime +$DAYS -type f -name "*.log" -exec rm -rf {} \;
fi
#下面是任务计划
[root@centos7 ~]# cat /var/spool/cron/root
SHELL=/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
export PATH
0 0 * * * /bin/sh /opt/log_backup.sh
#赋予权限
chmod +x /opt/log_backup.sh
以上是“如何以Nginx脚本方式切割日志”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。