src/Logger/BgRequestProcessor.php line 39

Open in your IDE?
  1. <?php
  2. namespace App\Logger;
  3. use App\Utils\Constantes;
  4. use App\Utils\JWTEncoder;
  5. use Symfony\Component\HttpFoundation\Request;
  6. use Symfony\Component\HttpFoundation\Session\SessionInterface;
  7. class BgRequestProcessor
  8. {
  9.     // private $session;
  10.     // private $sessionId;
  11.     private $jwtFactory;
  12.     private $request;
  13.     public function __construct()
  14.     {
  15.         // $this->session = $session;
  16.         $this->jwtFactory JWTEncoder::getInstance();
  17.         $this->request Request::createFromGlobals();
  18.     }
  19.     // this method is called for each log record; optimize it to not hurt performance
  20.     public function __invoke(array $record)
  21.     {
  22.         $apiKey $this->request->headers->get(Constantes::AUTH_TOKEN);
  23.         $dataToken $this->jwtFactory->decode($apiKey);
  24.         // if (!$this->session->isStarted()) {
  25.         //     return $record;
  26.         // }
  27.         // if (!$this->sessionId) {
  28.         //     $this->sessionId = substr($this->session->getId(), 0, 8) ?: '????????';
  29.         // }
  30.         // $record['extra']['token'] = $this->sessionId.'-'.substr(uniqid('', true), -8);
  31.         // var_dump('OK');die;
  32.         // dump($dataToken);die;
  33.         $record['extra']['user']['id'] = @$dataToken['id'] ?: '';
  34.         $record['extra']['user']['username'] = @$dataToken['username'] ?: '';
  35.         $record['extra']['user']['roles'] = @$dataToken['roles'] ?: '';
  36.         $record['extra']['entity'] = @$dataToken['codeClient'] ?: '';
  37.         // $record['extra']['entity'] = 'bgpartners';
  38.         $record['extra']['service'] = 'Service Insurance';
  39.         // var_dump($dataToken);
  40.         // var_dump($record);
  41.         // die;
  42.         return $record;
  43.     }
  44. }