Page MenuHomePhabricator

check on the nova-api upstart logs
Closed, ResolvedPublic

Description

logrotate and upstart are screwing this up somehow. The issue might have been a one-off, but let's recheck in a day or two.

Event Timeline

There doesn't seem to be a good way to win this one. I already added 'delaycompress' to the logrotate script to prevent cronspam (https://gerrit.wikimedia.org/r/#/c/313558/) but now upstart just writes to the .1 file forever.

In theory it would only write to .1 until it was gzipped, but since the .log file doesn't exist anymore, logrotate skips over nova-api.log so it never gzips. We're left with a .1 file growing without bound that is never rotated.

The next step would be to add 'kill -HUP' to the post-rotate section, but nova-api doesn't respond to a -hup. So I guess we need to do a full-blown 'service restart'?

Customizing the logrotate script per service is ugly since currently the upstart logrotate is installed in Base.

Change 341808 had a related patch set uploaded (by Andrew Bogott):
[operations/puppet] Upstart logrotate: Use copytruncate instead of delaycompress.

https://gerrit.wikimedia.org/r/341808

Change 341808 merged by Andrew Bogott:
[operations/puppet] Upstart logrotate: Use copytruncate instead of delaycompress.

https://gerrit.wikimedia.org/r/341808

This seems to actually work properly now.