b374k
m1n1 1.01
Apache/2.4.41 (Ubuntu)
Linux vmi616275.contaboserver.net 5.4.0-84-generic #94-Ubuntu SMP Thu Aug 26 20:27:37 UTC 2021 x86_64
uid=33(www-data) gid=33(www-data) groups=33(www-data)
server ip : 62.171.164.128 | your ip : 127.0.0.1
safemode OFF
 >  / home / dev2.destoffenstraat.com / vendor / magento / framework / DB / Logger /
Filename/home/dev2.destoffenstraat.com/vendor/magento/framework/DB/Logger/LoggerProxy.php
Size3.61 kb
Permissionrw-r--r--
Ownerroot : root
Create time17-Aug-2025 10:26
Last modified07-Jan-2021 21:08
Last accessed22-Aug-2025 14:47
Actionsedit | rename | delete | download (gzip)
Viewtext | code | image
<?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();
}
}