Symfony y FirePHP

Si quieres utilizar FirePHP para hacer log de mensajes o variables en la consola de Firebug y utilizas Symfony como framework, no tienes más que escribir lo siguiente en tu controlador, sin necesidad de descargar ninguna librería o bundle extra ni tocar una sola línea de configuración:

$this->get('logger')->info('Mi mensaje');

Al llamar a $this->get('logger') estamos pidiendo al contenedor de inyección de dependencias que nos devuelva el objeto que implementa el servicio de logging, que en la distribución estándar de Symfony se hace por defecto usando la librería Monolog. Esta librería, como podemos ver en app/config/config_dev.xml, viene configurada para registrar los mensajes de nivel info en el entorno de desarrollo usando FirePHP.

monolog:
    handlers:
        main:
            type:  stream
            path:  %kernel.logs_dir%/%kernel.environment%.log
            level: debug
        firephp:
            type:  firephp
            level: info

Por otro lado, si Google Chrome es tu navegador preferido y utilizas ChromePHP para enviar los mensajes de log a la consola de desarrollo, basta con que sustituyas “firephp” por “chromephp”, siempre que uses Symfony 2.1.

Comentarios
  1. Manu

    Muy útil, raro que nadie te haya agradecido esto.

    Responder

  2. Felponk

    Muy agradecido, muy agradecido, muy agradecido!!!… habra algo asi para Codeigniter???

    Responder

  3. Pablo

    Duda existencial: ¿Como llamo al logger desde dentro de un repositorio para usar monolog/FirePHP? ¿Por inyección de dependencias tal vez?

    Responder

    • Anónimo

      yo siempre lo paso como parámetro. creo que al ser algo de doctrine no hace tanto uso de la inyección de dependencias

      Responder

  4. Muy útil el programa de verdad que ayuda bastante.

    Responder

Deja un comentario