diff --git a/src/Symfony/Bridge/Monolog/Handler/ConsoleHandler.php b/src/Symfony/Bridge/Monolog/Handler/ConsoleHandler.php index 592584ffa4af0..8cbf64545a542 100644 --- a/src/Symfony/Bridge/Monolog/Handler/ConsoleHandler.php +++ b/src/Symfony/Bridge/Monolog/Handler/ConsoleHandler.php @@ -45,6 +45,8 @@ class ConsoleHandler extends AbstractProcessingHandler implements EventSubscribe */ private $output; + private $stdoutput; + /** * @var array */ @@ -122,7 +124,8 @@ public function onCommand(ConsoleCommandEvent $event) { $output = $event->getOutput(); if ($output instanceof ConsoleOutputInterface) { - $output = $output->getErrorOutput(); + $this->stdoutput = $output->getStdOutput(); + $output = $output->getErrorOutput(); } $this->setOutput($output); @@ -154,7 +157,13 @@ public static function getSubscribedEvents() */ protected function write(array $record) { - $this->output->write((string) $record['formatted']); + if (Logger::ERROR > $record['level']) { + $this->stdoutput->write((string)$record['formatted']); + + return; + } + + $this->output->write((string)$record['formatted']); } /** diff --git a/src/Symfony/Component/Console/Output/ConsoleOutput.php b/src/Symfony/Component/Console/Output/ConsoleOutput.php index 8e1f360141497..4108e42f337bc 100644 --- a/src/Symfony/Component/Console/Output/ConsoleOutput.php +++ b/src/Symfony/Component/Console/Output/ConsoleOutput.php @@ -32,6 +32,8 @@ class ConsoleOutput extends StreamOutput implements ConsoleOutputInterface * @var StreamOutput */ private $stderr; + private $stdout; + /** * Constructor. @@ -43,6 +45,7 @@ class ConsoleOutput extends StreamOutput implements ConsoleOutputInterface public function __construct($verbosity = self::VERBOSITY_NORMAL, $decorated = null, OutputFormatterInterface $formatter = null) { parent::__construct($this->openOutputStream(), $verbosity, $decorated, $formatter); + $this->stdout= new StreamOutput($this->openOutputStream(), $verbosity, $decorated, $formatter); $actualDecorated = $this->isDecorated(); $this->stderr = new StreamOutput($this->openErrorStream(), $verbosity, $decorated, $this->getFormatter()); @@ -153,4 +156,12 @@ private function openErrorStream() return fopen($errorStream, 'w'); } + + /** + * {@inheritdoc} + */ + public function getStdOutput() + { + return $this->stdout; + } }
Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.
Alternative Proxies: