[英]How to log specific class with different levels to different appenders with LOG4J
[英]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.