可以将监听到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));
}
});
本文链接:https://www.23thi.com/459.html
除非特殊声明,本站文章均为原创,转载请务必保留本文链接