Banner 1

Espiar cambios en un fichero de log

null

Recientemente ando enfrascado en un pequeño proyecto personal (e informático, que de otras índoles tengo más ;) ) que dada su naturaleza (servicio web) requiere estar al tanto de los cambios que se producen en el fichero de registro de Apache.

Como me he sorprendido usando un comando (que explicaré en breve) que me permita desde la terminal ir visualizando los cambios sin tener que estar abriendo continuamente el fichero o haciendo un cat del mismo, y recordando que al principio usaba alguno de los dos métodos anteriores (con lo “cansados” que son), he optado por ofreceros la solución por si a alguno le viene bien.

Un poco de culturilla “general”

Un fichero de log o registro es un archivo en el que se van anotando todos los sucesos que ocurren en determinado sistema.

Ésta no es una gran definición (pero para hacernos una idea puede servir) puesto que depende del programa que haga uso del fichero: no es lo mismo un fichero de registro de una aplicación en su fase de desarrollo que el log de un keylogger ;)

Mostrando en pantalla los cambios de un fichero

A estas alturas nos dará igual que se trate de un fichero de registro como de cualquier otro fichero cuyo contenido cambie en el tiempo (imagina que estás redireccionando la salida de determinado comando a un fichero y te interesa ver lo que está escribiendo/haciendo).

Para poder ver los cambios en “tiempo real” bastará con lanzar

tail -f RUTA-AL-FICHERO

Sirva de ejemplo

tail -f /opt/joomla1.5/apache2/logs/error_log

Donde estoy espiando los cambios que se produzcan en el fichero error_log que se encuentra en el directorio /opt/joomla1.5/apache2/logs/ y que se correponde (podría haber puesto cualquier otro ejemplo) al servidor Apache que instalé en mi equipo con el stack de Bitnami para Joomla.

Marcando puntos de interés en el log

Aunque cada anotación en el fichero de log suele venir acompañada de la hora y fecha en la que se produjo
null

Cuando llevamos un rato trabajando con él puede resultar especialmente complicado (y cansado) encontrar dónde comienza la última anotación desde que miramos el fichero por última vez.

Una técnica que suelo utilizar es

  1. colocarme en la ventana en la que se muestran los cambios del fichero
  2. dejar pulsado un rato la tecla del guión (puedes usar la que más cómoda te resulte y/o guste ;) )
  3. pulsar el retorno de carro

NOTA: no tengas miedo que no se va a fastidiar el comando tail ni te vas a cargar el contenido del fichero de log.

Con ello conseguimos localizar rápida y fácilmente los cambios que se han producido: bastará con encontrar la última ristra de guiones y todo lo que esté debajo es nuevo :D
null

Conclusión

Método sencillo y rápido con el que conocer (conforme se producen) todos los cambios de un fichero.

Espero os sea de utilidad y evitéis (como sufrí en mis inicios) tener que estar abriendo y cerrando ficheros de log para ver los cambios.


FUENTE:http://andalinux.wordpress.com/2009/03/10/espiar-cambios-en-un-fichero-de-log/

No hay comentarios:

Powered by Bad Robot
Helped by Blackubay