【问题标题】:MongoSocketOpenException when starting MongoClient with mongo-java-driver使用 mongo-java-driver 启动 MongoClient 时出现 MongoSocketOpenException
【发布时间】:2016-06-06 08:18:20
【问题描述】:

我正在使用本地 MongoDB 数据库在 Windows 上运行 java Web 服务器 mongo-java-driver 3.2.2

在启动服务器时,我创建了一个新的 MongoClient:

MongoClient mongoClient = new MongoClient("localhost:27017", options);

(选项包含一些 CodecRegistries)

在运行服务器后,我得到以下日志:

com.mongodb.diagnostics.logging.SLF4JLogger 信息

INFO: 连接到服务器 localhost:27017 时监控线程出现异常

com.mongodb.MongoSocketOpenException: 异常打开套接字

...

但是,几秒钟后,服务器启动,我得到以下日志:

com.mongodb.diagnostics.logging.SLF4JLogger 信息

INFO: 打开连接 [connectionId{localValue:2, serverValue:1}] 到 localhost:27017

com.mongodb.diagnostics.logging.SLF4JLogger 信息

INFO:监视器线程成功连接到服务器并带有描述 服务器描述{地址=本地主机:27017,类型=独立, state=CONNECTED, ok=true, version=ServerVersion{versionList=[3, 2, 0]},minWireVersion=0,maxWireVersion=4,maxDocumentSize=16777216, roundTripTimeNanos=1691281}

我找不到客户端第一次连接失败然后恢复的原因,但这种行为似乎与每次运行都是一致的。

有没有人遇到过类似的行为?如果是这样,我该如何解决这个问题?

如果需要,我会提供任何其他信息。

【问题讨论】:

    标签: java mongodb sockets exception mongo-java-driver


    【解决方案1】:

    log4f.properties 中关闭mongodb 记录器,例如:

    log4j.logger.org.mongodb = OFF
    

    注意它是org.mongodb 而不是com.mongodb

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-11-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多