logrotateが動いてなくて、logrotate.statusは更新されてて、dry-runするとメッセージでは「さっき更新したでしょ」とスキップされて、でもログファイルはサーバ建立時からずっとそのまま。なんだこれ。
logrotateの問題、完全に理解した。
問題のサーバはkusanagiで建ててるWordPressで、複数のプロファイルが稼働していて、/blog/、/blog-a/、/blog-b/みたいになっていた。
管理の都合上、この/blog-a/、/blog-b/を/a/、/b/でシンボリックリンクを張っていたところ、ログローテーションの対象ファイルとして指定されている/home/kusanagi/*/log/nginx/*.logが本来のプロファイルとシンボリックリンク両方で実行されることになり、エラーとなっていた。
missingokが付いてるのにエラーになることについては不明。
/home/kusanagi/*/log/nginx/*.logの定義を/home/kusanagi/blog-*/log/nginx/*.logに書き換えることで、ひとまず解決。
とりあえず-fで強制したら動いた。明日以降、要観察。