繁体   English   中英

Log4J特定文件的特定级别 - appender

[英]Log4J specific levels to specific files - appenders

我正在为我的一个项目使用log4j,我知道可以为每个appender设置阈值。

我的目标是仅将INFO消息记录到文件中,而仅将ERROR消息记录到另一个文件中。

使用阈值的问题是,如果我将一个appender阈值设置为INFO而另一个设置为ERROR,那么当我记录一条ERROR消息时,该消息会转到两个文件(appenders)。

我怎样才能做到这一点?

提前致谢

我们使用不同级别的不同记录器:

log4j.appender.XXXTracking.filter.LevelToMatch = INFO

使用选项filter.LevelToMatch,您可以编写所需的级别。 这在log4j.properties中

您将要使用org.apache.log4j.varia.LevelMatchFilter

<filter class="org.apache.log4j.varia.LevelMatchFilter">
            <param name="LevelToMatch" value="ERROR" />
            <param name="AcceptOnMatch" value="true" />
        </filter>

谢谢你的回应,

我错误的是我试图在属性文件上定义过滤器。 由于使用它仅支持XML配置文件,因此我已更改为XML文件。

为了得到我需要的东西,我还必须添加一个DenyAllFilter过滤器类型:

        <filter class="org.apache.log4j.varia.LevelMatchFilter"> 
            <param name="LevelToMatch" value="INFO" /> 
            <param name="AcceptOnMatch" value="true" />                        
        </filter>
        <filter class="org.apache.log4j.varia.DenyAllFilter" />

谢谢你的帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM