gpt4 book ai didi

php - Laravel 5.3 - 如何记录页面上的所有查询?

转载 作者:IT王子 更新时间:2023-10-29 00:10:50 24 4
gpt4 key购买 nike

我和我的团队正在进行一个相当大的项目。查询无处不在 - 在 Controller 中,在 View 中的 View Composer (延迟加载)以及可能在其他一些服务中。跟踪这一切变得越来越困难,目前页面加载速度相当慢。

我应该在哪里放置\DB::enableQueryLog() 和\DB::getQueryLog() 来记录所有查询并转储它们?基本上,我在代码中寻找在任何查询发生之前发生的某个地方(放置 enableQueryLog()),并且我在寻找在 View 呈现之后发生的地方(转储 getQueryLog())。

解决这个问题的好方法是什么?

提前致谢。

最佳答案

完美的例子来了:

https://laravel.com/docs/5.3/database#listening-for-query-events

打开 app\Providers\AppServiceProvider.php 并将以下内容添加到 Boot() 函数中:

DB::listen(function ($query) {
var_dump([
$query->sql,
$query->bindings,
$query->time
]);
});

关于php - Laravel 5.3 - 如何记录页面上的所有查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41163199/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com