最近看到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的使用,需要注意的是:
- logback.groovy需要放在源码包的根目录下,否则会找不到。
- 在eclipse中,如果安装了groovy的插件,需要将放置logback.groovy的源码包位置设置为groovysrcipt的所在位置,即在编译的时候不将goorvy编译成class文件,而是直接讲groovy脚本复制到output path下。否则扔无法生效。
另外,个人使用中发现,使用xml的配置方式比groovy在第一次解析的时候要快很多,当然解析后效率一样。
- 大小: 35.9 KB
分享到:
相关推荐
在IT行业中,日志记录是系统调试、故障排查和性能分析的重要工具。本文将深入探讨“调试日志之slf4j+...文档《复件 日志系统.docx》可能包含了更多关于如何配置和使用SLF4J+Logback的详细信息,建议进一步查阅学习。
SLF4J(Simple Logging Facade for Java)和Logback是Java日志处理的两个重要组件,它们在软件开发中广泛用于记录应用程序的运行时信息。SLF4J是一个日志门面,它提供了一个统一的接口,允许开发人员在运行时插入所...
SLF4J(Simple Logging Facade for Java)和Logback是Java日志处理中的两个重要组件,...通过对SLF4J接口的使用和Logback的细致配置,开发者可以更好地监控和分析应用程序的行为,同时保持代码的可移植性和可维护性。
在项目中使用SLF4J和Logback,需要在类路径下放置`slf4j-api.jar`和对应的`logback-classic.jar`及`logback-core.jar`。然后创建一个`logback.xml`或`logback.groovy`配置文件,定义日志级别、输出目的地、格式等。...
SLF4J(Simple Logging Facade for Java)和Logback是Java世界中广泛使用的日志框架,它们在Spring MVC项目中扮演着至关重要的角色。SLF4J是一个接口层,为各种日志实现提供了一个统一的API,允许开发者在不修改代码...
对于标题中提到的"LoggerUtil.getLogger(name).info()",这是一个典型的SLF4J使用方式。`LoggerUtil`可能是一个自定义工具类,封装了SLF4J的`LoggerFactory`,用于简化获取Logger的过程。`getLogger(name)`方法传入...
SLF4J(Simple Logging Facade for Java)是Java中一个重要的日志抽象层,它为各种日志框架,如Logback、Log4j等,提供了一个统一的接口。SLF4J的主要目的是使得应用程序可以在部署时选择合适的日志实现,而无需在...
4. **日志配置**:每个日志框架都有自己的配置方式,SLF4J不处理配置,而是由绑定的日志框架负责。例如,如果使用Logback,可以通过`logback.xml`或`logback.groovy`文件进行配置。 5. **Maven依赖**:在Maven项目...
SLF4J(Simple Logging Facade for Java)是Java中一个简单日志门面的库,它为各种日志框架提供了统一的API,比如Log4j、Java Util Logging、Logback等。`slf4j-1.6.1.zip`是一个包含SLF4J 1.6.1版本的压缩包,它是...
SLF4J(Simple Logging Facade for Java)是Java日志记录的一个接口层,它为各种日志框架,如Log4j、Java Util Logging、Logback等,提供了一个统一的API。SLF4J的设计目的是使得应用程序能够在部署时选择合适的日志...
SLF4J(Simple Logging Facade for Java)是Java日志框架的一个接口层,它为各种日志实现提供了一个统一的API,比如Log4j、java.util.logging、Logback等。这个版本是SLF4J的1.5.8版,尽管较旧,但仍然包含了许多...
SLF4J(Simple Logging Facade for Java)是Java中的一种日志抽象层,它的设计目的是为各种日志框架提供一个统一的接口,使得开发者可以在不改变代码的情况下切换不同的日志实现,比如从Log4j切换到Logback,或者...
虽然SLF4J API本身不包含任何配置,但是与它绑定的日志实现(如Logback或Log4j)通常允许通过配置文件来控制日志级别、输出格式和目标(如控制台、文件或网络)。对于Logback,其配置文件通常是`logback.xml`或`...
2. **Logback-Classic**:它是log4j的直接替代品,提供了与log4j类似的API,并且支持SLF4J(Simple Logging Facade for Java),允许用户灵活切换不同的日志实现。 3. **Logback-Appender**:这些是负责将日志输出...
在实际应用中,这三个jar文件通常一起使用,slf4j-api作为日志的接口层,logback-classic作为具体的日志实现,而logback-core则负责提供底层的日志处理能力。通过这种方式,开发人员可以利用SLF4J的灵活性,在不影响...
`logback-1.1.1.zip` 包含了Logback 的1.1.1 版本,这个版本提供了核心的`logback-classic.jar`(实现了SLF4J API)、`logback-core.jar`(包含基础的日志功能)以及配置文件`logback.xml`或`logback.groovy`,用于...
SLF4J(Simple Logging Facade for Java)是一个用于各种日志框架的简单抽象层,如java.util.logging、Logback和Log4j。这个jar包是SLF4J API的核心组件,它提供了一组API,使得开发人员能够在运行时绑定到具体的...
Logback 是一个广泛使用的日志框架,由 Ceki Gülcü 创建,他是早期流行日志框架 Log4j 的创始人。Logback 目标是提供高效、灵活且无侵入的日志记录解决方案,同时保持低延迟和高吞吐量。在本配置事例中,我们将...
logback-classic是SLF4J(Simple Logging Facade for Java)的实现,提供了与log4j类似的API。logback-core是所有logback组件的基础,而logback-access则与Servlet容器集成,提供了类似于Apache HTTP服务器的访问...
SSM框架是Java Web开发中常用的三大框架Spring、Spring MVC和MyBatis的组合,而slf4j(Simple Logging Facade for Java)则是一种日志抽象层,它允许我们选择不同的日志实现,如Logback或Log4j。Gradle作为现代的...