控制台实时查看 sql
listen-sql 一个在控制台看到实时 sql 操作的工具
**2019-09-09 23:37 修复了命名空间错误
在 Laravel 中打印 sql,以往的做法往往是,通过 DB::listen
监听,然后通过 Log::info
写入到 log 中。
这样写入的 log,我们想查看往往是去 storage 文件夹下找到当天的 log 文件,然后打开。有个不好的地方是,如果在编辑器打开,往往不会实时更新。请求完之后,可能需要切到其他 tab 再切换回来才会更新。同时,太多的 sql 日志会和其他 log 混杂在一起,会显得有些混乱。
除此之外,也可以 tail -f storage/logs/xx.log
来实时查看 log 的输出。这样有个不好的地方是,如果在 config/app.php
定义了 log => 'daily'
,每天都要输入一个新的文件名。
现在,我们可以只使用一个命令来实现监听应用里的 sql 操作。
安装
1.通过 composer 安装 (eleven26/listen-sql)。
composer require "eleven26/listen-sql:~1.0.4" --dev
2.注册 Service Provider
-
Laravel
: 修改文件config/app.php
,Laravel 5.5+
不需要'providers' => [ //... Eleven26\ListenSql\ListenSqlServiceProvider::class, ],
-
Lumen
: 修改文件bootstrap/app.php
$app->register(Eleven26\ListenSql\ListenSqlServiceProvider::class);
使用
php artisan listen-sql:start
到这一步,去页面刷新的时候,就可以在控制台看到 sql
语句了
本作品采用《CC 协议》,转载必须注明作者和本文链接
有一个工具叫做debugbar
:+1:
好用,支持大佬
大佬高产,都很好用 :+1:
支持,多一种选择未尝不好
报这个错了
挺好的,不过composer require 的时候应该加一个-dev
我用telescope
:+1: