vendor/shopware/core/Framework/Log/LoggingService.php line 48

Open in your IDE?
  1. <?php declare(strict_types=1);
  2. namespace Shopware\Core\Framework\Log;
  3. use Monolog\Logger;
  4. use Shopware\Core\Framework\Event\BusinessEvent;
  5. use Shopware\Core\Framework\Event\BusinessEvents;
  6. use Shopware\Core\Framework\Event\FlowLogEvent;
  7. use Shopware\Core\Framework\Feature;
  8. use Symfony\Component\EventDispatcher\EventSubscriberInterface;
  9. /**
  10.  * @deprecated tag:v6.5.0 - reason:becomes-internal - EventSubscribers will become internal in v6.5.0
  11.  */
  12. class LoggingService implements EventSubscriberInterface
  13. {
  14.     /**
  15.      * @deprecated tag:v6.5.0 - property will be private
  16.      */
  17.     protected Logger $logger;
  18.     /**
  19.      * @deprecated tag:v6.5.0 - property will be removed
  20.      *
  21.      * @var array<string, string>
  22.      */
  23.     protected array $subscribedEvents;
  24.     /**
  25.      * @deprecated tag:v6.5.0 - property will be private
  26.      */
  27.     protected string $environment;
  28.     /**
  29.      * @internal
  30.      */
  31.     public function __construct(
  32.         string $kernelEnv,
  33.         Logger $logger
  34.     ) {
  35.         $this->logger $logger;
  36.         $this->environment $kernelEnv;
  37.     }
  38.     /**
  39.      * @deprecated tag:v6.5.0 - Function is deprecated and will be removed.
  40.      */
  41.     public function logBusinessEvent(BusinessEvent $event): void
  42.     {
  43.         Feature::triggerDeprecationOrThrow(
  44.             'v6.5.0.0',
  45.             Feature::deprecatedMethodMessage(__CLASS____METHOD__'v6.5.0.0''logFlowEvent()')
  46.         );
  47.         $innerEvent $event->getEvent();
  48.         $additionalData = [];
  49.         $logLevel Logger::DEBUG;
  50.         if ($innerEvent instanceof LogAwareBusinessEventInterface) {
  51.             $logLevel $innerEvent->getLogLevel();
  52.             $additionalData $innerEvent->getLogData();
  53.         }
  54.         $this->logger->addRecord(
  55.             $logLevel,
  56.             $innerEvent->getName(),
  57.             [
  58.                 'source' => 'core',
  59.                 'environment' => $this->environment,
  60.                 'additionalData' => $additionalData,
  61.             ]
  62.         );
  63.     }
  64.     public function logFlowEvent(FlowLogEvent $event): void
  65.     {
  66.         $innerEvent $event->getEvent();
  67.         $additionalData = [];
  68.         $logLevel Logger::DEBUG;
  69.         if ($innerEvent instanceof LogAware) {
  70.             $logLevel $innerEvent->getLogLevel();
  71.             $additionalData $innerEvent->getLogData();
  72.         }
  73.         $this->logger->addRecord(
  74.             $logLevel,
  75.             $innerEvent->getName(),
  76.             [
  77.                 'source' => 'core',
  78.                 'environment' => $this->environment,
  79.                 'additionalData' => $additionalData,
  80.             ]
  81.         );
  82.     }
  83.     public static function getSubscribedEvents(): array
  84.     {
  85.         if (Feature::isActive('v6.5.0.0')) {
  86.             return [FlowLogEvent::NAME => 'logFlowEvent'];
  87.         }
  88.         return [BusinessEvents::GLOBAL_EVENT => 'logBusinessEvent'];
  89.     }
  90. }