我需要一种方法来跟踪我的mongodb系统上的查询性能,运行时,统计信息等。
我试图使用分析器...现在,因为我有分片。我通过在集群中的每个mongod实例上运行以下命令来启用性能分析:
db.setProfilingLevel(2)
分析器正在运行。
但是当我试图在我的系统上找到正在运行的查询(" find()")时,我找不到任何东西! 我在mongod上运行:
db.system.profile.find({"op":"query"}).limit(1).pretty()
,结果集为:
{
"op" : "query",
"ns" : "test.system.profile",
"query" : {
"op" : {
"ns" : "query"
}
},
"ntoreturn" : 0,
"ntoskip" : 0,
"nscanned" : 2931,
"nscannedObjects" : 2931,
"keyUpdates" : 0,
"numYield" : 0,
"lockStats" : {
"timeLockedMicros" : {
"r" : NumberLong(1261),
"w" : NumberLong(0)
},
"timeAcquiringMicros" : {
"r" : NumberLong(2),
"w" : NumberLong(1)
}
},
"nreturned" : 0,
"responseLength" : 20,
"millis" : 1,
"execStats" : {
"type" : "COLLSCAN",
"works" : 2933,
"yields" : 22,
"unyields" : 22,
"invalidates" : 0,
"advanced" : 0,
"needTime" : 2932,
"needFetch" : 0,
"isEOF" : 1,
"docsTested" : 2931,
"children" : [ ]
},
"ts" : ISODate("2016-06-08T11:30:11.029Z"),
"client" : "127.0.0.1",
"allUsers" : [ ],
"user" : ""
}
我想获得用户\应用程序正在运行的查询...这些查询必须是"找到"查询...
谢谢:)