项目场景:
我是在配置logback.xml碰到的问题
问题描述:
想要配置日志的名称随着日志大小到达上限及新增一个文件。发现配置的class也有着很大的区别比如
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!--日志文件输出的文件名-->
<FileNamePattern>${LOG_HOME}/application.%d{yyyy-MM-dd}.log</FileNamePattern>
<!--日志文件保留天数-->
<MaxHistory>30</MaxHistory>
</rollingPolicy>
这个里面的日志名字只能配置固定名称没办法加上%i。
<rollingPolicy class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
<fileNamePattern>${LOG_HOME}/logbackCfg3.%d{yyyy-MM-dd}.%i.log</fileNamePattern>
<maxFileSize>1000MB</maxFileSize>
<MaxHistory>60</MaxHistory>
</rollingPolicy>
顶上这个class里面才可以配置%i,让日志文件名变动。
<!-- 日志文件的文件最大大小和文件总数目 -->
<rollingPolicy class="ch.qos.logback.core.rolling.FixedWindowRollingPolicy">
<fileNamePattern>error_%i.txt</fileNamePattern>
<minIndex>1</minIndex>
<maxIndex>10</maxIndex>
</rollingPolicy>
这个代码块里面的class可以配置生成文件的最大最小数量(网上找的,并没成功实现)
原因分析:
我试了一下,第一个和第二个代码块,你会发现除了类不一样其他的都一样,但是只把class里面粘贴过去,还是报错,必须将整个代码块完整粘贴才能成功,就非常奇怪??
如果有大佬知道为什么请给我解答,谢谢!