File "MonoLogger.php"

Full Path: /home/attunedd/public_html/byp/wp-content/plugins/wpide/App/Services/Logger/Adapters/MonoLogger.php
File size: 760 bytes
MIME-type: text/x-php
Charset: utf-8

<?php

namespace WPIDE\App\Services\Logger\Adapters;

use WPIDE\App\Services\Logger\LoggerInterface;
use WPIDE\App\Services\Service;
use Monolog\ErrorHandler;
use Monolog\Logger;

class MonoLogger implements Service, LoggerInterface
{
    protected $logger;

    public function init(array $config = [])
    {
        $this->logger = new Logger('default');

        foreach ($config['monolog_handlers'] as $handler) {
            $this->logger->pushHandler($handler());
        }

        $handler = new ErrorHandler($this->logger);
        $handler->registerErrorHandler([], true);
        $handler->registerFatalHandler();
    }

    public function log(string $message, int $level = Logger::INFO)
    {
        $this->logger->log($level, $message);
    }
}