关于“详解slf4j+logback在java工程中的配置”,我将为你提供一个完整的攻略。包含以下内容:
- 简要介绍slf4j和logback
- 配置slf4j和logback
- logback使用示例
- slf4j使用示例
希望以下内容能够帮助你理解和使用slf4j和logback。
简要介绍slf4j和logback
slf4j(Simple Logging Facade for Java)是一个日志框架,用于统一不同的日志框架。而logback是slf4j的实现之一,是一种灵活的日志框架,具有丰富的功能和可配置性。
配置slf4j和logback
- 引入相关依赖
在pom.xml文件中添加以下依赖:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>${slf4j.version}</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>${logback.version}</version>
</dependency>
其中 ${slf4j.version}
和 ${logback.version}
分别为 slf4j 和 logback 的版本号,可以通过在 pom.properties 中定义它们的值来管理版本。
- 配置logback
在 classpath 根目录下创建一个名为 logback.xml
的文件,进行相应的配置。下面是一个简单的例子:
<configuration>
<!--控制台输出-->
<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
<charset>UTF-8</charset>
</encoder>
</appender>
<!--日志文件输出-->
<appender name="file" class="ch.qos.logback.core.rolling.RollingFileAppender">
<file>/var/log/demo.log</file>
<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
<!-- daily rollover -->
<fileNamePattern>/var/log/demo.%d{yyyy-MM-dd}.log</fileNamePattern>
<!-- keep 30 days' worth of history -->
<maxHistory>30</maxHistory>
</rollingPolicy>
<encoder>
<pattern>%d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
<charset>UTF-8</charset>
</encoder>
</appender>
<root level="INFO">
<appender-ref ref="console" />
<appender-ref ref="file" />
</root>
</configuration>
以上配置文件说明了如何同时输出到控制台和文件。其中,可以根据需要添加不同的 appender,并根据需要配置其相关属性。
logback使用示例
下面是一个使用 logback 的示例代码:
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class Demo {
private static final Logger LOG = LoggerFactory.getLogger(Demo.class);
public static void main(String[] args) {
LOG.debug("debug message");
LOG.info("info message");
LOG.warn("warn message");
LOG.error("error message");
}
}
输出结果:
2021-10-09 16:13:45.929 [main] INFO Demo - info message
2021-10-09 16:13:45.929 [main] WARN Demo - warn message
2021-10-09 16:13:45.929 [main] ERROR Demo - error message
slf4j使用示例
下面是一个使用 slf4j 的示例代码:
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
public class Demo {
private static final Logger LOG = LoggerFactory.getLogger(Demo.class);
public static void main(String[] args) {
LOG.debug("debug message");
LOG.info("info message");
LOG.warn("warn message");
LOG.error("error message");
}
}
输出结果:
2021-10-09 16:13:45.929 [main] INFO Demo - info message
2021-10-09 16:13:45.929 [main] WARN Demo - warn message
2021-10-09 16:13:45.929 [main] ERROR Demo - error message
以上就是“详解slf4j+logback在java工程中的配置”的完整攻略。希望这篇文章能够帮到你,如果你有其他问题可以额外提出来。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解slf4j+logback在java工程中的配置 - Python技术站