Mongodb:是否可以知道对Mongodb进行了多少次数据库调用?

时间:2012-12-27 09:13:31

标签: mongodb

这是我的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结合?

2 个答案:

答案 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)。