Linux系统下nginx日志每天定时切割的脚本写法

  下面是deepvps自己用的自动每天定时切割Nginx日志的.脚本,很方便很好用,推荐给大家使用。本脚本也是参考了张宴老师的文章,再次感谢张宴老师。

Linux系统下nginx日志每天定时切割的脚本写法

  1、创建脚本/usr/local/nginx/sbin/cut_nginx_log.sh

  vi /usr/local/nginx/sbin/cut_nginx_log.sh

  输入以下内容:

  #!/bin/bash

  # This script run at 00:00

  # The Nginx logs path

  logs_path=”/home/www/logs/”

  mkdir -p ${logs_path}$(date -d “yesterday” +”%Y”)/$(date -d “yesterday” +”%m”)/

  mv ${logs_path}access.log ${logs_path}$(date -d “yesterday” +”%Y”)/$(date -d “yesterday” +”%m”)/access_$(date -d “yesterday” +”%Y%m%d”).log

  kill -USR1 `cat /usr/local/nginx/nginx.pid`

  2、设置crontab,每天凌晨00:00切割nginx访问日志

  crontab -e

  输入以下内容:

  00 00 * * * /bin/bash /usr/local/nginx/sbin/cut_nginx_log.sh