如何配置kotlin-logging记录器

为了在我的Kotlin项目中进行日志记录 ,我正在使用kotlin-logging ,但是我错过了一个非常中心的观点:如何配置记录器的日志级别?

默认情况下,它被设置为信息,我想将其设置为调试。 由于在Github页面上没有任何关于GitHub页面的内容,也没有任何方法来以编程方式设置关卡,所以我查看了slf4j,因为kotlin-logging是一个包装。

显然我必须像这样设置一个系统属性:

-Dorg.slf4j.simpleLogger.defaultLogLevel=DEBUG 

但是我不知道如何在Kotlin做到这一点。

任何人都可以帮助我?

我们没有办法从slf4j api更改日志级别,我们需要依赖实现

通过查看slf4jLogger接口,可以看到它具有所有级别的isLevelEnabled() ,但不是setter。 因此,设置级别是特定于实现的,并且基于您使用的基础日志记录平台。


从你的问题看来,你使用slf4j SimpleLogger作为slf4j背后的slf4j 。 对于SimpleLogger ,您只能通过您已经完成的属性来更改日志级别。 看到这个问题的更多信息。

 System.setProperty(org.slf4j.impl.SimpleLogger.DEFAULT_LOG_LEVEL_KEY, "TRACE"); 

请注意,一旦记录器被创建,日志级别不能被改变。 如果您需要动态更改日志记录级别,则可能需要在SLF4J中使用log4j。