logback配置

简介

   logback,slf4j(与log4j同一个作者,采取了log4j的优点并且比log4j更加完美)的实现。

配置文件

   logback.xml 该配置文件中已经配置好了日志保留时长以及周期打包保存,使用的时候只需要调整一下核心参数即可。

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
	<contextName>socketand</contextName>
	<property name="LOG_PATH" value="powerservice-satisfaction" />
	<!--设置系统日志目录 -->
	<property name="APPDIR" value="satisfaction" />
	<property name="SERVICENAME" value="powerservice-satisfaction" />
	<appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">
		 <!-- 日志输出格式: %d表示日期时间, %thread表示线程名, %-5level:级别从左显示5个字符宽度 %logger{50} 
			表示logger名字最长50个字符,否则按照句点分割。 %msg:日志消息, %n是换行符 -->
		<layout class="ch.qos.logback.classic.PatternLayout">
			<pattern>%d{yyyy-MM-dd HH:mm:ss} [%thread]%-5level %logger{50}-%msg%n
			</pattern>
		</layout>
	</appender>
	<!-- 日志记录器,日期滚动记录 -->
	<appender name="FILEERROR"
		class="ch.qos.logback.core.rolling.RollingFileAppender">
		<!-- 正在记录的日志文件的路径及文件名 -->
		<file>${LOG_PATH}/${APPDIR}/${SERVICENAME}_error.log</file>
		<!-- 日志记录器的滚动策略,按日期,按大小记录 大小:1MB,超过1MB的话 日志会自动归档,归档地址则就是fileNamePattern属性值所对应的值 -->
		<rollingPolicy
			class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
			<fileNamePattern>${LOG_PATH}/${APPDIR}/error/${SERVICENAME}-error.log.%d{yyyy-MM-dd}.%i.gz
			</fileNamePattern>
			<!--保留时长-->
			<maxHistory>1</maxHistory>
			<!--日志大小-->
			<maxFileSize>1MB</maxFileSize>
			<!--总大小大小-->
			<totalSizeCap>1GB</totalSizeCap>
		</rollingPolicy>
		<!-- 追加方式记录日志 -->
		<append>true</append>
		<!-- 日志文件的格式 -->
		<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
			<pattern>===%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger Line:%-3L -
				%msg%n</pattern>
			<charset>utf-8</charset>
		</encoder>
		<!-- 此日志文件只记录error级别的 -->
		<filter class="ch.qos.logback.classic.filter.LevelFilter">
			<level>error</level>
			<onMatch>ACCEPT</onMatch>
			<onMismatch>DENY</onMismatch>
		</filter>
		 <!-- 日志输出格式: -->
		<layout class="ch.qos.logback.classic.PatternLayout">
			<pattern>%d{yyyy-MM-dd HH:mm:ss} [ %thread ]-[ %-5level ]
				[%logger{50} : %line ] - %msg%n</pattern>
		</layout>
	</appender>
	<!-- 日志记录器,日期滚动记录 -->
	<appender name="FILEWARN"
		class="ch.qos.logback.core.rolling.RollingFileAppender">
		<!-- 正在记录的日志文件的路径及文件名 -->
		<file>${LOG_PATH}/${APPDIR}/${SERVICENAME}_debug.log</file>
		<!-- 日志记录器的滚动策略,按日期,按大小记录 -->
		<rollingPolicy
		class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
			<fileNamePattern>${LOG_PATH}/${APPDIR}/debug/${SERVICENAME}-debug-%d{yyyy-MM-dd}.%i.gz
			</fileNamePattern>
			<maxHistory>1</maxHistory>
			<maxFileSize>20MB</maxFileSize>
			<totalSizeCap>1GB</totalSizeCap>
		</rollingPolicy>
		<!-- 追加方式记录日志 -->
		<append>true</append>
		<!-- 日志文件的格式 -->
		<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
			<pattern>===%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger Line:%-3L -
				%msg%n</pattern>
			<charset>utf-8</charset>
		</encoder>
		<!-- 此日志文件只记录debug级别的 -->
		<filter class="ch.qos.logback.classic.filter.LevelFilter">
			<level>debug</level>
			<onMatch>ACCEPT</onMatch>
			<onMismatch>DENY</onMismatch>
		</filter>
		 <!-- 日志输出格式: -->
		<layout class="ch.qos.logback.classic.PatternLayout">
			<pattern>%d{yyyy-MM-dd HH:mm:ss} [ %thread ]-[ %-5level ]
				[%logger{50} : %line ] - %msg%n</pattern>
		</layout>
	</appender>
	<!-- 日志记录器,日期滚动记录 -->
	<appender name="FILEINFO"
		class="ch.qos.logback.core.rolling.RollingFileAppender">
		<!-- 正在记录的日志文件的路径及文件名 -->
		<file>${LOG_PATH}/${APPDIR}/${SERVICENAME}_info.log</file>
		<!-- 日志记录器的滚动策略,按日期,按大小记录 -->
		<rollingPolicy
			class="ch.qos.logback.core.rolling.SizeAndTimeBasedRollingPolicy">
			<fileNamePattern>${LOG_PATH}/${APPDIR}/info/${SERVICENAME}-info-%d{yyyy-MM-dd}.%i.gz
			</fileNamePattern>
			<maxHistory>1</maxHistory>
			<maxFileSize>20MB</maxFileSize>
			<totalSizeCap>1GB</totalSizeCap>
		</rollingPolicy>
		<!-- 追加方式记录日志 -->
		<append>true</append>
		<!-- 日志文件的格式 -->
		<encoder class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">
			<pattern>===%d{yyyy-MM-dd HH:mm:ss.SSS} %-5level %logger Line:%-3L -
				%msg%n</pattern>
			<charset>utf-8</charset>
		</encoder>
		<!-- 此日志文件只记录info级别的 -->
		<filter class="ch.qos.logback.classic.filter.LevelFilter">
			<level>info</level>
			<onMatch>ACCEPT</onMatch>
			<onMismatch>DENY</onMismatch>
		</filter>
		 <!-- 日志输出格式: -->
		<layout class="ch.qos.logback.classic.PatternLayout">
			<pattern>%d{yyyy-MM-dd HH:mm:ss} [ %thread ]-[ %-5level ]
				[%logger{50} : %line ] - %msg%n</pattern>
		</layout>
	</appender>
	<!--引用-->
	<root level="INFO">
		<appender-ref ref="stdout" />
		<appender-ref ref="FILEERROR" />
		<appender-ref ref="FILEWARN" />
		<appender-ref ref="FILEINFO" />
	</root>
</configuration>

   LoggerSl4j.java


public class LoggerSl4j {
	/**
	 * 获取日志对象
	 * 
	 * @return
	 */
	public static Logger getSpringBootLogger() {
		Logger log = LoggerFactory.getLogger(LoggerSl4j.class);
		return log;
	}
}
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值