【问题标题】:How to configure Quarkus log level?如何配置 Quarkus 日志级别?
【发布时间】:2020-02-24 21:12:07
【问题描述】:

我想更改我的 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

我需要任何额外的扩展来让它工作吗?

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

【问题讨论】:

    标签: quarkus


    【解决方案1】:

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

    正如 Javadoc 所说,这些是:

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

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

    【讨论】:

    • 这是我链接的问题中答案的摘录,来自 Quarkus 开发人员:“控制根日志记录级别的属性是 quarkus.log.level(默认为 INFO)。这个属性可以在 application.properties 中设置,也可以在运行时使用 -Dquarkus.log.level=DEBUG 覆盖。“这让我相信这是可能的。
    【解决方案2】:

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

    quarkus.log.level:  WARN
    

    但是

    quarkus:
      log:
        level:  WARN
    

    完美运行

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-07-25
      • 2021-04-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-05-11
      相关资源
      最近更新 更多