如何使用API​​运行Mongo数据库db.currentOp(true)命令

时间:2017-03-09 11:23:02

标签: mongodb

实现下面提到的shell命令

  

replicaset:PRIMARY> db.currentOp()

Am Using the Mongo Java API I can run the currentOp() command like this:   
MongoClient mongoClient = null;       
mongoClient = new MongoClient( "127.0.0.1", 27017);       
db = mongoClient.getDB("admin");       
db.command("currentOp");     

But I only get details of current operations. I need to get details of idle connections too.  
With reference with this

https://docs.mongodb.com/v3.0/reference/method/db.currentOp/#currentop-examples

行为

如果将true传递给db.currentOp(),该方法将返回有关所有操作的信息,包括对空闲连接和系统操作的操作。

db.currentOp(true)传入true相当于传入{'$ all':true}的查询文档。

如果将查询文档传递给db.currentOp(),则输出仅返回与查询匹配的当前操作的信息。您可以在输出字段上查询。参见示例。

您还可以指定{'$ all':true}查询文档,以返回有关所有正在进行的操作的信息,包括对空闲连接和系统操作的操作。如果查询文档包含'$ all':true以及其他查询条件,则只应用'$ all':true。

在Mongo命令shell中,我们有像

这样的方法
  

replicaset:PRIMARY> db.currentOp(true)

While using this command in JAVA API code      
db.command("currentOp(true)");           
I get an exception like this:     
>"ok" : 0.0 , "errmsg" : "no such command: 'currentOp(true)', bad cmd: '{ currentOp(true): true }'" , "code" : 59}

请建议解决方案

0 个答案:

没有答案