关于logback 的日志分割的大小问题

关于logback 的日志分割的大小问题

 <appender name="FILE"
              class="ch.qos.logback.core.rolling.RollingFileAppender">
        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
            <fileNamePattern>${LOG_HOME}/output.%d{yyyy-MM-dd}.log</fileNamePattern>
            <maxHistory>7</maxHistory>
        </rollingPolicy>
        <encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
            <pattern>${ENCODER_PATTERN}</pattern>
        </encoder>
    </appender>

上面试分割不出来的日志配置

logback日志
经过阅读这篇博客后修改怕配置文件后,可以分割日志了
SpringBoot配置Logback 日志按时间和大小分割失效问题

下面是修改后的日志配置

<appender name="FILE"
		class="ch.qos.logback.core.rolling.RollingFileAppender">
		
		<!-- 按照日期和大小来分割日志 -->
		<rollingPolicy
			class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
			<fileNamePattern>${LOG_HOME}/output.%d{yyyy-MM-dd}.%i.log
			</fileNamePattern>
			<maxHistory>7</maxHistory>
			<maxFileSize>10MB</maxFileSize>
		</rollingPolicy>
		
		<encoder
			class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
			<pattern>${ENCODER_PATTERN}</pattern>
		</encoder>
		
	</appender>

logback 常用日志

<configuration scan="true" scanPeriod="60 seconds"
	debug="false">

	<property name="logback.logdir" value="two" />
	<property name="logback.appname" value="one" />


	<!--输出到控制台 ConsoleAppender -->
	<appender name="consoleLog1"
		class="ch.qos.logback.core.ConsoleAppender">

		<layout class="ch.qos.logback.classic.PatternLayout">
			<pattern>%d [%thread] %-5level %logger %line - %msg%n</pattern>
		</layout>
	</appender>



	<appender name="fileInfoLog"
		class="ch.qos.logback.core.rolling.RollingFileAppender">
		<!--如果只是想要 Info 级别的日志,只是过滤 info 还是会输出 Error 日志,因为 Error 的级别高, 所以我们使用下面的策略,可以避免输出 
			Error 的日志 -->
		<filter class="ch.qos.logback.classic.filter.LevelFilter">
			<!-- 过滤 Error -->
			<level>ERROR</level>
			<!-- 匹配到就禁止 -->
			<onMatch>DENY</onMatch>
			<!-- 没有匹配到就允许 -->
			<onMismatch>ACCEPT</onMismatch>
		</filter>
		<!--日志名称,如果没有File 属性,那么只会使用FileNamePattern的文件路径规则 如果同时有<File>和<FileNamePattern>,那么当天日志是<File>,明天会自动把今天 
			的日志改名为今天的日期。即,<File> 的日志都是当天的。 -->
		<File>${logback.logdir}/info.${logback.appname}.log</File>
		<!--滚动策略,按照时间滚动 TimeBasedRollingPolicy -->
		<rollingPolicy
			class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
			<!--文件路径,定义了日志的切分方式——把每一天的日志归档到一个文件中,以防止日志填满整个磁盘空间 -->
			<FileNamePattern>${logback.logdir}/info.${logback.appname}.%d{yyyy-MM-dd}.%i.log
			</FileNamePattern>
			<maxFileSize>1MB</maxFileSize>
			<!--只保留最近90天的日志 -->
			<maxHistory>90</maxHistory>
			<!--用来指定日志文件的上限大小,那么到了这个值,就会删除旧的日志 -->
			<totalSizeCap>3MB</totalSizeCap>
		</rollingPolicy>
		<!--日志输出编码格式化 -->
		<encoder>
			<charset>UTF-8</charset>
			<pattern>%d [%thread] %-5level %logger{36} %line - %msg%n</pattern>
		</encoder>
	</appender>


	<appender name="fileErrorLog"
		class="ch.qos.logback.core.rolling.RollingFileAppender">
		<!--如果只是想要 Error 级别的日志,那么需要过滤一下,默认是 info 级别的,ThresholdFilter -->
		<filter class="ch.qos.logback.classic.filter.ThresholdFilter">
			<level>Error</level>
		</filter>
		<!--日志名称,如果没有File 属性,那么只会使用FileNamePattern的文件路径规则 如果同时有<File>和<FileNamePattern>,那么当天日志是<File>,明天会自动把今天 
			的日志改名为今天的日期。即,<File> 的日志都是当天的。 -->
		<File>${logback.logdir}/error.${logback.appname}.log</File>
		<!--滚动策略,按照时间滚动 TimeBasedRollingPolicy -->
		<rollingPolicy
			class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
			<!--文件路径,定义了日志的切分方式——把每一天的日志归档到一个文件中,以防止日志填满整个磁盘空间 -->
			<FileNamePattern>${logback.logdir}/error.${logback.appname}.%d{yyyy-MM-dd}.%i.log
			</FileNamePattern>
			<maxFileSize>1MB</maxFileSize>
			<!--只保留最近90天的日志 -->
			<maxHistory>90</maxHistory>
			<!--用来指定日志文件的上限大小,那么到了这个值,就会删除旧的日志 -->
			<totalSizeCap>3MB</totalSizeCap>
		</rollingPolicy>
		<!--日志输出编码格式化 -->
		<encoder>
			<charset>UTF-8</charset>
			<pattern>%d [%thread] %-5level %logger{36} %line - %msg%n</pattern>
		</encoder>
	</appender>


	<!-- <logger  name="com.one" level="fatal">
		<appender-ref ref="fileInfoLog" />
		<appender-ref ref="fileErrorLog" />
		<appender-ref ref="consoleLog1" />
	</logger> -->

	<root level="debug">
		<appender-ref ref="fileInfoLog" />
		<appender-ref ref="fileErrorLog" />
		<appender-ref ref="consoleLog1" />

	</root>
	
	<logger name="org.springframework" level="info"></logger>
	
	<logger name="org.springframework" level="error"></logger>
	


</configuration>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值