公司的基于springMVC的框架,想按照info级别、error级别生成不同的日志文件,以不压缩方式保存30天日志,用的log4j2.xml配置文件。我按照网上教程,按顺序对不同级别的日志进行过滤,但是我这里 filePattern中的-%i计数每次都是1,然后生成一个新文件也是1。为了测试方便,我把粒度调整为分钟,interval=1,然后max=30,为什么生成的文件不是-1,-2,-3,一直到-30,然后覆盖呢
<RollingFile name="DebugFile" fileName="${LOG_HOME}/debugFile/debugFile.log"
filePattern="${LOG_HOME}/debugFile/debugFile-${LOG_NAME}-%d{yyyy-MM-dd-HH-mm}-%i.log"
append="true">
<Filters>
<ThresholdFilter level="info" onMatch="DENY" onMismatch="NEUTRAL"/>
<ThresholdFilter level="debug" onMatch="ACCEPT" onMismatch="NEUTRAL"/>
</Filters>
<Policies>
<TimeBasedTriggeringPolicy interval="1"/>
</Policies>
<PatternLayout pattern="%date{yyyy-MM-dd HH:mm:ss.SSS} %level [%thread][%file:%line] - %msg%n"/>
<DefaultRolloverStrategy max = "30"/>
</RollingFile>
运行的结果是以下这样的
所以请求指点迷津,感激不尽。