La importancia de los LOG en apache

Los archivos log son sin duda el punto de partida para poder solucionar algun tipo de problema especifico de cualquier demonio o servicio de alta o baja disponibilidad. En apache y sobre todo cuando se trata de sitios de gran demanda en cuanto a visitas, los log van creciendo en forma apresurada y de manera descontrolada. En casos extremos, como lo que me paso hace poco, despues de casi 8 meses el log de mi sitio alcanz贸 los 150 MB 馃槙 , tama帽o nada despreciable si es que conjuntamente en el servidor hay herramientas de analisis de LOG como awstats.

No se si apache por si mismo tiene capacidades de autolimitar el tama帽o de los log, (SI alguien sabe como, aporte aca 馃榾 )

Una forma media aut贸ctona de controlar el tama帽o de los LOG ser铆a haciendo uso de la compresion y el CRON para programarlas en forma periodica.
Un SCRIPT podria ser:

Creamos un fichero llamado logs.sh en el directorio (podria ser cualquiera) /etc/init.d

En su interior ponemos lo siguiente

#!/bin/sh
ruta=/var/log
nombre=rodrigo.zamoranelson.cl.log
gzip -9f $ruta/$nombre
touch $ruta/$nombre
chown www-data $ruta/$nombre && chgrp www-data $ruta/$nombre

Esto deberia bastar para crear un fichero comprimido de un log especifico, con una compresion gzip maxima y crear un log nuevo en blanco modificable y utilizable por apache

Programacion con CRON

dentro del archivo /etc/cronab, basta agregar

0 0 * 1 * root /bin/sh /etc/init.d/logs.sh

Luego ejecutar /etc/init.d/cron restart

Esto deberia ejecutar la compresi贸n del log el primer dia de cada mes a las 0:00 Hrs

Subscribe
Notify of
guest

This site uses Akismet to reduce spam. Learn how your comment data is processed.

2 Comments
Inline Feedbacks
View all comments
Dannylost
Dannylost
15 years ago

Muy cierto …. para eso existe el logrotate

smartlog
smartlog
16 years ago

En los sistemas *NIX, existe un servicio llamado logrotate que suele encontrarse dentro de /etc, donde existen ficheros de configuraci贸n para apache, mysql, samba, etc.. en los cuales puedes configurar el tama帽o del mismo, o bien que llegado a un n煤mero X de logs, se rote. Creo que no existe una tarea programada para hacerlo , sin贸 cuando el servidor cree conveniente.
Espero haber aportado mi granito de arena.

2
0
Would love your thoughts, please comment.x
()
x