2

在许多将 log4j 与邮件附加程序结合使用的服务应用程序中......

log4j.rootLogger=ERROR, MAIL
log4j.appender.MAIL=org.apache.log4j.net.SMTPAppender
log4j.appender.MAIL.BufferSize=1
log4j.appender.MAIL.SMTPHost=smtp.example.com
log4j.appender.MAIL.From=noreply@example.com
log4j.appender.MAIL.To=developer@example.com
log4j.appender.MAIL.Subject=Exception
log4j.appender.MAIL.layout=org.apache.log4j.PatternLayout
log4j.appender.MAIL.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss,SSS} %5r %-5p [%t] %c{2} - %m%n

.. 同一类型的多个异常发生并且可能持续到问题解决的可能性非常高。

有没有一种缓冲输出的方法,以便只在给定的时间间隔内发送邮件?

一个不错的解决方案是将异常按其发生的类型和类分组,但只需附加到本地日志并按时间间隔发送滚动日志就足够了。这个想法是不要从压力大的系统接收成百上千的错误报告,而是及时接收重要信息,然后不要为后续操作而烦恼。

有没有不实施的解决方案TriggeringEventEvaluator

4

1 回答 1

2

你可以试试这个:https ://github.com/reaktor/log4j-email-throttle

简单,但适用于缓冲。

于 2014-03-06T15:17:02.550 回答