nginx 日志切割
2014-04-22 17:48
232 查看
nginx的日志文件没有rotate功能。如果你不处理,日志文件将变得越来越大,还好我们可以写一个nginx日志切割脚本来自动切割日志文件。第一步就是重命名日志文件,不用担心重命名后nginx找不到日志文件而丢失日志。在你未重新打开原名字的日志文件前,nginx还是会向你重命名的文件写日志,linux是靠文件描述符而不是文件名定位文件。第二步向nginx主进程发送USR1信号。nginx主进程接到信号后会从配置文件中读取日志文件名称,重新打开日志文件(以配置文件中的日志名称命名),并以工作进程的用户作为日志文件的所有者。重新打开日志文件后,nginx主进程会关闭重名的日志文件并通知工作进程使用新打开的日志文件。工作进程立刻打开新的日志文件并关闭重名名的日志文件。然后你就可以处理旧的日志文件了。nginx日志按日期自动切割脚本如下:#nginx日志切割脚本#author: wz#!/bin/bashlogs_path="/opt/logs/"pid_path="/opt/run/nginx.pid"#重命名日志文件mv ${logs_path}access.log ${logs_path}access_$(date -d "yesterday"+"%Y%m%d").log#向nginx主进程发信号重新打开日志kill -USR1 `cat ${pid_path}`crontab 设置作业0 0 * * * (/bin/bash /opt/nginx/sbin/cut_nginx_log.sh)>/dev/null 2>&1
这样就每天的0点0分把nginx日志重命名为日期格式,并重新生成今天的新日志文件
这样就每天的0点0分把nginx日志重命名为日期格式,并重新生成今天的新日志文件
相关文章推荐
- nginx自动切割访问日志
- nginx基于域名的日志切割脚本
- Nginx日志切割
- nginx日志按天切割脚本
- nginx 日志切割配置
- nginx 日志切割
- nginx日志切割shell
- Nginx运行日志自动切割
- Nginx日志文件切割
- 深入浅出Nginx之四【日志切割与环境变量】
- nginx日志切割
- Linux服务器nginx日志切割
- Nginx配置——日志切割
- nginx日志切割,日志格式,静态文件不记录日志,配置缓存
- Nginx日志切割脚本
- Nginx日志自动切割及删除
- nginx自动切割访问日志
- Nginx日志轮询切割
- Linux下添加shell脚本使得nginx日志每天定时切割压缩
- bash切割nginx日志