diff --git a/CHANGELOG.md b/CHANGELOG.md index ae761449..2f60ad70 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ * Use `ActivationStrategy` instead of `actionLevel` when available * Register resettable processors (`ResettableInterface`) for autoconfiguration (tag: `kernel.reset`) * Drop support for Symfony 3.4 +* Support 'null_handler' as alias for 'null', to ease problems with yaml and xml configuration ## 3.6.0 (2020-10-06) diff --git a/DependencyInjection/MonologExtension.php b/DependencyInjection/MonologExtension.php index d927ab01..6e2c4dbc 100644 --- a/DependencyInjection/MonologExtension.php +++ b/DependencyInjection/MonologExtension.php @@ -188,7 +188,7 @@ private function buildHandler(ContainerBuilder $container, $name, array $handler } if (null === $handler['process_psr_3_messages']) { - $handler['process_psr_3_messages'] = !isset($handler['handler']) && !$handler['members']; + $handler['process_psr_3_messages'] = !isset($handler['handler']) && !$handler['members'] && $handlerClass != 'Monolog\Handler\NullHandler'; } if ($handler['process_psr_3_messages']) { @@ -893,7 +893,6 @@ private function buildHandler(ContainerBuilder $container, $name, array $handler // Handlers using the constructor of AbstractHandler without adding their own arguments case 'browser_console': case 'test': - case 'null': case 'noop': case 'debug': $definition->setArguments([ @@ -902,6 +901,13 @@ private function buildHandler(ContainerBuilder $container, $name, array $handler ]); break; + case 'null': + case 'null_handler': + $definition->setArguments([ + $handler['level'], + ]); + break; + default: $nullWarning = ''; if ($handler['type'] == '') { @@ -954,6 +960,7 @@ private function getHandlerClassByType($handlerType) 'syslog' => 'Monolog\Handler\SyslogHandler', 'syslogudp' => 'Monolog\Handler\SyslogUdpHandler', 'null' => 'Monolog\Handler\NullHandler', + 'null_handler' => 'Monolog\Handler\NullHandler', 'test' => 'Monolog\Handler\TestHandler', 'gelf' => 'Monolog\Handler\GelfHandler', 'rollbar' => 'Monolog\Handler\RollbarHandler',