使用SLF4J 实现热加载日志级别

官网链接:http://www.slf4j.org/        


简单的例子参考:http://download.csdn.net/detail/sxg0205/9337449


logback.xml(该配置文件必须要放到编译后的文件目录的classes目录下才会被读取): 

<?xml version="1.0" encoding="UTF-8"?>
<!-- scanPeriod default 1 minutes 
	milliseconds, seconds, minutes or hours -->
<!-- 	debug为true表示启动时会在控制台打印slf4j的启动日志,scan为true表示热加载,scanPeriod表示扫描周期
 	此处即表示项目正常使用过程中会每7秒重新扫描一次该配置文件-->
<configuration debug="true" scan="true" scanPeriod="7 seconds">

	<appender name="CONSOLE" class="ch.qos.logback.core.ConsoleAppender">
		<encoder>
<!-- 			日志打印格式  时间  日志级别 -方法名称 日志内容-->
			<pattern>%date %level [%thread] %logger - %msg%n</pattern>
		</encoder>
	</appender>

<!--     生成日志文件 -->
	<appender name="FILE" class="ch.qos.logback.core.rolling.RollingFileAppender">
		<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
			<!-- daily rollover   文件名称 -->
			<fileNamePattern>mediate-service.%d{yyyy-MM-dd}.log</fileNamePattern>
			<!-- keep 30 days' worth of history -->
			<!-- <maxHistory>30</maxHistory> -->
		</rollingPolicy>
		<encoder>
			<pattern>%date %level [%thread] %logger - %msg%n</pattern>
		</encoder>
	</appender>

	<!-- 日志级别 TRACE, DEBUG, INFO, WARN, ERROR -->
	<root level="DEBUG">
		<appender-ref ref="CONSOLE" />
		<appender-ref ref="FILE" />
	</root>

</configuration>

代码配置(测试类):

package slf4j;

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;

public class slf4jPrint {

	private static Logger logger = LoggerFactory.getLogger(slf4jPrint.class);
	
	public static void main(String[] args) {
		logger.debug("debug.....{}...{}", 1, 2);
		logger.info("info.....{}", 1);
		
		testPrint();
	}
	
	public static void testPrint() {
		logger.debug("testPrint syso");
	}
}

依赖jar包:


logback.xml加载方式:

项目运行加载到

private static Logger logger = LoggerFactory.getLogger(slf4jPrint.class);时会到依赖包里寻找指定的配置文件logback.xml(详情参见logback-classic包ContextInitializer.class中的配置),故此处配置文件名称不可变动,加载完成后即可直接调用slf4j接口打印日志;根据实际需要修改配置文件中的<pre name="code" class="html"><root level="DEBUG">为指定日志级别,等下次扫描完成后当前日志级别即会变更为选择的日志级别;
 
 


猜你喜欢

转载自blog.csdn.net/sxg0205/article/details/50219127
今日推荐