Logrotate
Ed Wilts
ewilts at ewilts.org
Mon Jun 6 14:58:53 UTC 2005
On Mon, Jun 06, 2005 at 04:46:53PM +0200, Philippe de Rochambeau wrote:
> I am having trouble understanding the following /etc/logrotate.d/ file
>
> httpd:
>
> /var/log/httpd/*log {
> missingok
> notifempty
> sharedscripts
> postrotate
> /bin/kill -HUP `cat /var/run/httpd.pid 2>/dev/null` 2>
> /dev/null || true
> endscript
> }
> ~
>
> The " /bin/kill -HUP `cat /var/run/httpd.pid 2>/dev/null` 2> /dev/null
> || true " line apparently means "kill the httpd daemon". But why would
> you want to kill the httpd daemon after rotating the logs?
kill -HUP means that you don't want to actually kill the daemon but to
send it a signal to wake up and re-read its configuration files and
re-open its log files. In this case, it will open new copies of
access_log, error_log, etc.
> Furthermore, how would you write the above configuration file to rotate
> log files whose names contain the current date (e.g., 20050606.log,
> 20050607.log, etc.)?
In the postrotate section, rename the log file from whatever.log.1 to
the date format. Remember, though, that you have to handle multiple
files. You don't want to rename both access_log.1 and error_log.1 to
20050606.log.
If you do rename the log files, note that you'll be responsible for
cleaning them up. logrotate normally will delete older files, keeping
by default 4 versions. So, when it comes time to rotate log.4, it will
be deleted instead of being renamed to log.5.
--
Ed Wilts, RHCE
Mounds View, MN, USA
mailto:ewilts at ewilts.org
Member #1, Red Hat Community Ambassador Program
More information about the redhat-list
mailing list