Logrotate
One admin task on my server that I had long procrastinated was to set up rotation of apache logs. I noticed that some of my websites' logs were getting huge — tens to hudreds of megabytes, so today I set up log rotation. It was easier than I expected.
On Debian, log management is done by the program logrotate. Logrotate is
run daily by a cron job in /etc/cron.daily/logrotate
. Adding a log
rotation job to logrotate is as simple as adding a config file to
/etc/logrotate.d
.
In my case, I wanted to rotate the apache logs of my websites, which live
in /srv/
. To create my logrotate config, I copied the apache one:
cp /etc/logrotate.d/apache /etc/logrotate.d/jjf-websites
Then I changed the pathname in the new file from /var/log/apache2/*.log
to /srv/*/logs/*.log
, and tested it:
logrotate -f /etc/logrotate.d/jjf-websites
What could be easier?