首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何禁用mongodb java驱动的DefaultServerMonitor线程

如何禁用mongodb java驱动的DefaultServerMonitor线程
EN

Stack Overflow用户
提问于 2018-01-16 08:37:46
回答 1查看 2.8K关注 0票数 4

我将apache元模型添加到我的项目中。

代码语言:javascript
复制
<dependency>
    <groupId>org.apache.metamodel</groupId>
    <artifactId>MetaModel-full</artifactId>
    <version>5.0.0</version>
</dependency>

mongo-java-driver是作为依赖项出现的。

代码语言:javascript
复制
[INFO] |  +- org.apache.metamodel:MetaModel-mongodb-mongo3:jar:5.0.0:compile
[INFO] |  |  +- org.apache.metamodel:MetaModel-mongodb-common:jar:5.0.0:compile
[INFO] |  |  \- org.mongodb:mongo-java-driver:jar:3.4.3:compile
[INFO] |  +- org.apache.metamodel:MetaModel-mongodb-mongo2:jar:5.0.0:compile

然后我看到一些像这样的日志。

代码语言:javascript
复制
2018-01-16 02:33:09.467  INFO 15417 --- [  restartedMain] org.mongodb.driver.cluster               : Cluster created with settings {hosts=[localhost:27017], mode=SINGLE, requiredClusterType=UNKNOWN, serverSelectionTimeout='30000 ms', maxWaitQueueSize=500}
2018-01-16 02:33:09.512 DEBUG 15417 --- [  restartedMain] org.mongodb.driver.cluster               : Updating cluster description to  {type=UNKNOWN, servers=[{address=localhost:27017, type=UNKNOWN, state=CONNECTING}]
2018-01-16 02:33:09.521 DEBUG 15417 --- [localhost:27017] org.mongodb.driver.connection            : Closing connection connectionId{localValue:1}
2018-01-16 02:33:09.525  INFO 15417 --- [localhost:27017] org.mongodb.driver.cluster               : Exception in monitor thread while connecting to server localhost:27017

com.mongodb.MongoSocketOpenException: Exception opening socket
        at com.mongodb.connection.SocketStream.open(SocketStream.java:63)
        at com.mongodb.connection.InternalStreamConnection.open(InternalStreamConnection.java:115)
        at com.mongodb.connection.DefaultServerMonitor$ServerMonitorRunnable.run(DefaultServerMonitor.java:113)
        at java.lang.Thread.run(Thread.java:745)
Caused by: java.net.ConnectException: Connection refused (Connection refused)
        at java.net.PlainSocketImpl.socketConnect(Native Method)
        at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
        at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
        at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
        at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
        at java.net.Socket.connect(Socket.java:589)
        at com.mongodb.connection.SocketStreamHelper.initialize(SocketStreamHelper.java:57)
        at com.mongodb.connection.SocketStream.open(SocketStream.java:58)
        ... 3 common frames omitted

2018-01-16 02:33:09.527 DEBUG 15417 --- [localhost:27017] org.mongodb.driver.cluster               : Updating cluster description to  {type=UNKNOWN, servers=[{address=localhost:27017, type=UNKNOWN, state=CONNECTING, exception={com.mongodb.MongoSocketOpenException: Exception opening socket}, caused by {java.net.ConnectException: Connection refused (Connection refused)}}]

当我挖掘mongo-java-driver的源代码时,我看到mongo-java-driver启动了一个线程来监控默认的mongodb服务器。我不想排除mongodb驱动程序,但我如何禁用com.mongodb.connection.DefaultServerMonitor线程。

EN

回答 1

Stack Overflow用户

发布于 2018-01-16 19:52:42

经过进一步的搜索,我意识到这是spring-boot自动配置问题。我的应用程序是一个spring-boot应用程序。spring-boot auto config在classpath和start-up mongo-drive中找到mongos-java-driver jar。

添加了@EnableAutoConfiguration(exclude = {MongoAutoConfiguration.class})和mongo-java-driver不再启动。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48272614

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档