gpt4 book ai didi

java - Log4J SMTP 摘要/聚合电子邮件?

转载 作者:行者123 更新时间:2023-11-30 07:36:30 25 4
gpt4 key购买 nike

我有一个 JBOSS 批处理应用程序,有时会在一分钟内将数百封电子邮件发送到同一个电子邮件地址,但会出现 Log4J 错误。这会导致 Gmail 出现问题,因为它表示我们为该 gmail 帐户发送电子邮件的速度太快了。

所以我想知道是否有一种方法可以基本上创建一个“摘要”或“聚合”电子邮件,将所有错误日志放在一封电子邮件中,并每 5 分钟发送一次。这样一来,我们可能每 5 分钟就会收到一封大电子邮件,但至少我们确实收到了电子邮件,而不是因为 gmail 服务器拒绝它而延迟了几个小时。

我读了this post这建议使用评估器来执行此操作,但我看不到在 Log4J xml 配置文件中是如何配置的。它似乎也无法将所有日志“消化”到一封电子邮件中。

有人做过吗?或者知道这是否可能?

最佳答案

来自(已存档)SMTPAppender Usage页:

设置这个属性

log4j.appender.myMail.evaluatorClass = com.mydomain.example.MyEvaluator

现在您必须创建求值器类并实现 org.apache.log4j.spi.TriggeringEventEvaluator 接口(interface),并将此类放在 log4j 可以访问的路径中。

//Example TriggeringEventEvaluator impl

package com.mydomain.example;

import org.apache.log4j.spi.LoggingEvent;
import org.apache.log4j.spi.TriggeringEventEvaluator;

public class MyEvaluator implements TriggeringEventEvaluator {

public boolean isTriggeringEvent(LoggingEvent event) {
return true;
}

}

您必须在此方法中编写评估器逻辑。

关于java - Log4J SMTP 摘要/聚合电子邮件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3544269/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com