这是我的java类,它将连接到Mongo DB并获取数据。
public class Test
{
public static void main(String args[])
{
DBCursor cursor = null;
DBCollection coll = null;
BasicDBObject query = new BasicDBObject();
String symbol = args[0];
query.put("symbol", "" + symbol);
cursor = coll.find(query);
int count = coll.find(query).count();
}
}
我的问题是,是否可以通过此程序了解对Mongo DB进行了多少查询?
我想知道的是,是否使用以下语句对Mongo DB进行了两次调用
cursor = coll.find(query);
int count = coll.find(query).count();
是否可以通过以上方式知道两个调用是否与Mongo DB结合?
答案 0 :(得分:3)
您可以使用MongoDB 概要分析查看针对服务器执行的查询。有关详细信息,请参阅MongoDB文档:http://docs.mongodb.org/manual/reference/method/db.setProfilingLevel/
简而言之:在您的shell中执行db.setProfilingLevel(2)
并查看服务器上的system.profile
集合。
答案 1 :(得分:1)
如果这是连接到MongoDB的唯一程序,您可以打开分析:http://docs.mongodb.org/manual/tutorial/manage-the-database-profiler/
你可以将性能分析提升到最高级别(2),但是如果这只是一个应用程序,那么可能会有(如在PHP中)一个你可以使用的MongoLog类(http://php.net/manual/en/class.mongolog.php)。