我有以下 log4j2.xml 文件:
<?xml version="1.0" encoding="UTF-8"?>
<configuration status="OFF">
<appenders>
<RollingFile name="testLog" fileName="test.log" filePattern="" append="false">
<PatternLayout pattern="[%t] %-5level - %msg%n%n"/>
<SizeBasedTriggeringPolicy size="5mb" />
</RollingFile>
</appenders>
<loggers>
<logger name="TestsLogger" level="trace" additivity="false">
<appender-ref ref="testLog"/>
</logger>
<root level="debug">
<appender-ref ref="testLog"/>
</root>
</loggers>
</configuration>
我怎样才能修改这个配置,这样
- 在达到 5mb 限制后,会创建一个新文件,而不是一遍又一遍地覆盖相同的日志文件。最好有像 test1.log、test2.log 等等。
如何限制在 1. 中创建的部分日志文件的数量?我想要实现的是如下方案:
creating test1.log [present log files: test1.log] test1.log - 5mb limit reached creating test2.log [present log files: test1.log, test2.log] test2.log - 5mb limit reached creating test3.log [present log files: test2.log, test3.log] test3.log - 5mb limit reached creating test4.log [present log files: test3.log, test4.log] and so on
有谁知道,如何实现这样的目标?当然,如果仅使用 log4j2 就可以实现类似的功能,那就太好了。但是也许有一种方法可以将 log4j2 与某种外部程序结合起来,该程序将与主 Java 应用程序一起运行并删除多余的日志文件,同时保持最后两个日志文件完好无损。因此,如果有人至少对 1. 提出建议,那可能已经是我正在寻找的东西了。因为我也许可以为第二部分编写程序。当然,如果第二部分也可以使用 log4j2 完成,那将是非常棒的。