简体   繁体   English

Log4j2 将登录到控制台,而不是 log.txt 文件

[英]Log4j2 will log to console, but not log.txt file

Below is my log4j2.xml file:下面是我的 log4j2.xml 文件:

<?xml version="1.0" encoding="UTF-8"?>
<configuration status="WARN">
  <appenders>
    <Console name="Console" target="SYSTEM_OUT">
      <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
    </Console>

    <File name="log" fileName="logs/log.txt">
        <PatternLayout pattern="%d{yyyy-mm-dd HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
    </File>             
  </appenders>

  <loggers>     
    <root level="debug">
      <appender-ref ref="Console" level="info"/>
      <appender-ref ref="log" level="info"/>
    </root>    
  </loggers>
</configuration>

I would like to print whatever I see on the console into my logs.txt file as well.我也想将我在控制台上看到的任何内容打印到我的 logs.txt 文件中。
What am I doing wrong?我究竟做错了什么?

I think You are missing the levelrangefilter tag .我认为您缺少 levelrangefilter 标签。

<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="WARN" monitorInterval="30">



<Appenders>

    <Console name="Console" target="SYSTEM_OUT">
  <PatternLayout pattern="%d{HH:mm:ss.SSS} [%t] %-5level %logger{36} - %msg%n"/>
</Console>

    <RollingFile name="log" fileName="logs/log.txt"
        filePattern="logs/log.txt.%i" >
        <LevelRangeFilter minLevel="FATAL" maxLevel="ALL" onMatch="ACCEPT" onMismatch="DENY"/>

    </RollingFile>


</Appenders>


   <loggers>     
    <root level="debug">
      <appender-ref ref="Console" level="info"/>
      <appender-ref ref="log"/>
    </root>    
  </loggers>

</Configuration>

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

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