Search squid archive

Re: logrotate/squid -k rotate relationship

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



I use the following scripts for rotation:

------ rotate.sh -------
#!/bin/sh

SQUID_HOME=/opt/squid
SQUID_VERSION=2.5.13
SQUID_LOG_DIR=${SQUID_HOME}/shared/cache/logging
SQUID_LOG_BACKUP=${SQUID_HOME}/shared/logging

SLEEP_PROG=/bin/sleep
DATE_PROG=/bin/date

#Rotate squid logs
${SQUID_HOME}/${SQUID_VERSION}/sbin/squid -k rotate

#Wait 2 minutes, to be certain Squid rotation is finished

${SLEEP_PROG} 120

#cache_access.log.0 is now the most recent logfile. Rename this to
#cache_access-DATE-HOUR.log, and move to the archive directory

LAST_HOUR=`${DATE_PROG} --date "1 hour ago" +%F-%H%M`
LAST_DATE=`${DATE_PROG} --date "1 hour ago" +%F`

mkdir -p ${SQUID_LOG_BACKUP}/old-logs/${LAST_DATE}
mv ${SQUID_LOG_DIR}/access.log.0
${SQUID_LOG_BACKUP}/old-logs/${LAST_DATE}/access-${LAST_HOUR}.log
mv ${SQUID_LOG_DIR}/cache.log.0
${SQUID_LOG_BACKUP}/old-logs/${LAST_DATE}/cache-${LAST_HOUR}.log
------ rotate.sh -------

This is run at 00:00, 08:00 and 18:00.

And at 04:30, there's a script that bzips the logs:

------ bzip.sh ------
#!/bin/sh

SQUID_HOME=/opt/squid
DATE_PROG=/bin/date
BZIP_PROG=/usr/bin/bzip2

SQUID_LOGS=${SQUID_HOME}/shared/logging/old-logs
LAST_DATE=`date --date "1 day ago" +%F`

## bzip2 the logfiles

for f in ${SQUID_LOGS}/${LAST_DATE}/*.log; do
        ${BZIP_PROG} $f
done
------ bzip.sh ------

Crontab looks like:

0 0,8,20 * * * /opt/squid/support/rotate.sh > /dev/null 2>&1
30 4 * * * /opt/squid/support/bzip-logs.sh > /dev/null 2>&1

Joost


[Index of Archives]     [Linux Audio Users]     [Samba]     [Big List of Linux Books]     [Linux USB]     [Yosemite News]

  Powered by Linux