読者です 読者をやめる 読者になる 読者になる

logrotate.d のdebugモードがおかしい

linux rails

Railsのログローテートは、Linuxのlogrotateで行う派なのですが、 久しぶりに設定してdebugモードで確認してみるとエラーが出て小一時間ほど嵌ってしまいました。
結果から言うと、logrotate のBugだそうです。
 
Bug #1320201 “behaviour in debug mode doesn't match real behavio...” : Bugs : logrotate package : Ubuntu
3.9.1 では直っているそうです。

設定内容

$cat /etc/logrotate.d/rails
/var/www/rails_app/log/production.log {
    daily
    rotate 31
    missingok
    notifempty
    compress
    delaycompress
    noolddir
    sharedscripts
    postrotate
        /usr/bin/passenger-config restart-app /var/www/rails_app
    endscript
}

出たエラー

$ logrotate -dv /etc/logrotate.d/rails

error: error opening /var/www/rails_app/log/production.log.31.gz: No such file or directory

missingok 設定しているのにエラーになる。