sol229 发表于 2018-10-26 08:59:46

MongoDB查看当前操作db.currentOp()

  MongoDB查看当前操作db.currentOp()
  定义
  db.currentOp()
  返回数据库实例上正在运行的操作信息的文档。
  db.currentOp()方法有如下格式:
  db.currentOp()
  db.currentOp()方法可使用如下可选参数:
  参数            类型            描述   
  operations    布尔值或文档    可选。指定报告的操作。可以输入布尔值或一个文档。
  指定true,包含空闲连接和系统操作。
  指定带有查询条件的文档,只报告匹配条件的操作。
  行为
  如果传递true给db.currentOp(),该方法返回所有操作的信息,包括空闲连接和系统操作。
  db.currentOp(true)
  传递true等于传递了一个查询文档{ '$all': true }。
  如果传递一个查询文档给db.currentOp(),只返回匹配查询条件的当前操作。
  你也可以指定{ '$all: true }查询文档返回所有正在运行的操作信息,包括空闲连接和系统操作。如果
  查询文档包括 '$all':true 以及其他查询条件,只会应用 '$all': true。
  访问控制
  在系统上运行用户授权验证,用户必须有访问inprog行为的权限。
  示例
  下面的示例使用带有不同查询文档的db.currentOp()方法过滤输出。
  等待锁的写操作
  下面的示例返回正在等待锁的所有写操作信息:
db.currentOp(  
   {
  
   "waitingForLock" : true,
  
   $or: [
  
      { "op" : { "$in" : [ "insert", "update", "remove" ] } },
  
      { "query.findandmodify": { $exists: true } }
  
    ]
  
   }
  
)
  没有Yields的活动操作
  下面的示例返回所有活动的正在运行的还没有Yields的操作的信息:
db.currentOp(  
   {
  
   "active" : true,
  
   "numYields" : 0,
  
   "waitingForLock" : false
  
   }
  
)
  对于特定数据库的活动操作
  下面的示例返回对于数据库db1运行时间大于3秒的所有活动操作:
db.currentOp(  
   {
  
   "active" : true,
  
   "secs_running" : { "$gt" : 3 },
  
   "ns" : /^db1\./
  
   }
  
)
  活动索引操作
  下面的示例返回索引创建操作的信息:
db.currentOp(  
    {
  
      $or: [
  
      { op: "query", "query.createIndexes": { $exists: true } },
  
      { op: "insert", ns: /\.system\.indexes\b/ }
  
      ]
  
    }
  
)
  参见:https://docs.mongodb.org/manual/reference/method/db.currentOp/


页: [1]
查看完整版本: MongoDB查看当前操作db.currentOp()