如何配置 Quarkus 日志级别?

How to configure Quarkus log level?

我想更改我的 quarkus 应用程序的日志级别,在我能找到任何参考的任何地方,它都指向 application.properties 文件。

这是我的application.properties内容:

quarkus.log.level=TRACE
quarkus.log.console.enable=true
quarkus.log.console.level=TRACE

"%test".quarkus.log.level=TRACE
"%test".quarkus.log.console.enable=true
"%test".quarkus.log.console.level=TRACE

这是我的代码:

Logger LOGGER = LoggerFactory.getLogger(AccessorController.class);

 LOGGER.trace("TRACE");
 LOGGER.debug("DEBUG");
 LOGGER.info("INFO");
 LOGGER.error("ERROR");

但这是输出:

Feb 24, 2020 1:42:35 PM com.MyClass greetings
INFO: INFO
Feb 24, 2020 1:42:35 PM com.MyClass greetings
ERROR: ERROR

我需要任何额外的扩展才能让它正常工作吗?

我读过 但它对我不起作用。 我真的不知道,我从 Quarkus bootstrap 创建了一个简单的应用程序,但我仍然有相同的行为。

据我所知,您不能在属性文件上使用 SLF4J 的日志级别。您需要使用 java.utils.logging.Level.

中的任何值

正如 Javadoc 所说,它们是:

SEVERE (highest value)
WARNING
INFO
CONFIG
FINE
FINER
FINEST (lowest value) 

我已将我的配置替换为 quarkus.log.category."com.my.package".level=FINEST 并且 SLF4J 中的 log.trace("MSG"); 按预期工作。

我刚刚知道发生了什么事。 似乎 yaml-config 依赖项无法识别为有效条目

quarkus.log.level:  WARN

但是

quarkus:
  log:
    level:  WARN

完美运行