nginx日志切割
近几天查询传参日志,发现access日志57G,不方便查日志,还要使用awk或grep命令查,虽然快,较麻烦,不如查询某天的搜索下快
12月的服务改造上线后,更改了服务器,之前机器是以前的运维操作的nginx日志切割。
基于这个背景,了解下日志切割,详细方法如下:
1.备份脚本的实现
#设置日志文件存放目录 logs_path="/home/nginx/logs/" #设置pid文件 pid_path="/home/nginx/logs/nginx.pid" #重命名日志文件 mv ${logs_path}ibk_access.log ${logs_path}ibk_access_$(date -d "yesterday" +"%Y%m%d").log mv ${logs_path}ibk_error.log ${logs_path}ibk_error_$(date -d "yesterday" +"%Y%m%d").log #压缩 gzip ${logs_path}ibk_access_$(date -d "yesterday" +"%Y%m%d").log gzip ${logs_path}ibk_error_$(date -d "yesterday" +"%Y%m%d").log #向nginx主进程发信号重读日志 kill -USR1 `cat ${pid_path}`
2.设定每天执行一次
ps -ef | grep cron # 查看定时进程是否启动 service cron start #启动定时进程 crontab -e #设置定时任务脚本 00 02 * * * sh /usr/local/nginx/sbin/savelog.sh #设定每天02:00执行一次后边的命令