Linux下截断Nginx日志

雪域幽狐 2018-01-26 09:51 阅读:7337


Nginx日志默认都写到access.log中,随着时间增加,文件变得非常庞大,不便于分析。
    在/usr/local/nginx/sbin/目录下建立cut-log.sh文件
#!/bin/bash
## 零点执行该脚本
## Nginx 日志文件所在的目录
LOGS_PATH=/usr/local/nginx/logs
## 获取昨天的 yyyy-MM-dd
YESTERDAY=$(date -d "yesterday" +%Y-%m-%d)
## 移动文件
mv ${LOGS_PATH}/access.log ${LOGS_PATH}/access_${YESTERDAY}.log
## 向 Nginx 主进程发送 USR1 信号。USR1 信号是重新打开日志文件
kill -USR1 $(cat /usr/local/nginx/logs/nginx.pid)


然后使用crontab建立定时任务
0 0 * * * /bin/bash /usr/local/nginx/sbin/cut-log.sh

0条评论

登陆后可评论