欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

logback 多线程 死锁

程序员文章站 2022-07-12 18:32:36
...

logback 多线程下频繁的写日志会出现死锁,可以使用异步appender避免这个问题:

	<!-- 异步写日志,用户简介专用日志 -->
	<appender name="ASYNC_USER_PROFILE_MODEL"
			  class="ch.qos.logback.classic.AsyncAppender">
		<File>${LOG_HOME}/userprofilemodel.log</File>
		<Encoding>UTF-8</Encoding>
		<!-- 不丢失日志.默认的,如果队列的80%已满,则会丢弃TRACT、DEBUG、INFO级别的日志 -->
		<discardingThreshold >0</discardingThreshold>
		<!-- 更改默认的队列的深度,该值会影响性能.默认值为256 -->
		<queueSize>512</queueSize>

		<encoder>
			<pattern>%msg%n</pattern>
		</encoder>
		<!--日志文件最大的大小 -->
		<triggeringPolicy class="ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy">
			<maxFileSize>50MB</maxFileSize>
		</triggeringPolicy>
	</appender>