2017-07-30 7 views
1

私のサーバーに電話をかけるときに、URLとパラメータをログまたはコンソールに記録します。LaravelですべてのリクエストURLを取得するには

以下のコードをRoutes \ api.phpに入れて、すべてのデータベースリクエストを取得できます。 HTTPリクエストに対しても同じことが可能ですか?

//Capture sql statements 
\Event::listen('Illuminate\Database\Events\QueryExecuted', function ($query) { 
    error_log($query->sql); 
}); 
+1

Illuminate \ Routing \ Events \ RouteMatchedのイベントがあります。おそらくそのイベントを使用できますか?もしそうでなければ、私はミドルウェアを使うだけです。 –

答えて

2

あなたは

のApp \のHttp \ミドルウェア\ LogRoutes.php

namespace App\Http\Middleware; 

use Closure; 

class LogRoutes 
{ 
    /** 
    * Handle an incoming request. 
    * 
    * @param \Illuminate\Http\Request $request 
    * @param \Closure $next 
    * @return mixed 
    */ 
    public function handle($request, Closure $next) 
    { 
     dd($request->getRequestUri()); 
     return $next($request); 
    } 
} 

が、その後アプリ\カーネルに追加し、新たなミドルウェアを作成するミドルウェア

でそれを行うことができます。 ph

protected $middlewareGroups = [ 
    'web' => [ 
     // first in this array! 
     App\Http\Middleware\LogRoutes::class, 
     ... 
    ] 
] 
関連する問題