`
li.hzh
  • 浏览: 21792 次
  • 性别: Icon_minigender_1
  • 来自: 大连
社区版块
存档分类

【原创】slf4j+logback配置方式,logback.groovy使用备忘

阅读更多

最近看到slf4j+logback的日志方案,决定从commons-logging+log4j切换过来。

logback官网:(该作者即为log4j的作者)

http://logback.qos.ch/

切换方式非常简单,在原有基础上加入如下jar包即可。

slf4j-api-1.6.2.jar

jcl-over-slf4j-1.6.2.jar  \\用于桥接commons-logging 到 slf4j,如果直接使用slf4j+logback的方案则无需此jar

logback-core-0.9.29.jar

logback-classic-0.9.29.jar

 

   <dependency>
  		<groupId>org.slf4j</groupId>
  		<artifactId>slf4j-api</artifactId>
  		<version>1.6.2</version>
  	</dependency>
  	<dependency>
  		<groupId>org.slf4j</groupId>
  		<artifactId>jcl-over-slf4j</artifactId>
  		<version>1.6.2</version>
  	</dependency>
  	<dependency>
  		<groupId>ch.qos.logback</groupId>
  		<artifactId>logback-core</artifactId>
  		<version>0.9.29</version>
  	</dependency>
  	<dependency>
  		<groupId>ch.qos.logback</groupId>
  		<artifactId>logback-classic</artifactId>
  		<version>0.9.29</version>
  	</dependency>
 

 logback会依次读取以下类型配置文件:logback.groovy,logback-test.xml,logback.xml

logback.xml样例如下:

 

<?xml version="1.0" encoding="UTF-8"?>  
<configuration>  
  <appender name="stdout" class="ch.qos.logback.core.ConsoleAppender">  
    <encoder  class="ch.qos.logback.classic.encoder.PatternLayoutEncoder">  
      <pattern>%d{yyyy/MM/dd-HH:mm:ss.SSS} %level [%thread] %class:%line>>%msg%n</pattern>  
    </encoder >  
  </appender>  
  
  <root level="INFO">  
    <appender-ref ref="stdout" />  
  </root>  
</configuration>

 其中pattern属性的意义跟log4j基本相同,具体可参考官方文档:http://logback.qos.ch/manual/layouts.html

logback.groovy的样例代码如下:

 

import static ch.qos.logback.classic.Level.DEBUG
import ch.qos.logback.classic.encoder.PatternLayoutEncoder
import ch.qos.logback.core.ConsoleAppender

appender("CONSOLE", ConsoleAppender) {
  encoder(PatternLayoutEncoder) {
    pattern = "%d{yyyy/MM/dd-HH:mm:ss} %-5level [%thread] %class{5}:%line>>%msg%n"
  }
}
root(DEBUG, ["CONSOLE"])
 

 

 

官方提供了logback.xml->logback.groovy的转换工具,地址如下:http://logback.qos.ch/translator/asGroovy.html

对于logback.groovy的使用,需要注意的是:

 

  1. logback.groovy需要放在源码包的根目录下,否则会找不到。
  2. 在eclipse中,如果安装了groovy的插件,需要将放置logback.groovy的源码包位置设置为groovysrcipt的所在位置,即在编译的时候不将goorvy编译成class文件,而是直接讲groovy脚本复制到output path下。否则扔无法生效。



 另外,个人使用中发现,使用xml的配置方式比groovy在第一次解析的时候要快很多,当然解析后效率一样。

 

  • 大小: 35.9 KB
1
1
分享到:
评论
1 楼 li.hzh 2011-11-19  
做个备忘。

相关推荐

    调试日志之slf4j+logback

    在IT行业中,日志记录是系统调试、故障排查和性能分析的重要工具。本文将深入探讨“调试日志之slf4j+...文档《复件 日志系统.docx》可能包含了更多关于如何配置和使用SLF4J+Logback的详细信息,建议进一步查阅学习。

    slf4j+logback的jar和配置文件

    SLF4J(Simple Logging Facade for Java)和Logback是Java日志处理的两个重要组件,它们在软件开发中广泛用于记录应用程序的运行时信息。SLF4J是一个日志门面,它提供了一个统一的接口,允许开发人员在运行时插入所...

    slf4j+logback

    SLF4J(Simple Logging Facade for Java)和Logback是Java日志处理中的两个重要组件,...通过对SLF4J接口的使用和Logback的细致配置,开发者可以更好地监控和分析应用程序的行为,同时保持代码的可移植性和可维护性。

    slf4j-1.6.1+logback-0.9.24

    在项目中使用SLF4J和Logback,需要在类路径下放置`slf4j-api.jar`和对应的`logback-classic.jar`及`logback-core.jar`。然后创建一个`logback.xml`或`logback.groovy`配置文件,定义日志级别、输出目的地、格式等。...

    slf4j-1.6.1-Blogback-0.9.24等日志包

    SLF4J(Simple Logging Facade for Java)和Logback是Java世界中广泛使用的日志框架,它们在Spring MVC项目中扮演着至关重要的角色。SLF4J是一个接口层,为各种日志实现提供了一个统一的API,允许开发者在不修改代码...

    slf4j-android-1.5.8.jar.zip

    SLF4J(Simple Logging Facade for Java)是Java中一个重要的日志抽象层,它为各种日志框架,如Logback、Log4j等,提供了一个统一的接口。SLF4J的主要目的是使得应用程序可以在部署时选择合适的日志实现,而无需在...

    logback+slf4j打印工具类

    对于标题中提到的"LoggerUtil.getLogger(name).info()",这是一个典型的SLF4J使用方式。`LoggerUtil`可能是一个自定义工具类,封装了SLF4J的`LoggerFactory`,用于简化获取Logger的过程。`getLogger(name)`方法传入...

    slf4j-1.7.10.tar.gz

    4. **日志配置**:每个日志框架都有自己的配置方式,SLF4J不处理配置,而是由绑定的日志框架负责。例如,如果使用Logback,可以通过`logback.xml`或`logback.groovy`文件进行配置。 5. **Maven依赖**:在Maven项目...

    slf4j-1.6.1.zip

    SLF4J(Simple Logging Facade for Java)是Java中一个简单日志门面的库,它为各种日志框架提供了统一的API,比如Log4j、Java Util Logging、Logback等。`slf4j-1.6.1.zip`是一个包含SLF4J 1.6.1版本的压缩包,它是...

    slf4j-api-1.7.2.jar

    SLF4J(Simple Logging Facade for Java)是Java日志记录的一个接口层,它为各种日志框架,如Log4j、Java Util Logging、Logback等,提供了一个统一的API。SLF4J的设计目的是使得应用程序能够在部署时选择合适的日志...

    slf4j-1.5.8.zip

    SLF4J(Simple Logging Facade for Java)是Java日志框架的一个接口层,它为各种日志实现提供了一个统一的API,比如Log4j、java.util.logging、Logback等。这个版本是SLF4J的1.5.8版,尽管较旧,但仍然包含了许多...

    slf4j日志,可以使用它代替LOG4J

    SLF4J(Simple Logging Facade for Java)是Java中的一种日志抽象层,它的设计目的是为各种日志框架提供一个统一的接口,使得开发者可以在不改变代码的情况下切换不同的日志实现,比如从Log4j切换到Logback,或者...

    slf4j-1.7.19

    虽然SLF4J API本身不包含任何配置,但是与它绑定的日志实现(如Logback或Log4j)通常允许通过配置文件来控制日志级别、输出格式和目标(如控制台、文件或网络)。对于Logback,其配置文件通常是`logback.xml`或`...

    logback所需jar包

    2. **Logback-Classic**:它是log4j的直接替代品,提供了与log4j类似的API,并且支持SLF4J(Simple Logging Facade for Java),允许用户灵活切换不同的日志实现。 3. **Logback-Appender**:这些是负责将日志输出...

    logback的jar文件

    在实际应用中,这三个jar文件通常一起使用,slf4j-api作为日志的接口层,logback-classic作为具体的日志实现,而logback-core则负责提供底层的日志处理能力。通过这种方式,开发人员可以利用SLF4J的灵活性,在不影响...

    logbackt和slf4j资源包

    `logback-1.1.1.zip` 包含了Logback 的1.1.1 版本,这个版本提供了核心的`logback-classic.jar`(实现了SLF4J API)、`logback-core.jar`(包含基础的日志功能)以及配置文件`logback.xml`或`logback.groovy`,用于...

    slf4j.jar包

    SLF4J(Simple Logging Facade for Java)是一个用于各种日志框架的简单抽象层,如java.util.logging、Logback和Log4j。这个jar包是SLF4J API的核心组件,它提供了一组API,使得开发人员能够在运行时绑定到具体的...

    logback1.1.2配置事例

    Logback 是一个广泛使用的日志框架,由 Ceki Gülcü 创建,他是早期流行日志框架 Log4j 的创始人。Logback 目标是提供高效、灵活且无侵入的日志记录解决方案,同时保持低延迟和高吞吐量。在本配置事例中,我们将...

    logback-shell.zip

    logback-classic是SLF4J(Simple Logging Facade for Java)的实现,提供了与log4j类似的API。logback-core是所有logback组件的基础,而logback-access则与Servlet容器集成,提供了类似于Apache HTTP服务器的访问...

    通过gradle搭建SSM框架+slf4j 以Gradle实现

    SSM框架是Java Web开发中常用的三大框架Spring、Spring MVC和MyBatis的组合,而slf4j(Simple Logging Facade for Java)则是一种日志抽象层,它允许我们选择不同的日志实现,如Logback或Log4j。Gradle作为现代的...

Global site tag (gtag.js) - Google Analytics