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

Re: Rotación de logs



On Wed, 2004-06-02 at 17:08, "Sergio Ruiz Pérez - aladeweb.com" wrote:
> Erick Lopez Carreon wrote:
> >>Tengo un servidor web Apache en una Debian Woody. De cuando en cuando me 
> >>bajo los logs del servidor, ¿cómo podría hacer para "rotarlos"? No 
> >>quiero hacerlo de manera periódica, simplemente me interesa cerrarlos, 
> >>que se abra uno nuevo y comprimirlos para bajármelos a mi máquina. 
> >>Logrotate creo que no me sirve para este particular ... ¿alguna otra 
> >>manera que no sea parando el servidor y renombrando el fichero? Un 
> >>saludo y gracias,
> > 
> > man logrotate
> 
> El "problema" es que logrotate está pensado para funcionar como un 
> trabajo cron, y realmente no quiero eso. Simplemente quiero comprimir 
> los ficheros logs de acceso y bajármelos a mi máquina, para tenerlos 
> como copia de seguridad.
> 

logrotate lo puede invocar desde la linea de comandos para que rote los
logs forzadamente cunado desees, comprime los anteriores, una vez hecha
la rotacion tienes los archivos gz en /var/log y puedes copiarlos a
donde gustes.

> Otra cosa que estoy pensando es copiar todos los ficheros logs en un 
> directorio temporal y de ahí comprimirlo, así no interfiero con Apache. 
> El tema es que tengo varios sitios web, que cuelgan de home y dentro 
> tienen un directorio donde se guardan los log ... me gustaría copiar la 
> estructura, pero haciendo:
> 
> cp -r /home/*/logs/*.log
> 

Humm ... pues usa comandos entubados, por ejemplo un find de este tipo
te daria los nombres de los archivos de logs:

find home/ -name *.dat      
home/01/log/log01.dat
home/02/log/log02.dat
home/03/log/log03.dat


(suponiendo que los nombres de los archivos de logs se llamen de ese
estilo, si no pon el que uses)

Con esa salida la puedes mandar a otro comando que los empaquete y
comprima y despues de los envie con scp o de otro  modo.

Un ejemplo de este tipo de tuberisa (que aclaro no hace especificamente
lo que tu quieres, solo es con fines de ejemplo):

find home/ -name *.dat |xargs -i ls -lh {}


Como ves con este enfoque puedeslograr lo que tu quieres, y clarto ya
que tengas todo el procedimiento completo lo metes a un scrip y si
deseas lo compartes con user-sapnish :)

Saludos!



Reply to: