如何使java.util.logging将日志发送到Logback?
我正在开发一个使用slf4j api进行日志记录的应用程序:如何使java.util.logging将日志发送到Logback?,java,logback,java.util.logging,Java,Logback,Java.util.logging,我正在开发一个使用slf4j api进行日志记录的应用程序: import org.slf4j.Logger; import org.slf4j.LoggerFactory; ... private static final Logger LOG = LoggerFactory.getLogger(FreemarkerEmailPreviewGenerator.class); ... LOG.error("Error generating email preview", e); (上面
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
...
private static final Logger LOG = LoggerFactory.getLogger(FreemarkerEmailPreviewGenerator.class);
...
LOG.error("Error generating email preview", e);
(上面的代码显示了正在使用的类和包,但是非常标准。)
我们使用logback,配置如下:
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
<encoder>
<pattern>[%d{HH:mm:ss.SSS}] [%thread] [%-5level %logger{26} - %msg]%n
</pattern>
</encoder>
</appender>
<root>
<level value="debug" />
<appender-ref ref="STDOUT" />
</root>
</configuration>
是否可以使j.u.l日志记录使用logback配置,以便我们为整个应用程序提供一个一致的日志记录配置?您的应用程序需要具有以下JAR: Application->Freemarker->java.util.logging->SLF4J Api:jul-to-SLF4J.jar 应用程序->SLF4J API:SLF4J API.jar SLF4J API->logback:logback-classic.jar和logback core.jar 由于您的应用程序已经包含slf4j-api.jar和logback-classic.jar,您可能只需要添加jul-to-slf4j.jar 如果您使用maven:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jul-to-slf4j</artifactId>
<version>1.7.22</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.1.8</version>
</dependency>
org.slf4j
七月至六月
1.7.22
回写
回归经典
1.1.8
logback classic将过渡添加logback core和slf4j api可能重复的是,您的答案与重复问题的链接相结合,帮助我实现这一点。我需要jul-to-slf4j并使用SLF4JBridgeHandler.removeHandlersFrootLogger()启用网桥;和SLF4JBridgeHandler.install();
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>jul-to-slf4j</artifactId>
<version>1.7.22</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.1.8</version>
</dependency>