Last active
March 26, 2016 15:03
-
-
Save MagePsycho/2779a6a98a516967d077 to your computer and use it in GitHub Desktop.
Magento 2 - Custom Logger
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
namespace MagePsycho\Demo\Helper; | |
/** | |
* @category MagePsycho | |
* @package MagePsycho_Demo | |
* @author [email protected] | |
* @website http://www.magepsycho.com | |
* @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0) | |
*/ | |
class Data extends \Magento\Framework\App\Helper\AbstractHelper | |
{ | |
const XML_PATH_ENABLED = 'magepsycho_demo/general/enabled'; | |
const XML_PATH_DEBUG = 'magepsycho_demo/general/debug'; | |
/** | |
* @var \Psr\Log\LoggerInterface | |
*/ | |
protected $_logger; | |
/** | |
* @var \Magento\Framework\Module\ModuleListInterface | |
*/ | |
protected $_moduleList; | |
/** | |
* @param \Magento\Framework\App\Helper\Context $context | |
* @param \MagePsycho\Demo\Logger\Logger $logger | |
* @param \Magento\Framework\Module\ModuleListInterface $moduleList | |
*/ | |
public function __construct( | |
\Magento\Framework\App\Helper\Context $context, | |
\MagePsycho\Demo\Logger\Logger $logger, | |
\Magento\Framework\Module\ModuleListInterface $moduleList | |
) { | |
$this->_logger = $logger; | |
$this->_moduleList = $moduleList; | |
parent::__construct($context); | |
} | |
public function getDebugStatus() | |
{ | |
return $this->scopeConfig->getValue( | |
self::XML_PATH_DEBUG, | |
\Magento\Store\Model\ScopeInterface::SCOPE_STORE | |
); | |
} | |
/** | |
* | |
* @param $message | |
* @param bool|false $useSeparator | |
*/ | |
public function log($message, $useSeparator = false) | |
{ | |
if ($this->getDebugStatus()) { | |
if ($useSeparator) { | |
$this->_logger->debug(str_repeat('=', 100)); | |
} | |
$this->_logger->debug($message); | |
} | |
} | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?xml version="1.0"?> | |
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd"> | |
<type name="MagePsycho\Demo\Logger\Handler"> | |
<arguments> | |
<argument name="filesystem" xsi:type="object">Magento\Framework\Filesystem\Driver\File</argument> | |
</arguments> | |
</type> | |
<type name="MagePsycho\Demo\Logger\Logger"> | |
<arguments> | |
<argument name="name" xsi:type="string">DemoLoggerHandler</argument> | |
<argument name="handlers" xsi:type="array"> | |
<item name="debug" xsi:type="object">MagePsycho\Demo\Logger\Handler</item> | |
</argument> | |
</arguments> | |
</type> | |
</config> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
namespace MagePsycho\Demo\Logger; | |
class Handler extends \Magento\Framework\Logger\Handler\Base | |
{ | |
/** | |
* Logging level | |
* @var int | |
*/ | |
protected $loggerType = Logger::DEBUG; | |
/** | |
* File name | |
* @var string | |
*/ | |
protected $fileName = '/var/log/magepsycho_demo.log'; | |
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
namespace MagePsycho\Demo\Logger; | |
class Logger extends \Monolog\Logger | |
{ | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment