Files
animethemes-server/app/Http/Middleware/LogRequest.php
T
paranarimasu 5f915c86ea Local filesystem streaming (#431)
* feat: support streaming from local filesystems

* style: fix StyleCI findings
2022-08-09 18:54:43 -05:00

49 lines
1020 B
PHP

<?php
declare(strict_types=1);
namespace App\Http\Middleware;
use Closure;
use Illuminate\Http\Request;
use Illuminate\Http\Response;
use Illuminate\Support\Facades\Log;
use Illuminate\Support\Str;
/**
* Class LogRequest.
*/
class LogRequest
{
/**
* Handle an incoming request.
*
* @param Request $request
* @param Closure(Request): mixed $next
* @return mixed
*/
public function handle(Request $request, Closure $next): mixed
{
$requestId = Str::uuid()->toString();
Log::withContext([
'request-id' => $requestId,
]);
Log::info('Request Info', [
'method' => $request->method(),
'full-url' => $request->fullUrl(),
'ip' => $request->ip(),
'headers' => $request->headers->all(),
]);
$response = $next($request);
if ($response instanceof Response) {
$response->header('Request-Id', $requestId);
}
return $response;
}
}