当前位置:Gxlcms > 数据库问题 > laravel 添加sql日志

laravel 添加sql日志

时间:2021-07-01 10:21:17 帮助过:22人阅读

laravel 打印sql语句非常的麻烦而且不方便,所以就想弄一个sql日志来方便调试排除

首先到 

EventServiceProvider.php (监听文件)
里 赋值日志开关常数
define(‘SQL_LOG‘, env(‘SQL_LOG‘, false));
然后到
$listen 里增加
SQL_LOG ? \Illuminate\Database\Events\QueryExecuted::class : ‘‘ => [
\App\Listeners\ExampleListener::class // 这个类就是要我们自己写的监听方法
],

然后到
ExampleListener里写写入sql 的方法
public function handle(QueryExecuted $event)
{
$sql = str_replace("?", "‘%s‘", $event->sql);
$log = vsprintf($sql, $event->bindings);
$log = ‘[‘ . date(‘Y-m-d H:i:s‘) . ‘] ‘ . $log . "\r\n";
$filepath = storage_path(‘logs\sql.log‘);
file_put_contents($filepath, $log, FILE_APPEND);
}

laravel 添加sql日志

标签:efi   data   ora   增加   class   文件   bsp   eve   cep   

人气教程排行