gpt4 book ai didi

logging - 禁用 undertow 日志记录

转载 作者:行者123 更新时间:2023-12-03 19:36:00 24 4
gpt4 key购买 nike

我有一个使用各种依赖项的应用程序。这些依赖项都使用了一堆乱七八糟的日志框架。由于我不希望任何库进行任何类型的日志记录,因此我有一个小程序试图将其全部禁用。
这已经运行了一段时间,但最近由于一些不为人知的原因,它已停止为 Undertow 工作。现在,当应用程序启动时,它会打印:

13:35:14.001 WARN  UT005060: Predicate max-content-size[5] uses old style square braces to define predicates, which will be removed in a future release. predicate[value] should be changed to predicate(value) - undertow.parseExpression 
13:35:14.046 INFO XNIO version 3.3.8.Final - xnio.<clinit>
13:35:14.059 INFO XNIO NIO Implementation Version 3.3.8.Final - nio.<clinit>

我用来禁用日志记录的代码如下:
static {
// disables java.util.logging
java.util.logging.LogManager.getLogManager().reset();
// disables log4j
org.apache.log4j.LogManager.getRootLogger().setLevel(org.apache.log4j.Level.OFF);
System.setProperty("org.apache.logging.log4j.simplelog.StatusLogger.level", org.apache.log4j.Level.OFF.toString());
// Disables spymemcached
System.setProperty("net.spy.log.LoggerImpl", "net.spy.memcached.compat.log.SunLogger");
java.util.logging.Logger.getLogger("net.spy.memcached").setLevel(java.util.logging.Level.OFF);
// slf4j has been disabled using the nop-logger in the dependencies
}

谷歌没有太大帮助。我找到了一个帖子 Turn off java.util.logging for a specific package programmatically并尝试使用它但无济于事。虚假的 XNIO 消息仍然弹出。

我想以编程方式禁用所有日志记录框架,我特别不想用到处都是配置文件来污染我的代码库。

我尝试过的东西不起作用:
org.apache.log4j.LogManager.getLogger("org.xnio").setLevel(org.apache.log4j.Level.OFF);
org.apache.log4j.LogManager.getLogger("org.jboss").setLevel(org.apache.log4j.Level.OFF);
org.apache.log4j.LogManager.shutdown();
java.util.logging.Logger.getLogger("org.jboss").setLevel(java.util.logging.Level.OFF);
java.util.logging.Logger.getLogger("org.xnio").setLevel(java.util.logging.Level.OFF);
org.apache.log4j.Logger.getLogger("org.jboss").setLevel(org.apache.log4j.Level.OFF);
org.apache.log4j.Logger.getLogger("org.xnio").setLevel(org.apache.log4j.Level.OFF);
org.apache.log4j.Logger.getRootLogger().removeAllAppenders();
org.apache.log4j.Logger.getRootLogger().addAppender(new NullAppender());

最佳答案

查看 org.jboss.logging.LoggerProviders.findProvider() .通过设置系统属性,您可以覆盖默认记录器选择,例如System.setProperty("org.jboss.logging.provider", "slf4j");

关于logging - 禁用 undertow 日志记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48665584/

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