LogBack学习记录(一)概要介绍

来源:互联网 发布:网络胜利组风车 编辑:程序博客网 时间:2024/06/10 04:09

logback的优点:

   速度更快,体积更小,配置文件修改后可以自动重新加载,而不用重新启动应用,log4j向logback移植很容易,还有其他的一些优点,具体可以参见文章:http://www.oschina.net/translate/reasons-to-prefer-logbak-over-log4j。


maven 集成logback:

   在maven中集成logback非常容易,在pom文件中添加如下内容即可:

<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.5</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.0.13</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.0.13</version>
</dependency>

logback支持slf4j的接口,为了便于以后更换日志实现方式,在程序里面通过slf4j接口进行调用。

程序中如下调用:

Logger logger = LoggerFactory.getLogger(HelloWorld.class);
   logger.debug("Hello world.");

在控制台将输出如下内容:

10:26:02.291 [main] DEBUG c.w.s.STLogBack.chapt1.HelloWorld - Hello world.

在这个例子中没有对logback进行配置,因此logback将采用的默认的方式进行日志输出,即在控制台中进行日志输出,可通过如下代码查看logback加载配置文件的过程:

   //输出logback的内部加载配置文件的过程
   LoggerContext lc = (LoggerContext) LoggerFactory.getILoggerFactory();
   StatusPrinter.print(lc);

上述代码运行后将输出如下内容:

10:26:02,193 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.groovy]
10:26:02,194 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback-test.xml]
10:26:02,194 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Could NOT find resource [logback.xml]
10:26:02,197 |-INFO in ch.qos.logback.classic.LoggerContext[default] - Setting up default configuration.

可见,logback的配置文件加载顺序为logback.groovy》》logback-test.xml》》logback.xml,如果上述文件都没有,则采用默认的日志输出方式(将debug级别以上的在控制台中进行输出),需要注意的是,logback-test.xml优先于logback.xml的方式将非常有利于系统进行测试。

本章代码参见chapt1部分。

相关示例代码地址:http://git.oschina.net/wangjian/STLogBack.git。 git下载后,直接eclipse导入即可运行

原创粉丝点击