From 7118f739a93b8b2e78f4ea3f2dc21e0522a1217d Mon Sep 17 00:00:00 2001 From: Matthias Pigulla Date: Wed, 11 May 2016 11:22:05 +0200 Subject: [PATCH] Redirect logs to console when running SynchronizeCommand --- src/Command/SynchronizeCommand.php | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/src/Command/SynchronizeCommand.php b/src/Command/SynchronizeCommand.php index 9d87040..89e471c 100644 --- a/src/Command/SynchronizeCommand.php +++ b/src/Command/SynchronizeCommand.php @@ -2,11 +2,15 @@ namespace Webfactory\ContentMappingBundle\Command; -use Psr\Log\LoggerInterface; +use Monolog\Handler\HandlerInterface; +use Monolog\Logger; +use Monolog\Processor\PsrLogMessageProcessor; +use Symfony\Bridge\Monolog\Formatter\ConsoleFormatter; +use Symfony\Bridge\Monolog\Handler\ConsoleHandler; use Symfony\Component\Console\Command\Command; use Symfony\Component\Console\Input\InputInterface; -use Symfony\Component\Console\Output\OutputInterface; use Symfony\Component\Console\Input\InputOption; +use Symfony\Component\Console\Output\OutputInterface; use Webfactory\ContentMappingBundle\Synchronizer\Registry; /** @@ -20,15 +24,15 @@ final class SynchronizeCommand extends Command private $synchronizerRegistry; /** - * @var LoggerInterface + * @var Logger */ private $logger; /** * @param Registry $synchronizerRegistry - * @param LoggerInterface $logger + * @param Logger $logger */ - public function __construct(Registry $synchronizerRegistry, LoggerInterface $logger) + public function __construct(Registry $synchronizerRegistry, Logger $logger) { parent::__construct(); $this->synchronizerRegistry = $synchronizerRegistry; @@ -61,6 +65,11 @@ protected function configure() */ protected function execute(InputInterface $input, OutputInterface $output) { + $consoleHandler = new ConsoleHandler($output); + $consoleHandler->setFormatter(new ConsoleFormatter("%start_tag%[%datetime%] %channel%.%level_name%:%end_tag% %message%\n")); + $this->logger->setHandlers([$consoleHandler]); + $this->logger->pushProcessor(new PsrLogMessageProcessor()); + $force = $input->getOption('force'); $only = $input->getOption('only');