Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/332.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Log4j没有将日志写入文件_Java_Logging_Log4j - Fatal编程技术网

Java Log4j没有将日志写入文件

Java Log4j没有将日志写入文件,java,logging,log4j,Java,Logging,Log4j,Log4j.xml <appender name="U_R_A" class="org.apache.log4j.DailyRollingFileAppender"> <param name="Threshold" value="fatal" /> <param name="Append" value="true" /> <param name="File" value="/logs/log_file.log" />

Log4j.xml

  <appender name="U_R_A" class="org.apache.log4j.DailyRollingFileAppender">
    <param name="Threshold" value="fatal" />
    <param name="Append" value="true" />
    <param name="File" value="/logs/log_file.log" />
    <param name="DatePattern" value="'.'yyyy-MM-dd-HH" />
    <layout class="org.apache.log4j.PatternLayout" />
   </appender>

  <logger name="U_Q_R" additivity="false">
    <!-- Overridding from fatal to error -->
    <level value="ERROR" />
    <appender-ref ref="U_R_A" />
  </logger>
Log4j没有将错误写入文件log\u file.log
如果我将阈值更改为error,则它正在将内容写入文件。请帮助我理解。

记录器有级别
错误
,它不会覆盖附加器的阈值

日志记录器将接受
>=ERROR
的日志消息,因为您已将级别定义为
ERROR
。然后,您的记录器只定义了一个appender,其阈值为
致命
,这意味着appender将处理级别为
=致命
的日志。这就是为什么
error
level日志不会保存在日志文件中的原因


当您更改
阈值时,请参见此链接:谢谢,这真的很有帮助。
public class Main{
  private static Logger logger = Logger.getLogger("U_Q_R");
  public static void main(String[] args) {
    DOMConfigurator.configure("log4j.xml"); 
    logger.error("Some error happened!!");
  }
}