繁体   English   中英

从对象创建级别启用/禁用日志记录

[英]enable/disable logging from Object creation level

我在这个问题上停留了一段时间:

我有一个类,它有一些功能,里面还有一些日志记录语句。 我想在创建该特定类的对象时通过在构造函数中传递一些参数来启用/禁用日志记录。 这有没有可能。

我将 slf4j 记录为 logback 之上的日志外观库。

任何建议总是受欢迎的。

您可以为此使用SimpleLogger

  public class Test {

    private static final Logger LOGGER = LoggerFactory.getLogger(Test.class);

    public Test(String logLevel) {
        //
        System.setProperty(org.slf4j.impl.SimpleLogger.DEFAULT_LOG_LEVEL_KEY, logLevel);
    }
}

然后你可以使用如下构造函数:

Test ref = new Test("info");  // for setting info level

Test ref1 = new Test("debug");  // for setting debug level.

这样您就可以更改记录器级别。 让我知道这是否有帮助。

编辑:我使用下面的 Maven 依赖项来获取 SimpleLogger。

<dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-simple</artifactId>
        </dependency> 

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM