[英]log4j fatal level logging required
This is my log4j.xml. 这是我的log4j.xml。 i want only FATAL
log from package com.xyz.rest
should print to /LOGS/Acb/d.log
file. 我只希望来自软件包com.xyz.rest
FATAL
日志应该打印到/LOGS/Acb/d.log
文件。
But i can see Debug
level logs as well in file. 但是我可以在文件中看到Debug
级别的日志。 Why log4j is printing Debug
level logs from com.xyz.rest
package. 为什么log4j从com.xyz.rest
软件包中打印Debug
级别的日志。
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/" debug="false">
<appender name="Def" class="org.apache.log4j.RollingFileAppender">
<param name="File" value="/LOGS/Acb/d.log"/>
<param name="MaxFileSize" value="10000KB"/>
<param name="MaxBackupIndex" value="10"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="%d [%t] %-5p [%c{1}] %m%n"/>
</layout>
</appender>
<logger name="com.xyz.rest">
<logger value="fatal"/>
<appender-ref ref="Def"/>
</logger>
</log4j:configuration>
Its because with the following code you are adding another log level
to your com.xyz.rest
package which is not removing the debug
level which your package inherits from parents: 这是因为使用以下代码将新的日志level
添加到com.xyz.rest
包中,而这并没有删除该包从父级继承的debug
级别:
<logger name="com.xyz.rest">
<logger value="fatal"/>
<appender-ref ref="Def"/>
</logger>
What you need is to set the additivity
to false so that rather than adding another log level, you will set the log level: 您需要将可additivity
设置为false,以便您无需设置其他日志级别,而将日志级别设置为:
<logger name="com.xyz.rest" additivity="false">
<logger value="fatal"/>
<appender-ref ref="Def"/>
</logger>
More information can be found here . 可以在此处找到更多信息。
Not sure but it might also be necessary to enclose the <logger></logger>
tags in <loggers></loggers>
tag 不确定,但是可能需要将<logger></logger>
标记括在<loggers></loggers>
标记中
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.