在Laravel中使用事件記錄SQL查詢到日誌

在本文中,咱們將討論如何處理Laravel中的查詢日誌記錄。 假設你在閱讀本文時已經很是熟悉Laravel。 Laravel能夠選擇將全部在當前請求中運行的查詢記錄在內存中。 有一些方法可用於此。 你能夠查看 官方文檔之數據庫php

查詢記錄

若是,你想要將日誌文件保存在 storage/logs 目錄中。須要更新: app/Providers/AppServiceProvider.php 裏的 boot() 函數。laravel

<?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語句了,開發過程當中也方便咱們進行調試。sql

但願你喜歡這篇文章。若是有任何問題,請隨時添加評論。數據庫

更多PHP知識,能夠前往 PHPCastsapp

相關文章
相關標籤/搜索