3

由于我发现 log4j 1.2.x 存在一些性能问题,我尝试迁移到 log4j2。

现在我遇到了一个我找不到解决方案的问题。我必须将用于 log4j 1.2.x 的配置文件重写为与 v2 兼容的配置文件。当我到达一个名为“errorHandler”的附加程序内部的属性时,就会出现问题。

这是 errorHandler 在我的 log4j 1.2.x 上下文中出现的位置:

<appender name="CONSOLE" class="org.apache.log4j.ConsoleAppender">
    <errorHandler class="org.jboss.logging.util.OnlyOnceErrorHandler"/>
    <param name="Target" value="System.out"/>
    <param name="Threshold" value="WARN"/>
    <layout class="org.apache.log4j.PatternLayout">
        <param name="ConversionPattern" value="%d %-5p [%t] %c - %m%n"/>
    </layout>
</appender>

谁能告诉我,在 log4j2 for errorHandler 中哪个是类似的属性(如果存在的话)?或者,log4j2 中的另一个替代方案会给我完全相同的结果?

提前致谢。

4

1 回答 1

2

Log4j2 提供了一个FailoverAppender,如果主 appender 失败,它将调用辅助 appender。您可以拥有一个辅助附加程序列表,log4j 将尝试所有这些附加程序,直到一个成功。

请注意,在使用 FailoverAppender 时,您应该使用ignoreExceptions=false.

于 2014-05-16T14:13:48.943 回答