Rumah >rangka kerja php >Laravel >在Laravel中使用事件记录SQL查询到日志

在Laravel中使用事件记录SQL查询到日志

藏色散人
藏色散人ke hadapan
2019-11-15 15:17:183111semak imbas

在本文中,我们将讨论如何处理Laravel中的查询日志记录。 假设你在阅读本文时已经非常熟悉Laravel。 Laravel可以选择将所有在当前请求中运行的查询记录在内存中。 有一些方法可用于此。 

查询记录

如果,你想要将日志文件保存在 storage/logs 目录中。

需要更新: app/Providers/AppServiceProvider.php 里的 boot() 函数。

<?php
namespace App\Providers;
use Illuminate\Support\ServiceProvider;
use DB;
class AppServiceProvider extends ServiceProvider
{
    /**
     * Bootstrap any application services.
     *
     * @return void
     */
    public function boot()
    {
        // 新增代码
        DB::listen(function($query) {
            Log::info(
                $query->sql,
                $query->bindings,
                $query->time
            );
        });
    }
    /**
     * Register any application services.
     *
     * @return void
     */
    public function register()
    {
        //
    }
}

这样我们就可以记录执行过的SQL语句了,开发过程中也方便我们进行调试。

Atas ialah kandungan terperinci 在Laravel中使用事件记录SQL查询到日志. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:segmentfault.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam