这是我的示例Spring启动应用程序的log4j.xml内容: -
http://jakarta.apache.org/log4j/'>
<appender name="consoleAppender" class="org.apache.log4j.ConsoleAppender">
<param name="Threshold" value="debug"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="[%t] %-5p %c{1} - %m%n" />
</layout>
</appender>
<appender name="generalLogFileAppender" class="org.apache.log4j.ConsoleAppender">
<param name="AppenderImplementationClass" value="org.apache.log4j.DailyRollingFileAppender" />
<param name="FileBase" value="/app/info.log" />
<param name="DatePattern" value="yyyy-MM-dd" />
<param name="Threshold" value="debug"/>
<param name="Append" value="false"/>
<layout class="org.apache.log4j.PatternLayout">
<param name="ConversionPattern" value="[%t] %d{M/d/yy HH:mm:ss:SSS} %-5p %c{1} - %m%n" />
</layout>
</appender>
<root>
<level value="debug" />
<appender-ref ref="consoleAppender" />
<appender-ref ref="generalLogFileAppender" />
<appender-ref ref="errorLogFileAppender" />
</root>
我使用以下命令运行容器: -
docker run -it --rm --name testapp -v&#34; / test / application / region / data / user / dockerlogs&#34;:/ app testapp
日志没有写入。我做了docker inspect并且可以看到该位置已正确挂载为/ app在容器内。我甚至可以使用/ app / filename读取文件,但log4j日志不会被写入。