当前位置: 首页 > 面试题库 >

如何禁用mongoDB Java驱动程序日志记录?

和和煦
2023-03-14
问题内容

我正在尝试禁用的日志输出mongo-java-driver-3.0.0

在加载mongo驱动程序之前,我曾尝试在应用程序的开头设置这些设置,但没有帮助。

    // Enable MongoDB logging in general
    System.setProperty("DEBUG.MONGO", "false");

    // Enable DB operation tracing
    System.setProperty("DB.TRACE", "false");

我收到这种日志:

11:01:15.406 [pool-1-thread-1] DEBUG org.mongodb.driver.protocol.query - Sending query of namespace susudev.Players on connection [connectionId{localValue:2, serverValue:28}] to server localhost:27017
11:01:15.406 [pool-1-thread-1] DEBUG org.mongodb.driver.protocol.query - Query completed

11:01:25.174 [cluster-ClusterId{value='554dbecb1b554f11e86c3a69', description='null'}-localhost:27017] DEBUG org.mongodb.driver.cluster - Checking status of localhost:27017
11:01:25.177 [cluster-ClusterId{value='554dbecb1b554f11e86c3a69', description='null'}-localhost:27017] DEBUG org.mongodb.driver.cluster - Updating cluster description to  {type=STANDALONE, servers=[{address=localhost:27017, type=STANDALONE, roundTripTime=0.6 ms, state=CONNECTED}]

所以我的控制台完全塞满了mongo日志,我什么也看不到。


问题答案:

所以这解决了这个问题:

import org.slf4j.LoggerFactory;
import ch.qos.logback.classic.Level;
import ch.qos.logback.classic.Logger;

...

static Logger root = (Logger) LoggerFactory
        .getLogger(Logger.ROOT_LOGGER_NAME);

static {
    root.setLevel(Level.INFO);
}

如果您希望隐藏所有日志,可以将其设置Level为较高Level的值。



 类似资料:
  • 我正在使用Selenium Chrome驱动程序,想要禁用日志记录,我尝试了所有现有的解决方案,包括: 和 但没有为我工作,仍然有这个信息和警告日志显示: 在端口17965上启动ChromeDriver2.25.426924 (649f9b868f6783ec9de71c123212b908bf3b232e),只允许本地连接。Jul25, 2017 7:01:16PMorg.openqa.sele

  • 问题内容: 我有一些使用该软件包的工具化代码。现在该关闭日志记录了,我无法确定如何关闭标准记录器。 我错过了什么吗?我应该在进行日志调用之前检查标志,还是在生产中将其注释掉? 问题答案: 要完全禁用日志,最好调用Joril并将输出设置为无操作(例如) 但即使在此之后,操作仍将闲置约500-600 ns / op 1 这仍然可切断短路(左右 为100 ns / OP )通过使用自定义的实现,并实现所

  • 问题内容: 我是否可以配置MongoDB Java驱动程序以输出有用的(用于调试)消息,最好使用标准日志记录框架之一?我主要希望查看发生的每个查询,接收到多少数据,花费多长时间以及所有错误代码。 问题答案: 在 加载任何MongoDB Java驱动程序类 之前, 您需要设置几个系统属性: 之后,驱动程序将使用标准的Java日志记录框架来记录消息。 不幸的是,据我从Java驱动程序代码中得知,日志记

  • 这也许是一个很简单的问题。如何禁用Hikari-CP调试日志?在我的日志文件我有很多这样的消息 在我的日志4jconfig中。xml: 有人能告诉我记录器配置有什么问题吗? 谢谢!

  • 问题内容: 我只是想在我的项目中禁用Restlet的日志到stdout / stderr,并通过org.restlet.ext.slf4j提供的SLF4J门面转发所有Restlet日志。是否有捷径可寻? 问题答案: 首先,您必须配置SLF4J来拦截Restlet对java.util.logging API的所有调用,并将它们映射到SLF4J Facade的API上的调用。您只需将jul-to- s

  • 我正在将我的应用程序从JBoss 6 AS迁移到Wildfly 8.2.0 AS。我可以实现按预期创建应用程序日志,但需要独立/日志/服务器。日志文件中也充满了应用程序日志。我正在使用独立的完整ha。xml配置。任何人都可以建议一个选项,禁止将应用程序日志填充到服务器中。日志 以下部分摘自standalone-full-ha.xml: