可以将监听到sql预处理语句、绑定的参数和运行的毫秒数,写入日志文件:Laravel 日志目录为 storage/logs

debugbar不能监听到ajax的sql请求,而使用 \DB::listen () 则可以

1.可以将监听方法写入服务提供者,进行全局sql监听

服务提供者是所有 Laravel 应用程序引导启动的中心所在。包括您自己的应用程序,以及所有的 Laravel 核心服务,都是通过服务提供者引导启动的。

2.日志内容形式如下:

3. 代码段如下:

\DB::listen(function($query){
            $sql = $query->sql; //获取预处理sql语句
            $bindings = $query->bindings; //获取预处理语句绑定的参数
            $time = $query->time; //获取sql语句运行的毫秒数

        if ($time>10) {
            //慢于10ms的sql才写入日志文件
            \Log::debug(var_export(compact('sql','bindings','time'), true));
        }
    });
我 秦始皇 打钱