Cómo ver los archivos de registro de CodeIgniter en el navegador

Al igual que cualquier otra página, ahora es posible leer los archivos de registro de CodeIgniter en el navegador. ¡Mi dulce bondad!

Comencé a usar CodeIgniter en mi codificación diaria después de unirme a una empresa increíble. La pila tecnológica de la compañía incluye PHP Framework, entre otros. Hasta ahora, he usado ( y sigo usando ) Laravel para crear algunas aplicaciones increíbles.

Laravel tiene un gran sistema de registro que es simple y elegante. Además, hay una biblioteca para mostrar los registros en el navegador. Poder leer los registros en el navegador es bueno para la depuración y el conocimiento de la aplicación. Especialmente en un entorno de producción.

Así que aquí estoy en el mundo de CodeIgniter y no pude encontrar una biblioteca equivalente para leer mis registros para depuración y comprensión.

Así que acepté el desafío y creé mi primer proyecto de código abierto del año: codeigniter-log-viewer.

Uso

Primero, agregémoslo a una dependencia. Podemos hacerlo ejecutando:

composer require seunmatt/codeigniter-log-viewer

Luego, podemos crear un controlador de aplicación CodeIgniter, LogViewerController.php :

private $logViewer;
public function __construct() { $this->logViewer = new \CILogViewer\CILogViewer(); //...}
public function index() { echo $this->logViewer->showLogs(); return;}

Lo que hicimos fue crear una instancia de $ logViewer en el constructor y luego hacer eco del resultado de showLogs () en la función index () .

El método showLogs () de codeigniter-log-viewer analizará el contenido de los archivos de registro en la aplicación / registros . Lo devolverá para mostrarlo en el navegador.

Finalmente, podemos mapear cualquier ruta de nuestra elección al índice () que creamos arriba. Esto se puede hacer agregando una entrada a la matriz $ route en application / config / routes.php:

$route['logs'] = "logViewerController/index";

Ahora podemos visitar / logs en el navegador y ver todos los archivos de registro allí. También es posible eliminar y descargar los archivos de registro.

Nota : Se recomienda utilizar una ruta protegida en el entorno de producción para evitar el acceso del público en general.

Cómo funciona

Internamente, la biblioteca lee el nombre de todos los archivos de registro que están disponibles en el directorio de registros predeterminado en una matriz y lo invierte. Si no se especifica ningún archivo en los parámetros de consulta de URL, el último archivo de registro se procesa para su visualización de forma predeterminada.

El procesamiento de un archivo de registro para su visualización implica leer su contenido, utilizando expresiones regulares para determinar el nivel de registro y la clase CSS y el icono de cada entrada.

También se comprueba cada entrada para saber si es una nueva línea de registro o una continuación de la línea anterior ( debido a un carácter de nueva línea ).

Finalmente, las entradas del registro se procesan en contenido HTML que luego se envía al navegador para su visualización.

El código fuente completo está disponible en Github si quieres jugar con él o adaptarlo para su uso en otros marcos.

Conclusión

Ahora es más fácil y rápido depurar la aplicación CodeIgniter, incluso en producción. Haga correr la voz entre amigos y colegas en el trabajo.

Quiero conocer su experiencia ( y opiniones ) de usar la biblioteca en la sección de comentarios. ¡Gracias!

Visita el enlace de Github