我使用log4j2
而不是slf4j
,并在磁盘空间为空时遇到问题。
我的配置是:一切都是异步记录器和 RollingFile appenders,大小触发器 20mb 。
当空磁盘空间发生时,似乎应用程序刚刚卡住,没有创建日志,显然,但API调用也没有响应。
建议?
答案 0 :(得分:0)
这就是我所做的。 这个想法是包含log4j2使用的总可能磁盘空间,就像JVM的最大堆一样。所以我使用了基于大小的策略以及所有appender的最大翻转。
如果它按预期工作,那么你不应该在每个appender上使用超过10GB,因为log4j2也会对翻转的文件使用一些压缩。
例如
<Policies>
<SizeBasedTriggeringPolicy size="1 GB" />
...
<Policies>
...
<DefaultRolloverStrategy max="10"/>