![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/framework/DB/Logger/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ namespace Magento\Framework\DB\Logger; use Magento\Framework\DB\LoggerInterface; class LoggerProxy implements LoggerInterface { /** * Configuration group name */ const CONF_GROUP_NAME = 'db_logger'; /** * Logger alias param name */ const PARAM_ALIAS = 'output'; /** * Logger log all param name */ const PARAM_LOG_ALL = 'log_everything'; /** * Logger query time param name */ const PARAM_QUERY_TIME = 'query_time_threshold'; /** * Logger call stack param name */ const PARAM_CALL_STACK = 'include_stacktrace'; /** * File logger alias */ const LOGGER_ALIAS_FILE = 'file'; /** * Quiet logger alias */ const LOGGER_ALIAS_DISABLED = 'disabled'; /** * @var LoggerInterface */ private $logger; /** * @var FileFactory */ private $fileFactory; /** * @var QuietFactory */ private $quietFactory; /** * @var bool */ private $loggerAlias; /** * @var bool */ private $logAllQueries; /** * @var float */ private $logQueryTime; /** * @var bool */ private $logCallStack; /** * LoggerProxy constructor. * @param FileFactory $fileFactory * @param QuietFactory $quietFactory * @param bool $loggerAlias * @param bool $logAllQueries * @param float $logQueryTime * @param bool $logCallStack */ public function __construct( FileFactory $fileFactory, QuietFactory $quietFactory, $loggerAlias, $logAllQueries = true, $logQueryTime = 0.001, $logCallStack = true ) { $this->fileFactory = $fileFactory; $this->quietFactory = $quietFactory; $this->loggerAlias = $loggerAlias; $this->logAllQueries = $logAllQueries; $this->logQueryTime = $logQueryTime; $this->logCallStack = $logCallStack; } /** * Get logger object. Initialize if needed. * @return LoggerInterface */ private function getLogger() { if ($this->logger === null) { switch ($this->loggerAlias) { case self::LOGGER_ALIAS_FILE: $this->logger = $this->fileFactory->create( [ 'logAllQueries' => $this->logAllQueries, 'logQueryTime' => $this->logQueryTime, 'logCallStack' => $this->logCallStack, ] ); break; default: $this->logger = $this->quietFactory->create(); break; } } return $this->logger; } /** * Adds log record * * @param string $str * @return void */ public function log($str) { $this->getLogger()->log($str); } /** * @param string $type * @param string $sql * @param array $bind * @param \Zend_Db_Statement_Pdo|null $result * @return void */ public function logStats($type, $sql, $bind = [], $result = null) { $this->getLogger()->logStats($type, $sql, $bind, $result); } /** * @param \Exception $exception * @return void */ public function critical(\Exception $exception) { $this->getLogger()->critical($exception); } /** * @return void */ public function startTimer() { $this->getLogger()->startTimer(); } }