gpt4 book ai didi

java - 七月到 SLF4J 桥

转载 作者:IT老高 更新时间:2023-10-28 13:53:57 26 4
gpt4 key购买 nike

我目前观察到第 3 方库(即 restfb)正在使用 java.util.logging,我看到这些日志最终出现在 STDOUT 中,即使我没有在我的 logback 中配置 SLF4J 控制台附加程序.xml。我也有 jul-to-slf4j我的类路径中的桥梁。 jul-to-slf4j桥是在安装桥时只记录到logback配置的appender,还是也记录到stdout?

最佳答案

您需要调用SLF4JBridgeHandler.install() .您还需要在 java.util.logging 中的根记录器中启用所有日志级别(原因在下面的摘录中),并删除默认的控制台附加程序。

This handler will redirect jul logging to SLF4J. However, only logs enabled in j.u.l. will be redirected. For example, if a log statement invoking a j.u.l. logger disabled that statement, by definition, will not reach any SLF4JBridgeHandler instance and cannot be redirected.

整个过程可以这样完成

import java.util.logging.Logger;
import org.slf4j.bridge.SLF4JBridgeHandler;

SLF4JBridgeHandler.removeHandlersForRootLogger();
SLF4JBridgeHandler.install();
Logger.getLogger("").setLevel(Level.FINEST); // Root logger, for example.

出于性能原因,您可以将级别设置为高于最好的级别,但是如果不先在 java.util.logging 中启用这些日志,您将无法打开这些日志(因为上面摘录中提到)。

关于java - 七月到 SLF4J 桥,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9117030/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com