GoAccess. Procesa los log files de Apache, Nginx y más

Escrito por:
Fecha: 2014-06-29 16:22:35 00:00

Quien quiera que haya hospedado su propia página web de seguro ha estado pendiente de las estadísticas de visitas a su página. Hoy en día tenemos muchas opciones para ello, Google Analytics es probablemente la herramientas más utilizada, Piwik (En Ingles) es una alternativa. Estas herramientas requieren de un código agregado a cada una de las páginas que al cargarse disparan un contador ya sea en el server de Piwik o los de Google.

Otro modo de hacerlo es "a la antigua" revisando los logs del servidor de páginas web. Ya sea que estén usando Apache, Nginx o cualquier otro servidor, o incluso si tienen Squid o Varnish como proxy reverso estos dejan un registro de cada visita en un archivo. Analizar este archivo nos permite saber más sobre las visitas a nuestra página.

Herramientas para analizar estos archivos de registro existen muchas, siendo webalizer y AWstats las más conocidas, de todos modos hace unos días he descubierto otra opción que me ha gustado mucho. Esta es: GoAccess

Lo que me ha gustado de GoAccess es que es una herramienta sencilla de utilizar que entrega reportes sencillos, que pueden ser visualizados directo en la terminal, y es así como debe hacerse por defecto. De todos modos también tiene la opción de guardar los resultados en archivos JSON, CSV o HTML

Instalar GoAccess

Ubuntu

sudo apt-get install goaccess

Mac OS X

brew install goaccess 

Formas de utilizar GoAccess

Una vez instalado su utilización es muy fácil.

goaccess -f [apache.log]

Si gustas de más detalle, como ser nombres de servidores en lugar de IPs y la lista de agentes, puedes usar esta opción.

goaccess -f [apache.log] -a -d > reporte.html

Además en la línea de arriba se esta enviando todo el reporte a un archivo html, que luego puedes abrir con tu explorador.

Si gustas algo automatizado puedes agregar esta linea al crontab de tu servidor.

00 01 * * 2 goaccess -f [logfile.log.1] -a -d > report_$(date +\%d\%m\%Y).html

Debes arreglar el comando de arriba para que apunte al log de la semana pasada y para que la salida, este en algún directorio de tu servidor web. El comando se ejecutará cada martes sobre el archivo de la semana pasada.

Datos extra

Captura de pantalla

GoAccess

Página del proyecto (en inglés)

GoAccess