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

(SOLUCIONADO) Re: Prerotate no funciona como debería



El día 14 de noviembre de 2014, 9:46, ZorroPlateado
<i32lelor.debian@gmail.com> escribió:
>
>> El 13/11/2014, a las 11:52, Maykel Franco <maykeldebian@gmail.com> escribió:
>>
>> Buenas, quiero que en el rotado de logs, antes de rotar, ejecuto
>> awstats(por ejemplo) en búsqueda del primer fichero no rotado, ejemplo
>> access.log.1 , con la opción de delaycompress.
>>
>> /var/log/remote/*.log
>> {
>>    daily
>>    rotate 365
>>    missingok
>>    create 0664 www-data adm
>>    compress
>>    delaycompress
>>    notifempty
>>    sharedscripts
>>    prerotate
>>           /usr/share/doc/awstats/examples/awstats_updateall.pl now
>> -awstatsprog=/usr/lib/cgi-bin/awstats.pl
>>    endscript
>>    postrotate
>>          /etc/init.d/rsyslog restart > /dev/null 2>&1 || true
>>    endscript
>>
>> }
>>
>> El problema es que cuando awstats busca el fichero
>> /var/log/remote/access.log.1 dice que no lo encuentra...Creo que lo
>> rota logrotate a través del cron daily, antes de que awstats pueda
>> leer y escanear el logs para generar la estadísticas...
>>
>> Si ejecuto a mano el comando para generar estadísticas de todos los dominios:
>>
>> /usr/share/doc/awstats/examples/awstats_updateall.pl now
>> -awstatsprog=/usr/lib/cgi-bin/awstats.pl
>>
>> Funciona sin problemas, por eso achaco el problema al rotado de log de
>> logrotate...
>>
>> Alguna idea de que estoy haciendo mal?
>>
>> Gracias de antemano.
>>
>> Saludos.
>>
>>
>> --
>> To UNSUBSCRIBE, email to debian-user-spanish-REQUEST@lists.debian.org
>> with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
>> Archive: [🔎] CAJ2aOA9H-7Fdhy=GD3eX=jOynDnFccbOjCPEiPRikUsChhOJFw@mail.gmail.com">https://lists.debian.org/[🔎] CAJ2aOA9H-7Fdhy=GD3eX=jOynDnFccbOjCPEiPRikUsChhOJFw@mail.gmail.com
>>
>
> Casi seguro que lo que te pasa es que awstas guarda la referencia del ionode
> y no del fichero, de modo que hay que hacer un truncate diferente del fichero.
>
> A mi me pasa lo mismo con openvpn, aquí te pego y fíjate en copytruncate :
>
> /var/log/openvpn.log
> {
>     rotate 15
>     daily
>     missingok
>     copytruncate
> }
>
>
>
>
> --
> To UNSUBSCRIBE, email to debian-user-spanish-REQUEST@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact listmaster@lists.debian.org
> Archive: [🔎] 98C61FF0-B593-45F4-BE20-DBB160C1667B@gmail.com">https://lists.debian.org/[🔎] 98C61FF0-B593-45F4-BE20-DBB160C1667B@gmail.com
>

Bien pensado lo de que awstats se fije en el inodo, aunque si lo miras
desde el punto de vista de aplicación eso sería fatal... Se usa mucho
awstats en el típico prerotate, y él debería de mirar el nombre del
fichero, no en el inodo donde se encuentra ese fichero...

Es más, lanzando logrotate -f .... funcionaba bien, no se quejaba de
que no existía...

Al final lo he puesto en el postrotate(aquí también cambia el fichero
de inodo y no se queja, funciona bien), porque el log está
constantemente escribiéndose sin parar y no voy analizar el log que
está en producción ej: ssl_access.log ya que no para de escribirse,
tenemos muchos vhost...Con la opción de delaycompress, ataco al ej_
ssl_access.log.1 (ya rotado, puesto que es postrotate) y listo.

Gracias no obstante.


Reply to: