Laravel

[Laravel] 実行されたSQLをログに吐き出す

More than 1 year has passed since last update.


実行された SQL をログに吐き出す


  • 実行されている SQL を見たい


Laravel5.1

<?php namespace App\Providers;

use Illuminate\Support\ServiceProvider;

class AppServiceProvider extends ServiceProvider
{
/**
* Bootstrap any application services.
*
* @return void
*/

public function boot()
{
\DB::listen(function ($sql, $bindings, $time) {
// ログ吐く処理
});
}

/**
* Register the service provider.
*
* @return void
*/

public function register()
{
}
}


Laravel5.2


  • 5.2 で変わった

<?php namespace App\Providers;

use Illuminate\Support\ServiceProvider;

class AppServiceProvider extends ServiceProvider
{
/**
* Bootstrap any application services.
*
* @return void
*/

public function boot()
{
\DB::listen(function ($query) {
// $query->sql
// $query->bindings
// $query->time

// ログ吐く処理
});
}

/**
* Register the service provider.
*
* @return void
*/

public function register()
{
}
}