V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Distributions
Ubuntu
Fedora
CentOS
中文资源站
网易开源镜像站
iambear
V2EX  ›  Linux

logrotate 管理分割 nginx 日志无效

  •  
  •   iambear · 2014-04-12 08:36:21 +08:00 · 4770 次点击
    这是一个创建于 3884 天前的主题,其中的信息可能已经有所发展或是发生改变。
    服务器想使用logrotate管理分割nginx日志,但是不知道为什么没有效果。如果手动执行logrotate强制rotate日志,能够成功分隔日志。

    系统环境是centos 6.4。

    下面是配置:

    # cat /etc/logrotate.d/nginx
    /usr/local/nginx/logs/*.log {
    daily
    rotate 15
    missingok
    dateext
    sharedscripts
    postrotate
    if [ -f /usr/local/nginx/logs/nginx.pid ]; then
    kill -USR1 `cat /usr/local/nginx/logs/nginx.pid`
    fi
    endscript
    }

    执行sudo logrotate -dv /etc/logrotate.d/nginx的时候显示log does not need rotating

    另外 cat /var/lib/logrotate.status 的时候,发现日志文件确实被标记成已经rotate了。
    5 条回复    1970-01-01 08:00:00 +08:00
    Lax
        1
    Lax  
       2014-04-12 09:26:31 +08:00
    我遇到过两次的经验,供参考:
    1 看看cron进程是不是起来了,以及cron里有没有配logrotate
    2 /etc/logrotate.d/nginx与同目录下文件的权限是不是一致
    iambear
        2
    iambear  
    OP
       2014-04-12 13:53:30 +08:00
    @Lax /etc/cron.daily 里面有logrotate文件,这样是不是就证明配置过了?还是需要在其它地方配置每天执行才会每天去执行那个daily里面的任务。我看其它系统的log都能很好的rotate。另外/etc/logrotate.d/nginx权限跟其它的也是一样的。
    xiawinter
        3
    xiawinter  
       2014-04-12 18:23:33 +08:00
    流量多大, 日志多大, 如果日志很小,logrotate 会懒得搞
    iambear
        4
    iambear  
    OP
       2014-04-12 20:48:16 +08:00
    @xiawinter 今天的日志文件大概有几百兆吧,我感觉我的配置并没有指明对日志大小有限制。
    xiawinter
        5
    xiawinter  
       2014-04-13 21:14:20 +08:00
    nginx 运行在什么用户下面?

    试试看 create 0640 www adm

    如果 nginx 是 www 下面的。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5182 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 46ms · UTC 03:48 · PVG 11:48 · LAX 19:48 · JFK 22:48
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.