From d1e7438605b7467d222449dc7904be88392495e0 Mon Sep 17 00:00:00 2001 From: Matthias Pigulla Date: Fri, 14 Sep 2018 19:15:49 +0200 Subject: [PATCH] [MonologBridge] Re-add option option to ignore empty context and extra data --- .../Monolog/Formatter/ConsoleFormatter.php | 22 +++++++++---------- .../Tests/Handler/ConsoleHandlerTest.php | 6 ++--- 2 files changed, 14 insertions(+), 14 deletions(-) diff --git a/src/Symfony/Bridge/Monolog/Formatter/ConsoleFormatter.php b/src/Symfony/Bridge/Monolog/Formatter/ConsoleFormatter.php index 0e7d6b6b37..4f2681a88a 100644 --- a/src/Symfony/Bridge/Monolog/Formatter/ConsoleFormatter.php +++ b/src/Symfony/Bridge/Monolog/Formatter/ConsoleFormatter.php @@ -69,6 +69,9 @@ class ConsoleFormatter implements FormatterInterface if (isset($args[2])) { $options['multiline'] = $args[2]; } + if (isset($args[3])) { + $options['ignore_empty_context_and_extra'] = $args[3]; + } } $this->options = array_replace(array( @@ -76,6 +79,7 @@ class ConsoleFormatter implements FormatterInterface 'date_format' => self::SIMPLE_DATE, 'colors' => true, 'multiline' => false, + 'ignore_empty_context_and_extra' => true, ), $options); if (class_exists(VarCloner::class)) { @@ -116,20 +120,16 @@ class ConsoleFormatter implements FormatterInterface $levelColor = self::$levelColorMap[$record['level']]; - if ($this->options['multiline']) { - $separator = "\n"; + if (!$this->options['ignore_empty_context_and_extra'] || !empty($record['context'])) { + $context = ($this->options['multiline'] ? "\n" : ' ').$this->dumpData($record['context']); } else { - $separator = ' '; + $context = ''; } - $context = $this->dumpData($record['context']); - if ($context) { - $context = $separator.$context; - } - - $extra = $this->dumpData($record['extra']); - if ($extra) { - $extra = $separator.$extra; + if (!$this->options['ignore_empty_context_and_extra'] || !empty($record['extra'])) { + $extra = ($this->options['multiline'] ? "\n" : ' ').$this->dumpData($record['extra']); + } else { + $extra = ''; } $formatted = strtr($this->options['format'], array( diff --git a/src/Symfony/Bridge/Monolog/Tests/Handler/ConsoleHandlerTest.php b/src/Symfony/Bridge/Monolog/Tests/Handler/ConsoleHandlerTest.php index 92b319f13a..0764f89151 100644 --- a/src/Symfony/Bridge/Monolog/Tests/Handler/ConsoleHandlerTest.php +++ b/src/Symfony/Bridge/Monolog/Tests/Handler/ConsoleHandlerTest.php @@ -64,9 +64,9 @@ class ConsoleHandlerTest extends TestCase $realOutput = $this->getMockBuilder('Symfony\Component\Console\Output\Output')->setMethods(array('doWrite'))->getMock(); $realOutput->setVerbosity($verbosity); if ($realOutput->isDebug()) { - $log = "16:21:54 $levelName [app] My info message\n[]\n[]\n"; + $log = "16:21:54 $levelName [app] My info message\n"; } else { - $log = "16:21:54 $levelName [app] My info message [] []\n"; + $log = "16:21:54 $levelName [app] My info message\n"; } $realOutput ->expects($isHandling ? $this->once() : $this->never()) @@ -149,7 +149,7 @@ class ConsoleHandlerTest extends TestCase $output ->expects($this->once()) ->method('write') - ->with("16:21:54 INFO [app] My info message\n[]\n[]\n") + ->with("16:21:54 INFO [app] My info message\n") ; $handler = new ConsoleHandler(null, false);