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

Ingeniero, enfocado en la familia y el cliente, emprendiendo y capitalizando lo aprendido por años.

Dedico algo de tiempo a compartir con ustedes mis experiencias sobre informática y tecnología porque en mas de una ocasión fui yo quien aprendí de otros a través de sitios como este.

2 Comments

  1. smartlog

    Reply

    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.

Leave a comment

Your email address will not be published. Required fields are marked *

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