nginx使用 logrotate 切割日志 图文教程

大体上有三种方法切割nginx日志。

第一种是写个定时任务,每天零点把旧的日志重命名,并对nginx进程发送USR1信号使其重新打开日志并写入。

第二种是能过管道的方式把新产生的日志写到另外一个日志文件里。

第三种是能过logrotate来切割日志,logrotate是系统自带的服务,可以切割任何日志,不仅仅是nginx,这里推荐使用它。

下面我们详细讲一下Logrotate切割Nginx日志

[title]步骤1:[/title]

vi /etc/logrotate.d/nginx

文件内容如下

/usr/local/nginx/logs/access.log {     daily   rotate 7    missingok   notifempty   dateext   sharedscripts   postrotate       if [ -f /usr/local/nginx/logs/nginx.pid ]; then          kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`       fi  endscript   }

[title]步骤2:测试是否可用[/title]

/usr/sbin/logrotate -f /etc/logrotate.d/nginx

[title]步骤3:配置定时任务[/title]

59 23 * * * /usr/sbin/logrotate -f /etc/logrotate.d/nginx

完成!

腾讯云限时秒杀【点击购买】

搬瓦工,CN2高速线路,1GB带宽,电信联通优化KVM,延迟低,速度快,建站稳定,搬瓦工BandwagonHost VPS优惠码BWH26FXH3HIQ,支持<支付宝> 【点击购买】!

Vultr$3.5日本节点,512M内存/500G流量/1G带宽,电信联通优化,延迟低,速度快【点击购买】!

阿里云香港、新加坡VPS/1核/1G/25G SSD/1T流量/30M带宽/年付¥288【点击购买】