我在日志/development.log中经常看到这个,我想知道这个查询是否实际上被执行在我的数据库中:
MONGODB (0ms) socialcrunch_development['tags'].find({:_id=>"secrets"}).limit(-1).sort([[:_id, :asc]])
我该如何查看正在执行的MongoDB查询,以便我可以计数它们?这些查询通常都是.find命令吗?还是我需要寻找其他内容?
我在日志/development.log中经常看到这个,我想知道这个查询是否实际上被执行在我的数据库中:
MONGODB (0ms) socialcrunch_development['tags'].find({:_id=>"secrets"}).limit(-1).sort([[:_id, :asc]])
我该如何查看正在执行的MongoDB查询,以便我可以计数它们?这些查询通常都是.find命令吗?还是我需要寻找其他内容?
打印所有活动阅读:
db.currentOp().inprog.forEach(
function(d){
if(d.waitingForLock && d.lockType != "read")
printjson(d)
})
打印所有活动写入:
db.currentOp().inprog.forEach(
function(d){
if(d.waitingForLock && d.lockType != "write")
printjson(d)
})
如果你想更加具体,可以使用currentOp.op
按特定操作类型(插入、更新、删除等)进行筛选。
请查看MongoDB.org文档中以下页面以获取更多信息: http://docs.mongodb.org/manual/reference/current-op/
http://www.mongovue.com/ 提供良好的用户界面,用于检查服务器的运行时状态。
SET global general_log = 1;SET global log_output = 'table';
的东西,然后查询我的应用程序所做的查询(甚至可以按查询文本进行过滤)。这对于mysql帮助了我很大的忙,以便查看我的应用程序实际查询了什么,但是我不知道如何在mongodb中做到这一点,而且在谷歌上搜索它会让我进入类似于这个页面的活动查询。 - HMR