经过大量搜索后,我终于知道我们只能使用log4j.xml文件中的LevelMatchFilter来记录特定级别的消息(例如,在我的情况下只有INFO消息)...
这是代码..
<filter type="org.apache.log4j.varia.LevelMatchFilter">
<acceptOnMatch value="true" />
<levelToMatch value="INFO" />
</filter>
<filter type="org.apache.log4j.varia.DenyAllFilter" />
我的情况是我有一些像..
这样的软件包1)com.test.servlet
2)com.test.service
3)com.test.filter
4)com.test.model
现在我的要求是......
1) servlet package should print loggers from DEBUG level and above.
2) service package should print loggers from ERROR level and above.
3) rest of the package should print only INFO log messages.
我获得了第3点的代码,但我对如何将其应用于特定包装一无所知。
有人指导实现这一目标。
由于
答案 0 :(得分:0)
在log4j.xml
中添加以下内容并检查。
<logger name="com.test.servlet" additivity="false">
<level value="debug"/>
</logger>
<logger name="com.test.service" additivity="false">
<level value="error"/>
</logger>
<logger name="com.test.filter" additivity="false">
<level value="info"/>
</logger>
<logger name="com.test.model" additivity="false">
<level value="info"/>
</logger>
有关详细信息,请参阅Log4jXmlFormat。