lunes, febrero 16, 2009

Una de scripts (I)

Todo sistema unix suele generar un montón de logs por defecto (todo depende de como lo configuremos, claro). Esos archivos nunca los miramos y sin embargo nos pueden dar mucha, pero que mucha información cuando hay problemas.

A veces ocurre que un log contiene mucha información, cientos de líneas que indican que va todo bien... y casi oculta una linea nos indica un error. En algunos casos vamos buscando directamente el error, que ya conocemos por haberlo tratado antes o porque intuimos cual puede ser. Para esos vistazos rápidos, viene muy bien tener un log coloreado, y navegando encontré un comando que es muy util: ccze. Con este comando podemos colorear los logs, y con este pequeño script podemos leer los logs de una forma más sencilla:

Creamos un fichero llamado "viewlog" y le damos los ficheros de ejecución tras editarlo:

------------------------------------------------
#!/bin/sh
if [ $# = 0 ]; then
echo "Usage: viewlog file"
else
if test -f $1 ; then
ccze -A < $1 | less -R
else
echo "File does not exist"
fi
fi
------------------------------------------------

La opción -A fuerza a no usar las librerias curses. Pasamos la salida al comando less y así evitamos que nos muestre todo de una.
No recuerdo de donde encontré información sobre este comando, pero lo inclui en este script y tengo comprobado que es muy útil, en especial cuando hay problemillas con las sesiones gráficas.

El comando colorea las palabras y salta a la vista enseguida palabras como "error" o similares :)

No hay comentarios: