Envio Errores por Correo en Symfony2

Una de las cosas que más requeria cuando estaba creando mi proyecto en Symfony2, era el tema de saber cuando ocurria un error lo enviara por email, pero de una manera legible y sobre todo con información completa. Luego de buscar y buscar varios Bundle me encontre con ElaoErrorNotifierBundle.

Este Bundle lo que hace es enviarte el error generado por correo pero te envia el mismo error que te muestra en DEV, es decir, con toda la información de donde se genero el error, porque archivos paso, quien genero el error, si existia una sesion, etc.

La instalación es bastante simple, incluimos en nuestros archivo composer.json la siguiente linea

 "elao/error-notifier-bundle" : "dev-master"

Ejecutamos nuestro update

php composer.phar update elao/error-notifier-bundle

Despues, agregamos a nuestro AppKernel.php

new Elao\ErrorNotifierBundle\ElaoErrorNotifierBundle(),

Y lo unico que nos faltaría sería agregarlo a nuestro archivo config.yml, en primera instancia lo agregaremos a este mismo (config.yml), ya que necesitamos hacer pruebas para ver si esta enviando o no los correos

elao_error_notifier:
from: %my_errores_mailer.from%
to: %my_errores_mailer.to%
handle404: true # default :  false
handlePHPErrors: true # catch fatal erros and email them
handlePHPWarnings: true # catch warnings and email them

Obviamente las variables entre %% las tengo declaradas en mi parameters.yml que son

my_mailer.class: AN\MiBundle\Services\Mail\MailManager
my_mailer.from:  contactar@hola.cl

Donde MailManager es una clase de correo personalizada que tengo.

Ahora generamos cualquier error en nuestro proyecto, por ejemplo escribiendo una URL que no exista, y aparte de mostrarlo en pantalla (ya que estamos en DEV) lo debería enviar por correo.

Si todo esta funcionando bien, entonces movemos nuestro codigo agregado al config.yml al archivo config_prod.yml, con esto le estamos indicando que solo cuando exista un error en Producción lo envie por correo.