Añadir en las trazas las queries de base de datos ejecutadas en Laravel 8

Sigo investigando Laravel 8 y buscando funcionalidad a la que estoy acostumbrado en otros frameworks. Vengo del mundo de C++ y Java, por lo que me tengo que adaptar e investigar cómo resolver en este framework de PHP los problemas comunes que voy encontrando.

Uno de ellos es saber exactamente qué query está ejecutando el framework. Eloquent parece bastante potente pero soy poco amigo de dejar hacer demasiadas cosas al framework y me gusta siempre tener el control, o por lo menos, saber exactamente qué está haciendo “por debajo”. Muy recomendable el artículo “Odio los frameworks” del grandísimo Javi Santana para saber de qué estoy hablando.

Así que, continuando con la anterior entrada en la que customizaba los logs de Laravel, en este caso quiero ver en traza qué query está ejecutando en cada momento.

Sigue leyendo Añadir en las trazas las queries de base de datos ejecutadas en Laravel 8

Trazas o logging customizado en Laravel 8

Sigo trasteando con Laravel 8 para un nuevo proyecto que he arrancado con dos amigos y una las cosas más curiosas es cómo organiza la gestión de los logs. Las trazas son básicas para saber qué está pasando con una aplicación, sobretodo cuando te encuentras con algún comportamiento inesperado o un problema como ya expliqué en un artículo anterior.

Laravel utiliza Monolog (ver código fuente en GitHub) para el formateo de los logs y el formato por defecto sería:

storage/logs/laravel.log

[2020-12-28 00:09:59] local.INFO: mi traza de log

En mi caso, busco:

  • Una traza que incluya los milisegundos, ya que quiero saber en qué parte del procesamiento se pierde más tiempo
  • No me interesa el nombre del canal (en este caso, “local.INFO”)

Sigue leyendo Trazas o logging customizado en Laravel 8