Количество запросов к базе данных в Doctrine2 - PullRequest
7 голосов
/ 23 января 2011

Как я могу получить количество запросов к базе данных в Doctrine2? Мне это нужно только для статистики и чтобы узнать больше, как работает доктрина, сколько запросов генерируется в разных ситуациях. Но как это сделать?

Ответы [ 2 ]

17 голосов
/ 23 января 2011
$stack = new \Doctrine\DBAL\Logging\DebugStack();
$entityManager->getConfiguration()->setSQLLogger($stack);
// do stuff
var_dump($stack);
3 голосов
/ 08 октября 2014

Просто чтобы добавить к принятому ответу.

Чтобы сделать это из контекста контроллера Symfony 2.x:

$doctrine = $this->get('doctrine');
$doctrine = $this->getDoctrine();    
$em = $doctrine->getConnection();

// $doctrine->getManager() did not work for me 
// (resulted in $stack->queries being empty array)

$stack = new \Doctrine\DBAL\Logging\DebugStack();
$em->getConfiguration()->setSQLLogger($stack);


... // do some queries

var_dump($stack->queries);

Благодаря этому сообщению: http://vvv.tobiassjosten.net/symfony/logging-doctrine-queries-in-symfony2/

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