AssignTraceId.php 498 B

12345678910111213141516171819202122
  1. <?php
  2. namespace App\Http\Middleware;
  3. use Illuminate\Http\Request;
  4. use Illuminate\Support\Facades\Context;
  5. use Illuminate\Support\Str;
  6. use Symfony\Component\HttpFoundation\Response;
  7. class AssignTraceId {
  8. public function handle(Request $request, \Closure $next) {
  9. $traceId = Str::orderedUUid()->toString();
  10. Context::add('x-trace-id', $traceId);
  11. $response = $next($request);
  12. $response->headers->set('X-Trace-Id', $traceId);
  13. return $response;
  14. }
  15. }