我在我的Web应用程序中使用Log4j2(RollingFile
和路由)在一些单独的日志文件中记录特定于应用程序的日志。 log4j2.xml
文件与WAR文件捆绑在一起。
生成日志文件,并且日志生成正常。一段时间后,它会停止将日志写入现有文件,也无法创建新的文件夹/文件。
重新启动时,一切都恢复正常工作,这只是一段时间了。 尝试过监控,无法找出任何特定模式或模拟它的步骤。
<Configuration status="error" name="logger">
<Properties>
<Property name="logpath">path_to_log_file</Property>
</Properties>
<Appenders>
<Routing name="RoutingUserLogFile">
<Routes pattern="$${ctx:user}/">
<Route>
<RollingFile name="UserLogFile" fileName="${logpath}/${ctx:user}/MyLogFile.log" filePattern="${logpath}/${ctx:user}/%d{dd-MM-yyyy}-MyLogFile-%i.log.gz">
<PatternLayout>
<Pattern>%d %p %-40C{1.} %m%n</Pattern>
</PatternLayout>
<Policies>
<TimeBasedTriggeringPolicy interval="1" modulate="true" />
<SizeBasedTriggeringPolicy size="4 MB" />
</Policies>
</RollingFile>
</Route>
</Routes>
</Routing>
</Appenders>
<Loggers>
<Root>
<level value="debug" />
<AppenderRef ref="RoutingUserLogFile" level="debug" />
</Root>
</Loggers>
</Configuration>