2012-10-02 21 views
5

Estoy usando el SMTPAppender de log4j para enviarme un correo electrónico con cada excepción, pero realmente preferiría agregar correos electrónicos en un correo electrónico con un lote de errores en lugar de un correo electrónico por cada error.log4j SMTPAppender - Mensajes de error de correo electrónico

He visto la variable bufferSize pero parece ser para todo tipo de mensaje, no solo ERRORES.

¿Alguien sabe cómo podría lograr esto?

Gracias

Respuesta

0

Se puede utilizar: log4j.appender.myMail.evaluatorClass para implementar el TriggeringEventEvaluator, de esta manera se puede decidir mediante programación cuándo/qué mensajes para enviar. Ver: http://www.manning-sandbox.com/thread.jspa?threadID=9913 para más detalles.

+0

veo el ejemplo que hay que trabaja para enviar todos los mensajes, pero sólo me gustaría enviar ERROR y superior, y también agregarlos en un solo correo electrónico. Si es posible, ¿podría enviar una señal desde mi programa para enviar el correo electrónico? – user1628194

+0

El uso de un TriggeringEventEvaluator personalizado le permitirá enviar un correo electrónico personalizado en un contenido/nivel de mensaje de registro especial. – dan

+0

He logrado implementar esto ahora ... Establecí una variable al principio de mi programa en falso, y luego verdadero cuando el programa termina. Esta variable está marcada en isTriggeringEvent() ... el problema es que necesito escribir mi propio error después de establecer la variable en true solo para activar una comprobación de isTriggeringEvent(). ¿Hay alguna otra manera de despedir el correo electrónico? Sería bueno si pudiera reemplazar ese mensaje de error con un mensaje de información. – user1628194

0

Pruebe agregar/usar un Evaluador, p. más adelante en la configuración:

<evaluator type="log4net.Core.LevelEvaluator"> 
    <threshold value="ERROR"/> 
</evaluator> 

también establecer el atributo de pérdida de cierto, junto con el tamaño del búfer deseada:

<lossy value="true" /> 
<bufferSize value="xxxx" /> 
+1

Acabo de probar esto, pero aún recibo un correo electrónico por cada error que ocurre. – user1628194

Cuestiones relacionadas