Проблема заключается в том, что существует разница во времени выполнения кода, выполняемого внутри метода ::listen()
, и строк до и после.
Код внутри будет выполняться при отправке запроса, в то время как другой код выполняется при запуске вашего приложения .Таким образом, после привязки функции к фасаду базы данных запрос еще не выполняется, и $logs
будет пустым.
Для ведения журнала
Вы можете попробоватьСлушатель БД записывает запросы в файл или просматривает этот пост: https://stackoverflow.com/a/27753889/2142071
Для добавления к запросу
Внутри метода listen
используйте request()->request->add(['sql', $query->sql]);
чтобы переменная sql
была доступна в объекте запроса.