Script de volcado de logs antiguos en AWSTATS
De Wikillano
Script de volcado de logs antiguos en AWSTATS
Este script vuelca todos los logs de apache del dominio que le pasamos como parámetro, una vez descomprmidos genera un log temporal desde el cual awstats actualiza sus estadísticas.
#! /bin/bash
DOMINIO=$1
if [ $DOMINIO != "" ] 2> /dev/null
then
#descomprimimos los logs del dominio en cuestion
cd /var/log/apache2
gunzip $DOMINIO-access.log.*
#contamos los logs antiguos
i=0
for fichero in ls -lt $DOMINIO-access.log.*
do
((i=i+1))
done
#creamos un log temporal
echo "" > access_tmp_awstats.log
#volcamos los logs al log temporal
j=1
while test $j -le $i;
do
echo volcando $DOMINIO-access.log.$i
cat $DOMINIO-access.log.$i >> access_tmp_awstats.log
((i=i-1))
done
#actualizando awstats
perl /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -config=$DOMINIO -LogFile=/var/log/apache/access_tmp_awstats.log -update
echo "Borrar el log temporal"
#rm access_tmp_awstats.log
#comprimimos los logs de nuevo
gzip $DOMINIO-access.log.*
else
echo ERROR se debe pasar el dominio como parametro ej: canigo.atosorigin.es
fi
