通过脚本按天切割nginx的日志

艺帆风顺 发布于 2025-04-03 15 次阅读


nginx的日志默认是不会进行切割的,如果我们不对其进行一些处理,那么就会一天一天变大,等大到几个G的时候,一旦出现问题,想通过日志进行一些问题的排查都很困难了。

我的博客中nginx日志也是这么个情况,于是打算做一下日志切割。

脚本如下:

#!/bin/bashDate=`date -d '-1 day' '+%Y-%m-%d'`cd /var/log/nginx && mkdir logs/$Datefor i in access.log error.logdo gzip -c $i > logs/$Date/"$i"_"$Date".gz echo " " > $i find logs/ -ctime +30 | xargs rm -rfdone

此处只用把脚本中日志的位置进行调整并创建logs目录,就可以了。

然后再将脚本扔进定时任务当中,每天的凌晨执行一次,这样就达到了按天切割,然后删除掉30天之前的日志的目的了。

版权声明:本文内容来自个人博客:二丫讲梵,遵循CC 4.0 BY-SA版权协议上原文接及本声明。本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行可。原文链接:https://wiki.eryajf.net/pages/1191.html如有涉及到侵权,请联系,将立即予以删除处理。在此特别鸣谢原作者:二丫讲梵的创作,Powered by 二丫讲梵。本文已获原作者授权发布。此篇文章的所有版权归原作者所有,与本公众号无关,商业转载建议请联系原作者,非商业转载请注明出处。