17abstract class Logger extends Log\AbstractLogger
20 LogLevel::EMERGENCY => LOG_EMERG,
21 LogLevel::ALERT => LOG_ALERT,
22 LogLevel::CRITICAL => LOG_CRIT,
23 LogLevel::ERROR => LOG_ERR,
24 LogLevel::WARNING => LOG_WARNING,
25 LogLevel::NOTICE => LOG_NOTICE,
26 LogLevel::INFO => LOG_INFO,
27 LogLevel::DEBUG => LOG_DEBUG,
42 return $formatter->format($this->message, $this->context);
51 if (!isset(static::$supportedLevels[
$level]))
53 throw new Log\InvalidArgumentException(
"Log level {$level} is unsupported.");
56 if ($this->level !==
null && static::$supportedLevels[
$level] > $this->level)
84 if (isset(static::$supportedLevels[
$level]))
86 $this->level = static::$supportedLevels[
$level];
127 if (isset($loggersConfig[$id]))
131 if (isset(
$config[
'className']))
135 $args =
$config[
'constructorParams'] ?? [];
136 if ($args instanceof \Closure)
141 $logger =
new $class(...array_values($args));
145 $closure =
$config[
'constructor'];
146 if ($closure instanceof \Closure)
148 $logger = $closure(...array_values(
$params));
152 if ($logger instanceof
static)
156 $logger->setLevel(
$config[
'level']);
159 if (isset(
$config[
'formatter']))
162 if ($serviceLocator->has(
$config[
'formatter']))
164 $logger->setFormatter($serviceLocator->get(
$config[
'formatter']));
175 if ($this->formatter ===
null)
static create(string $id, $params=[])
setFormatter(LogFormatterInterface $formatter)
log($level, string|\Stringable $message, array $context=[])
logMessage(string $level, string $message)
if( $daysToExpire >=0 &&$daysToExpire< 60 elseif)( $daysToExpire< 0)