Skip to content
Snippets Groups Projects
Verified Commit 8c87a648 authored by Bartek Jaskulski's avatar Bartek Jaskulski
Browse files

refactor: deprecate use of `Settings` class


Signed-off-by: default avatarBart Jaskulski <bjaskulski@protonmail.com>
parent 11675bda
No related branches found
No related tags found
1 merge request!29feat/message handling
...@@ -4,6 +4,9 @@ namespace WPDesk\Logger; ...@@ -4,6 +4,9 @@ namespace WPDesk\Logger;
use Psr\Log\LogLevel; use Psr\Log\LogLevel;
/**
* @deprecated
*/
final class Settings { final class Settings {
/** @var string */ /** @var string */
...@@ -26,4 +29,12 @@ final class Settings { ...@@ -26,4 +29,12 @@ final class Settings {
$this->use_wp_log = $use_wp_log; $this->use_wp_log = $use_wp_log;
} }
public function to_array(): array {
return [
'level' => $this->level,
'use_wc_log' => $this->use_wc_log,
'use_wp_log' => $this->use_wp_log,
];
}
} }
...@@ -8,11 +8,16 @@ use Monolog\Logger; ...@@ -8,11 +8,16 @@ use Monolog\Logger;
use Monolog\Handler\ErrorLogHandler; use Monolog\Handler\ErrorLogHandler;
use Monolog\Processor\PsrLogMessageProcessor; use Monolog\Processor\PsrLogMessageProcessor;
use Monolog\Processor\UidProcessor; use Monolog\Processor\UidProcessor;
use Psr\Log\LogLevel;
use WPDesk\Logger\WC\WooCommerceHandler; use WPDesk\Logger\WC\WooCommerceHandler;
final class SimpleLoggerFactory implements LoggerFactory { final class SimpleLoggerFactory implements LoggerFactory {
/** @var Settings */ /**
* @var array{
* level?: string,
* }
*/
private $options; private $options;
/** @var string */ /** @var string */
...@@ -21,9 +26,23 @@ final class SimpleLoggerFactory implements LoggerFactory { ...@@ -21,9 +26,23 @@ final class SimpleLoggerFactory implements LoggerFactory {
/** @var Logger */ /** @var Logger */
private $logger; private $logger;
public function __construct( string $channel, Settings $options = null ) { /**
* Valid options are:
* * level (default debug): Default logging level
*/
public function __construct( string $channel, $options = null ) {
$this->channel = $channel; $this->channel = $channel;
$this->options = $options ?? new Settings();
if ( $options instanceof Settings ) {
$options = $options->to_array();
}
$this->options = array_merge(
[
'level' => LogLevel::DEBUG,
],
$options
);
} }
public function getLogger( $name = null ): Logger { public function getLogger( $name = null ): Logger {
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment