/**
  * @param int $logId
  * @return mixed
  * @throws \Magento\Framework\Exception\NoSuchEntityException
  */
 public function getById($logId)
 {
     $log = $this->logFactory->create();
     $this->resource->load($log, $logId);
     if (!$log->getId()) {
         throw new \Magento\Framework\Exception\NoSuchEntityException(__('AccessLog with id "%1" does not exist.', $logId));
     }
     return $log;
 }
Esempio n. 2
0
 /**
  * Observer for controller_front_send_response_before event fired in lib/internal/Magento/Framework/App/Http.php.
  *
  * $eventParams = ['request' => $this->_request, 'response' => $this->_response];
  *
  * request => Magento\Framework\App\Request\Http
  * response => Magento\Framework\Webapi\Rest\Response\Proxy
  *
  *
  * @param \Magento\Framework\Event\Observer $observer
  * @return $this
  */
 public function execute(\Magento\Framework\Event\Observer $observer)
 {
     /* @var $request \Magento\Framework\App\Request\Http */
     $request = $observer->getEvent()->getRequest();
     $areaCode = $this->areaList->getCodeByFrontName($request->getFrontName());
     /**
      * Stop execution if module is not active
      * or if the current request falls within excluded areas
      * or if the current request falls within excluded actions
      */
     if (!$this->helper->isFoggylineSentinelActive() or in_array($areaCode, $this->helper->getExcludeAreas()) or in_array($request->getFullActionName(), $this->helper->getExcludeActions())) {
         //return $this;
     }
     /* @var $log \Foggyline\Sentinel\Model\AccessLog */
     $log = $this->log->create();
     $log->setRequestId($this->helper->getHttpRequestUniqueId());
     if ($this->authSession && $this->authSession->getUser()) {
         $user = $this->authSession->getUser();
         $log->setUserId($user->getId());
         $log->setUserUsername($user->getUserName());
         $log->setUserEmail($user->getEmail());
         $log->setUserName($user->getName());
     }
     $log->setActionName($request->getActionName());
     $log->setFullActionName($request->getFullActionName());
     $log->setClientIp($request->getClientIp());
     $log->setRequestString($request->getRequestString());
     $log->setRequestMethod($request->getMethod());
     $log->setHttpGetParams($_GET);
     $log->setHttpPostParams($_POST);
     $log->setHttpFilesParams($_FILES);
     $log->setModuleName($request->getModuleName());
     $log->setControllerModule($request->getControllerModule());
     $log->setArea($areaCode);
     try {
         $log->save();
     } catch (\Exception $e) {
         $this->logger->critical($e);
     }
     return $this;
 }