My Apache logrotate config looks like this:
/var/log/http/*log {
monthly
dateext
dateformat .%Y.%m
[... rest stripped for brevity ...]
}
This works great, except that the date on the rotated filename is one period later than the period actually covered by the logs, for example error_log.2012.09
covers 2012-08-01 to 2012-08-31.
I realize that there are other options for Apache (eg. cronolog), but I have a bunch of other logs that I also need to rotate, and logrotate is really exactly what I need apart from this one issue.
Is there a way to get logrotate to use a date offset — or, even better, figure out the previous time period — when generating the rotated filename?
Best Answer
Added in 3.8.0 (although looking at the svn history, it looks like it was actually added in 3.7.9):
http://svn.fedorahosted.org/svn/logrotate/tags/r3-8-0/CHANGES