菜单 学习猿地 - LMONKEY

VIP

开通学习猿地VIP

尊享10项VIP特权 持续新增

知识通关挑战

打卡带练!告别无效练习

接私单赚外块

VIP优先接,累计金额超百万

学习猿地私房课免费学

大厂实战课仅对VIP开放

你的一对一导师

每月可免费咨询大牛30次

领取更多软件工程师实用特权

入驻
3159
8

控制台实时查看 sql

原创
05/13 14:22
阅读数 2497

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 操作。

控制台实时查看 sql

安装

1.通过 composer 安装 (eleven26/listen-sql)。

composer require "eleven26/listen-sql:~1.0.4" --dev

2.注册 Service Provider

  • Laravel: 修改文件 config/app.phpLaravel 5.5+ 不需要

    'providers' => [
        //...
        Eleven26\ListenSql\ListenSqlServiceProvider::class,
    ],
  • Lumen: 修改文件 bootstrap/app.php

    $app->register(Eleven26\ListenSql\ListenSqlServiceProvider::class);

使用

php artisan listen-sql:start

到这一步,去页面刷新的时候,就可以在控制台看到 sql 语句了

发表评论

0/200
3159 点赞
8 评论
收藏
为你推荐 换一批