Как отследить, сколько времени занимают некоторые монго запросы - PullRequest
1 голос
/ 18 июля 2011

У меня есть несколько запросов Mongo в формате JS, например:

db.hello.update(params,data);

Как мне запустить их таким образом, чтобы я мог точно определить, сколько времени они потратили на запуск позже?

1 Ответ

3 голосов
/ 18 июля 2011

Есть несколько вариантов:

  1. Выполняйте ваши обновления с safe = true, что приведет к блокировке вызова обновления до тех пор, пока mongod не запишет данные (точный синтаксис этого зависит от используемого вами драйвера). Вы можете добавить временный код вокруг своих обновлений в коде приложения и, при необходимости, войти в систему.

  2. Включите подробное (или более подробное) ведение журнала и используйте файлы журнала, чтобы определить время, потраченное во время ваших обновлений. Для получения дополнительной информации см. Документация по монго .

  3. Включить профилировщик, который хранит информацию о запросах и обновлениях в закрытой коллекции db.system.profile, включая время, затраченное на обслуживание запроса или обновления. Обратите внимание, что включение профилировщика влияет на производительность, но не сильно. См. Документы Монго по профилированию для получения дополнительной информации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...