Java 进程运行时写入日志文件
也许这是显而易见的,这就是为什么我找不到这个问题的答案…当程序运行时,我如何才能写入日志文件。我将log4japi与以下log4j2.xml一起使用:Java 进程运行时写入日志文件,java,log4j2,Java,Log4j2,也许这是显而易见的,这就是为什么我找不到这个问题的答案…当程序运行时,我如何才能写入日志文件。我将log4japi与以下log4j2.xml一起使用: <?xml version="1.0" encoding="UTF-8"?> <Configuration status="trace"> <Properties> <Property name="log-path">./logs/</Property>
<?xml version="1.0" encoding="UTF-8"?>
<Configuration status="trace">
<Properties>
<Property name="log-path">./logs/</Property>
</Properties>
<Appenders>
<RollingFile name="fileLogger" fileName="${log-path}/test-${date:dd-MM-yyyy}.log"
filePattern="${log-path}/test-%d{dd-MM-yyyy}%i.log">
<PatternLayout>
<pattern>[%-5level] %d{dd-MM-yyyy HH:mm:ss.SSS} [%t] %c{1} - %msg%n</pattern>
</PatternLayout>
<Policies>
<TimeBasedTriggeringPolicy interval="1" modulate="true"/>
<SizeBasedTriggeringPolicy size="100 MB"/>
</Policies>
<DefaultRolloverStrategy max="4"/>
</RollingFile>
<Console name="console" target="SYSTEM_OUT">
<PatternLayout pattern="[%-5level] %d{dd-MM-yyyy HH:mm:ss.SSS} [%t] %c{1} - %msg%n"/>
</Console>
</Appenders>
<Loggers>
<Logger name="net.wunds" level="all" additivity="true">
<appender-ref ref="fileLogger"/>
</Logger>
</Loggers>
/日志/
[%-5level]%d{dd MM yyyy HH:MM:ss.SSS}[%t]%c{1}-%msg%n
日志本身工作正常,我也可以在控制台中看到日志,但日志文件只有在程序终止时才会更新。有人能告诉我为什么会这样吗?我是dersperate 您应该在RollingFile上设置immediateFlush=true
请参见谢谢您的帮助。