Skip to content

Instantly share code, notes, and snippets.

@jayan-blutui
Created April 11, 2023 23:12
Show Gist options
  • Save jayan-blutui/3ddb49c9082e9e0cc92ee29614a3e39f to your computer and use it in GitHub Desktop.
Save jayan-blutui/3ddb49c9082e9e0cc92ee29614a3e39f to your computer and use it in GitHub Desktop.
Log Response Time in Laravel
<?php
namespace App\Http\Middleware;
use Closure;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Log;
use Symfony\Component\HttpFoundation\Response;
class LogResponseTime
{
protected $startTime;
/**
* Handle an incoming request.
*
* @param \Closure(\Illuminate\Http\Request): (\Symfony\Component\HttpFoundation\Response) $next
*/
public function handle(Request $request, Closure $next): Response
{
$this->startTime = microtime(true);
return $next($request);
}
public function terminate(Request $request, Response $response): void
{
$responseTime = microtime(true) - $this->startTime;
Log::info('Response time: ' . $responseTime, ['request' => ['url' => $request->getUri()]]);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment