private function createLogger(Logger $logger, LoggerHierarchy $hierarchy, array $config) { if (isset($config['appenders'])) { foreach ($config['appenders'] as $appenderConfig) { if (is_string($appenderConfig)) { $appender = $hierarchy->getAppender($appenderConfig); } elseif (is_array($appenderConfig)) { $appender = $this->createAppender($hierarchy, $appenderConfig); } else { LoggerPolicy::processConfigurationError('Appender invalid config'); continue; } $logger->addAppender($appender); } if (isset($config['addictive'])) { $logger->setAddictive($config['addictive']); } if (isset($config['maxLevel'])) { $logger->setMaxLevel($config['maxLevel']); } if (isset($config['minLevel'])) { $logger->setMinLevel($config['minLevel']); } } }
public function getAppender($name) { try { return parent::getAppender($name); } catch (\Mougrim\Logger\LoggerConfigurationException $exception) { throw new LoggerConfigurationException($exception->getMessage(), $exception->getCode(), $exception); } }
public function testGetAppenderExists() { $hierarchy = new LoggerHierarchy(); $appender = new AppenderStd(); $hierarchy->setAppender('appender', $appender); $this->assertSame($appender, $hierarchy->getAppender('appender')); $this->assertSame(['appender' => $appender], $hierarchy->getAppenderMap()); }