千家信息网

Laravel/Lumen调试利器

发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,一、效果图二、功能点:1.当前请求的路由2.当前请求的参数3.当前一次请求运行的SQL,及SQL的运行时间。上面三点包含我们在本地环境开发过程中必备的基本调式信息。三、实现:1.开发运行环境的配置1.
千家信息网最后更新 2025年12月03日Laravel/Lumen调试利器

一、效果图


二、功能点:
1.当前请求的路由
2.当前请求的参数
3.当前一次请求运行的SQL,及SQL的运行时间。

上面三点包含我们在本地环境开发过程中必备的基本调式信息。


三、实现:
1.开发运行环境的配置

1.1打开.env文件 增加开关,建议开发环境设置为true,生产环境设置为falseAPP_DEBUG=true1.2设置LOG级别APP_LOG_LEVEL=debug1.3增加打印sql开关配置打开config目录的任意配置文件,我这里将配置防到database.php中'sql_debug' => env('APP_DEBUG'),



2.实现打印请求路由及参数

打开App\Http\Controllers\Controller.php文件增加构造方法:public function __construct(Request $request){    if (env('APP_DEBUG')) {        \Log::debug("\n\n");        \Log::debug('请求路由:' . $request->url());        $requestParameters = $request->all();        if (!empty($requestParameters)) {            \Log::debug('请求参数:' . var_export($requestParameters, true));        } else {            \Log::debug('请求参数:无');        }    }    }


3.实现打印运行的SQL语句

打开App\Providers\AppServiceProvider;boot方法中增加DB监听public function boot(){    //sql调试    $sql_debug = config('database.sql_debug');//注意这里获取开关配置    if ($sql_debug) {        DB::listen(function ($sql) {            foreach ($sql->bindings as $i => $binding) {                if ($binding instanceof \DateTime) {                    $sql->bindings[$i] = $binding->format('\'Y-m-d H:i:s\'');                } else {                    if (is_string($binding)) {                        $sql->bindings[$i] = "'$binding'";                    }                }            }            $query = str_replace(array('%', '?'), array('%%', '%s'), $sql->sql);            $query = vsprintf($query, $sql->bindings);            \Log::debug('运行SQL:' . $query);            \Log::debug('运行耗时:' . $sql->time . ' ms');        });    }}


四、验证并使用
终端下进到项目根目录,运行日志追踪命令

tail -f ./storage/logs/laravel.log


运行 配置 参数 环境 文件 路由 开发 方法 信息 功能 命令 建议 效果 效果图 日志 时间 根目录 目录 级别 终端 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 我国颁布的网络安全 中国数据库全文阅读格式 网络技术解决方案 七日杀为什么进服务器很慢 央行网络安全管理科 更名 开发中的数据库建模由谁做 二 网络安全等级保护 企业管理软件开发 公司 软件开发规划报告 aitd无法连接服务器怎么办 什么是网络技术零售价格 没有用到无线网络技术的应用 as400服务器图片 通信网络技术的发展历史 毕设答辩问数据库怎么做的 服务器管理器显示没有激活 网络安全防护报道 静安区特殊软件开发应用范围 重庆忠县安卓软件开发机构 国家安全机关的网络安全 数据库技术黄德才第三版 我国颁布的网络安全 服务器开关电源改装方法求回答 广州互联网软件开发价格表 酒店电竞电脑服务器 提升网络安全运行系数 聊天记录迁移后原来数据库 网络安全隔离卡切换被阻止启动 车载mcu软件开发 安卓天地劫服务器配置获取失败
0