首页 > 解决方案 > log4j.xml 配置未将日志存储到文件

问题描述

我有以下 log4j.xml 配置文件,但看不到存储在指定文件中的日志数据(在我的文档文件夹中:)Documents/debug.log

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE log4j:configuration SYSTEM "log4j.dtd">
<log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"
   debug="true">

   <appender name="applicationLogFile" class="org.apache.log4j.RollingFileAppender">
      <param name="DatePattern" value="'.'yyyyMMdd'.log'" />
      <param name="File" value="Documents/debug.log" />
      <param name="threshold" value="TRACE" />
      <param name="MaxNumberOfDays" value="90"/>
      <param name="CompressBackups" value="TRUE"/>
      <layout class="org.apache.log4j.PatternLayout">
         <param name="ConversionPattern" value="%d{ISO8601} %-5p [%c] %m%n" />
      </layout>
   </appender>
  
   <logger name="APP_VERSION_LOGGER">
      <appender-ref ref="applicationVersionFile" />
   </logger>

   <logger name="org.springframework">
      <level value="WARN" />
   </logger>
  
   <root>
      <priority value="DEBUG" />
      <appender-ref ref="applicationLogFile" />
      <appender-ref ref="bmcAlertFile" />
   </root>

</log4j:configuration>

如何将日志数据发送到Documents计算机上的目录?我正在使用log4j-core版本2.13.3。是的,我查看了文档,但我仍然看不到我的日志数据的去向。

标签: javalogginglog4j

解决方案


你在这里的台词说:

<param name="File" value="Documents/debug.log" />

它将Documents在您的项目根级别创建一个具有名称的文件夹,并且日志将在那里。

如果你想把它们放在你机器上的特定位置,那么你需要提供完整的路径名。前任。

<param name="File" value="/Users/myUser/Documents/debug.log" />

推荐阅读