Your IP : 127.0.0.1
<?php
/**
* ||GEISSWEB| EU VAT Enhanced
*
* NOTICE OF LICENSE
*
* This source file is subject to the GEISSWEB End User License Agreement
* that is available through the world-wide-web at this URL: https://www.geissweb.de/legal-information/eula
*
* DISCLAIMER
*
* Do not edit this file if you wish to update the extension in the future. If you wish to customize the extension
* for your needs please refer to our support for more information.
*
* @copyright Copyright (c) 2015 GEISS Weblösungen (https://www.geissweb.de)
* @license https://www.geissweb.de/legal-information/eula GEISSWEB End User License Agreement
*/
declare(strict_types=1);
namespace Geissweb\Euvat\Logger;
use Magento\Framework\App\Config\ScopeConfigInterface;
use Magento\Store\Model\ScopeInterface;
/**
* For easy debug on production
*/
class Logger extends \Monolog\Logger
{
/**
* @var ScopeConfigInterface
*/
public $scopeConfig;
/**
* @var bool
*/
private $isDebugEnabled;
/**
* Init logging
*
* @param ScopeConfigInterface $scopeConfig
* @param string $name
* @param array $handlers
*/
public function __construct(
ScopeConfigInterface $scopeConfig,
$name = 'VAT',
$handlers = []
) {
parent::__construct($name, $handlers, []);
$this->scopeConfig = $scopeConfig;
$this->isDebugEnabled = (bool)$this->scopeConfig->getValue(
'euvat/mod_info/debug',
ScopeInterface::SCOPE_STORE
) === true;
}
/**
* To stay compatible with different Magento Versions (and their corresponding monolog/logger version)
*
* @param string $message
* @param array $context
*
* @return bool
*/
public function customLog(string $message, array $context = []) : bool
{
if ($this->isDebugEnabled) {
return parent::addRecord(static::DEBUG, $message, $context);
}
return false;
}
}