nginx切割nginx.conf日志

进入nginx logs目录nginx

方式一:
  1. 复制日志文件
mv access.log  bak.log #复制access.log
  1. 产生新的日志文件
../sbin/nginx -s reopen #执行后会建立一个新的access.log

方式二使用定时任务切割日志
  1. 在logs目录下建立 ratate.sh文件 写入如下内容
vim ratate.sh#建立脚本文件,写入脚本
# 目标日志目录
CUR_LOGS_PATH=/usr/local/nginx/logs
# 历史日志目录(本身建立的目录)
LOGS_PATH=/usr/local/nginx/logs/history
#获取时间
YESTERDAY=$(date -d "yesterday" +%Y-%m-%d)
mv ${CUR_LOGS_PATH}/access.log  ${LOGS_PATH}/access_${YESTERDAY}.log
mv ${CUR_LOGS_PATH}/error.log  ${LOGS_PATH}/error_${YESTERDAY}.log
##向Nginx主进程发送USR1信号。USR1信号是从新打开日志文件
kill -USR1 $(cat  /usr/local/nginx/logs/nginx.pid)
  1. 给ratate.sh添加执行权限
#给文件设置可执行权限
chmod 751 ratate.sh
  1. 检测脚本是否正常
./ratate.sh#检测脚本是否正常

  1. 配置定时任务:

修改系统用户配置文件shell

root用户在/var/spool/cron/root 目录下vim

普通用户在:/var/spool/cron/用户名 目录下日志

vim /var/spool/cron/root #配置定时任务
#写入: 15 2 * * * /usr/local/nginx/logs/ratate.sh
# nginx日志切割定时任务

  1. 查看定时任务:
crontab -l#查看定时任务

相关文章
相关标签/搜索