logback:RollingFileAppender

RollingFileAppender :滚动记录文件,先将日志记录到指定文件,当符合某个条件时,将日志记录到其他文件

ps:
<?xml version="1.0" encoding="UTF-8"?>
<configuration debug="true" scan="true" scanPeriod="1 seconds">

<contextName>webA</contextName>

<appender name="file" append="true" class="ch.qos.logback.core.rolling.RollingFileAppender">

<file>/logs/log_file.log</file>

<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<fileNamePattern>/logs/log_file_%d{yyyy-mm-dd.HH}.log</fileNamePattern>
<maxHistory>30</maxHistory>

<totalSizeCap>1GB</totalSizeCap>
</rollingPolicy>

<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
<maxFileSize>100MB</maxFileSize>
</triggeringPolicy>

<encoder>
<pattern>%cn%d.%M.%m%n</pattern>
</encoder>
</appender>

<root level="debug">
<appender-ref ref="file"/>
</root>

</configuration>

主要节点:
(1)file文件名,可选。若没有设定参考下面fileNamePattern名称生成文件
(2)rollingPolicy当日志发生滚动时,决定日志文件的行为。决定文件的重命名及路径的变更。必选
其中class属性决定出发哪套行为控制
fileNamePattern 滚动后产生的文件名规则
maxHistory日志保留时长,30天。超过天数后删除日志文件,同时配套目录一起删除。该参数不一定是指天数,也可以是月份数。具体参考滚动规则fileNamePattern,看是依赖什么进行滚动的
totalSizeCap最大日志量
(3)triggeringPolicy 滚动触发规则
maxFileSize单个文件最大量,如果达到这个最大量。日志有可能会出现报错,新日志无法存入。

--注意:%cn:获取上下文名称contextName。该用法是<encoder>标签的属性,只能在该标签使用。其他标签不能使用
rollingPolicy、triggeringPolicy 有不同的class实现类,具体每个实现类的用法及参数属性会有所不同。使用时注意区分

猜你喜欢

转载自www.cnblogs.com/jybky/p/12216615.html
今日推荐