Visualizar logs en Laravel utilizando LogViewer

Visualizar logs en Laravel utilizando LogViewer
  • Eborio Linárez
  • January 20, 2018
  • 2018-02-16 03:12:47
  • 0

Los logs son registros que va escribiendo una aplicación cuando ocurren ciertos eventos, por ejemplo, una excepción al ejecutarse alguno de los métodos. Generar logs es una forma muy útil de depurar una aplicación, verificar datos de entrada/salida que son difíciles ver de otra manera, etc.

Laravel por defecto viene configurado para escribir logs en el directorio storage/logs, sin embargo no posee una herramienta que permita visualizarlos de una manera sencilla para ser analizados. En este artículo aprenderemos a utilizar un paquete llamado LogViewer creado por ARCANEDEV el cual nos facilitará la tarea de leer los logs.

LogViewer se instala mediante composer, por lo tanto dentro de un un proyecto Laravel ejecutamos el siguiente comando en la consola:

composer require arcanedev/log-viewer

Esto instalará la versión de LogViewer adecuada para la versión de Laravel en la que se encuentre desarrollada nuestra aplicación.

Una vez finalizada la instalación debemos configurar el paquete.

Si utilizamos una versión inferior a Laravel 5.5 debemos acceder al archivo config/app.php y en el arreglo providers agregar el llamado al service provider de LogViewer como se muestra a continuación:

'providers' => [
    ...
    Arcanedev\LogViewer\LogViewerServiceProvider::class,
],

En Laravel 5.5 no es necesario configurar el service provider ya que lo hace automáticamente.

Luego debemos publicar los archivos necesarios para el funcionamiento del LogViewer lo cual conseguimos con este comando:

php artisan log-viewer:publish

El comando publicará las vistas del paquete y el archivo de configuración en config/log-viewer.php.

En dicho archivo se pueden configurar una serie de aspectos del paquete, desde la ubicación de los logs, hasta los íconos a utilizar y colores de la interfaz. Para mayor detalle acerca de la configuración puedes acceder al repositorio del paquete e ir a la sección Configuration (la URL directa hacia la sección se encuentra en los links al final del post).

Ahora en el archivo .env agregamos lo siguiente en caso que no lo tengamos ya configurado APP_LOG=daily.

Con esto logramos que Laravel cree un archivo de log cada día transcurrido en lugar de volcar todos los logs en un solo archivo. Esto es obligatorio para el funcionamiento de LogViewer.

En el archivo .env deberían tener también configurado APP_LOG_LEVEL=debug lo cual indica cual es el nivel mínimo de severidad de los logs. Los posibles valores de configuración son: debug, info, notice, warning, error, critical, alert y emergency.

Los niveles se severidad se evalúan de izquierda a derecha en la lista indicada. Es decir, al estar configurado en debug se escribirán todos los tipos de logs. Por otra parte, si lo cambiamos a error se escribirán los logs de los tipos error, critical, alert y emergency.

Ahora solo debemos acceder al dirección http://dominio.com/log-viewer y visualizaremos el dashboard de LogViewer como se ve en la siguiente imagen:

Una vez en la interfaz de LogViewer tendrás acceso al menú. En el menú debes hacer clic sobre la opción Logs y visualizarás el listado de logs de tu aplicación de la siguiente forma:

Esta URL es configurable en config/log-viewer.php y también podemos aplicarle middlewares. Espero haya sido de tu agrado el artículo y comiences a sacarle provecho a los logs de tu aplicación Laravel utilizando LogViewer. Cualquier duda, acotación o mejora te agradezco la dejes en los comentarios y si te resultó de ayuda el post compártelo en tus redes sociales.

Comparte en las redes sociales

Comentarios

Aún no hay comentarios. Sé el primero en comentar.

Deja un comentario