Пример debug (дебага) запросов Doctrina Leave a comment

Иногда используя доктрину, нужно посмотреть работу бизнес логики в виде последовательности запросов не углубляюсь в весь код проекта. Например необходимо разобраться с запросами которые идут к базе данных во время определённой транзакции в коде вашего приложения. Для таких целей в Doctrina предусмотрен механизм логирования, который позволяет получить на вход в методе “startQuery” строку с SQL запросом, параметры переданные SQL запросу.

Для получения нужного результата, с особенностью бизнес логики кода, достаточно отнаследоваться от класса Доктирны “\Doctrine\DBAL\Logging\EchoSQLLogger” и переопределить два метода.

Для того что бы вызвать указанный ниже класс, достаточно в коде вашего проекта добавить следующее:

Где $entityManager это текущие объект \Doctrine\ORM\EntityManager

В результате работы логера, у вас появится файлик “logs/doctrine_log.log” с записанными данными запросов и цепочки вызовов методов в файлах с номером строки.

При желании можно исключить, не нужные цепочки файлов, добавив только те что нужно в свойство класса protected $files (указывается только название_файла.php)

 

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *