Ejemplo n.º 1
0
 /**
  * @param Logger     $logger
  * @param            $level
  * @param            $message
  * @param \Exception $throwable
  *
  * @return string
  */
 public function render(Logger $logger, $level, $message, \Exception $throwable = null)
 {
     if (!is_callable($this->callable)) {
         return LoggerRender::render(null);
     }
     return LoggerRender::render(call_user_func($this->callable));
 }
Ejemplo n.º 2
0
 public function formatMessage(MougrimLogger $logger, $level, $message, \Exception $throwable = null)
 {
     $prefix = '';
     $mdc = LoggerMDC::getMap();
     if ($this->logUserInfo) {
         foreach (['ip', 'userId', 'sessionId'] as $key) {
             $context = isset($mdc[$key]) ? $mdc[$key] : null;
             $context = LoggerRender::render($context);
             $prefix .= '[' . $context . ']';
             unset($mdc[$key]);
         }
     }
     $level = MougrimLogger::getLevelName($level);
     $formatted = date('Y-m-d H:i:s') . ' ' . $prefix . '[' . $level . '][' . $logger->getName() . ']';
     $ndcString = '';
     if ($ndcStack = LoggerNDC::getStack()) {
         $ndcString = implode(' ', $ndcStack);
     }
     $formatted .= '[' . $ndcString . ']';
     $mdcString = '';
     foreach ($mdc as $key => $context) {
         $mdcString .= $key . '=' . $context . ' ';
     }
     $formatted .= '[' . trim($mdcString) . ']';
     $formatted .= ' ' . LoggerRender::render($message);
     if ($throwable) {
         $formatted .= ' ' . LoggerRender::render($throwable);
     }
     return $formatted . PHP_EOL;
 }
Ejemplo n.º 3
0
 public function testRenderNullAndBool()
 {
     LoggerRender::$nullMessage = '-';
     LoggerRender::$trueMessage = '1';
     LoggerRender::$falseMessage = '-1';
     $logger = new Logger('testLogger');
     $layout = new LayoutSimple();
     $this->assertSame('testLogger [INFO] - -' . PHP_EOL, $layout->formatMessage($logger, Logger::INFO, null));
     $this->assertSame('testLogger [INFO] - 1' . PHP_EOL, $layout->formatMessage($logger, Logger::INFO, true));
     $this->assertSame('testLogger [INFO] - -1' . PHP_EOL, $layout->formatMessage($logger, Logger::INFO, false));
 }
Ejemplo n.º 4
0
 public function render(Logger $logger, $level, $message, \Exception $throwable = null)
 {
     $current = $GLOBALS;
     foreach ($this->path as $key) {
         if (!isset($current[$key])) {
             $current = null;
             break;
         }
         $current = $current[$key];
     }
     return LoggerRender::render($current);
 }
Ejemplo n.º 5
0
 public function render(Logger $logger, $level, $message, \Exception $throwable = null)
 {
     if ($this->key) {
         return LoggerRender::render(LoggerMDC::get($this->key));
     }
     $mdc = LoggerMDC::getMap();
     if (!$mdc) {
         return '';
     }
     $formatted = [];
     foreach ($mdc as $key => $context) {
         $formatted[] = $key . '=' . $context;
     }
     return implode(' ', $formatted);
 }
Ejemplo n.º 6
0
 public function formatMessage(Logger $logger, $level, $message, \Exception $throwable = null)
 {
     $formatted = $logger->getName() . ' [' . Logger::getLevelName($level) . '] ';
     if ($ndc = LoggerNDC::getStack()) {
         $formatted .= implode(' ', $ndc) . ' ';
     }
     if ($mdc = LoggerMDC::getMap()) {
         foreach ($mdc as $key => $context) {
             $formatted .= $key . '=' . $context . ' ';
         }
     }
     $formatted .= '- ' . LoggerRender::render($message);
     if ($throwable) {
         $formatted .= ' ' . LoggerRender::render($throwable);
     }
     return $formatted . PHP_EOL;
 }
Ejemplo n.º 7
0
 public function configure(LoggerHierarchy $hierarchy, array $config)
 {
     if (isset($config[static::LOGGER_POLICY]['ioError'])) {
         LoggerPolicy::setIoErrorPolicy($config[static::LOGGER_POLICY]['ioError']);
     }
     if (isset($config[static::LOGGER_POLICY]['configurationError'])) {
         LoggerPolicy::setConfigurationErrorPolicy($config[static::LOGGER_POLICY]['configurationError']);
     }
     if (isset($config[static::LOGGER_RENDERER])) {
         if (isset($config[static::LOGGER_RENDERER]['nullMessage'])) {
             LoggerRender::$nullMessage = (string) $config[static::LOGGER_RENDERER]['nullMessage'];
         }
         if (isset($config[static::LOGGER_RENDERER]['trueMessage'])) {
             LoggerRender::$trueMessage = (string) $config[static::LOGGER_RENDERER]['trueMessage'];
         }
         if (isset($config[static::LOGGER_RENDERER]['falseMessage'])) {
             LoggerRender::$falseMessage = (string) $config[static::LOGGER_RENDERER]['falseMessage'];
         }
     }
     if (isset($config[static::LOGGER_LAYOUTS])) {
         foreach ($config[static::LOGGER_LAYOUTS] as $layoutName => $layoutConfig) {
             $hierarchy->setLayout($layoutName, $this->createLayout($layoutConfig));
         }
     }
     if (isset($config[static::LOGGER_APPENDERS])) {
         foreach ($config[static::LOGGER_APPENDERS] as $appenderName => $appenderConfig) {
             $hierarchy->setAppender($appenderName, $this->createAppender($hierarchy, $appenderConfig));
         }
     }
     if (isset($config[static::LOGGER_LOGGERS])) {
         foreach ($config[static::LOGGER_LOGGERS] as $loggerName => $loggerConfig) {
             $logger = $hierarchy->getLogger($loggerName);
             $this->createLogger($logger, $hierarchy, $loggerConfig);
         }
     }
     if (isset($config[static::LOGGER_ROOT])) {
         $logger = $hierarchy->getRootLogger();
         $this->createLogger($logger, $hierarchy, $config[static::LOGGER_ROOT]);
     }
 }
Ejemplo n.º 8
0
 public function render(Logger $logger, $level, $message, \Exception $throwable = null)
 {
     $rendered = LoggerRender::render($message);
     return $this->format($rendered);
 }
Ejemplo n.º 9
0
 /**
  * Reset all loggers, appenders, etc.
  */
 public static function reset()
 {
     self::$hierarchy = new LoggerHierarchy();
     self::$isConfigured = false;
     LoggerNDC::clear();
     LoggerMDC::clear();
     LoggerRender::reset();
     LoggerPolicy::reset();
 }