nginx 的日志默认是不会进行切割的,如果我们不对其进行一些处理,那么就会一天一天变大,等大到几个 G 的时候,一旦出现问题,想通过日志进行一些问题的排查都很困难了。
我的博客中 nginx 日志也是这么个情况,于是打算做一下日志切割。
脚本如下:
- #!/bin/bash
- Date=`date -d '-1 day' '+%Y-%m-%d'`
- cd /var/log/nginx && mkdir logs/$Date
- for i in access.log error.log
- do
- gzip -c $i > logs/$Date/"$i"_"$Date".gz
- echo " " > $i
- find logs/ -ctime +30 | xargs rm -rf
- done
此处只用把脚本中日志的位置进行调整并创建 logs 目录,就可以了。