nginx日志logrotate后,当前日志文件为空

/etc/logrotate.d/nginx配置如下

/var/log/nginx/*.log {
        daily
        missingok
        rotate 10
        compress
        delaycompress
        notifempty
        create 644 www www
        sharedscripts
        postrotate
                if [ -f /var/run/nginx.pid ]; then
                        kill -USR1 `cat /var/run/nginx.pid`
                fi
        endscript
}

能够生成切割文件,但当前日志文件为空
图片描述

直接运行cat /var/run/nginx.pid 能获取nginx的pid,但运行kill -USR1 cat /var/run/nginx.pid``没有生效,貌似是USR1信号对nginx无效。

nginx -v返回nginx version: nginx/1.10.2
cat /proc/version返回Linux version 2.6.32-358.6.2.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-3) (GCC) ) #1 SMP Thu May 16 20:59:36 UTC 2013

阅读 2.2k
评论
    1 个回答
    • 2k

    手动测试一下吧。

    sudo mv xx-access.log xx-access.log-20171113
    sudo kill -USR1 $(cat /var/run/nginx.pid)

    也可以试下以下命令重新打开日志文件

    sudo nginx -s reopen
      撰写回答

      登录后参与交流、获取后续更新提醒