diff --git a/src/Settings.php b/src/Settings.php
index aa648ce8e7e77c40a93b6c6c5300a0a003037ab9..1fa6f1be833aa8b5a0074f92bb1546b73b6a22ea 100644
--- a/src/Settings.php
+++ b/src/Settings.php
@@ -4,6 +4,9 @@ namespace WPDesk\Logger;
 
 use Psr\Log\LogLevel;
 
+/**
+ * @deprecated
+ */
 final class Settings {
 
 	/** @var string */
@@ -26,4 +29,12 @@ final class Settings {
 		$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,
+		];
+	}
+
 }
diff --git a/src/SimpleLoggerFactory.php b/src/SimpleLoggerFactory.php
index 86c2a6f24b76158ab27624b5c659ca40d7b2d26f..3ec0b81bf5b926c4f52dd67bd1dd66e2d2665474 100644
--- a/src/SimpleLoggerFactory.php
+++ b/src/SimpleLoggerFactory.php
@@ -8,11 +8,16 @@ use Monolog\Logger;
 use Monolog\Handler\ErrorLogHandler;
 use Monolog\Processor\PsrLogMessageProcessor;
 use Monolog\Processor\UidProcessor;
+use Psr\Log\LogLevel;
 use WPDesk\Logger\WC\WooCommerceHandler;
 
 final class SimpleLoggerFactory implements LoggerFactory {
 
-	/** @var Settings */
+	/**
+	 * @var array{
+	 *   level?: string,
+	 * }
+	 */
 	private $options;
 
 	/** @var string */
@@ -21,9 +26,23 @@ final class SimpleLoggerFactory implements LoggerFactory {
 	/** @var 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->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 {