| | <?php |
| |
|
| | namespace Kanboard\Core\Log; |
| |
|
| | use Psr\Log\AbstractLogger; |
| | use Psr\Log\LoggerAwareInterface; |
| | use Psr\Log\LoggerInterface; |
| | use Psr\Log\LogLevel; |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | class Logger extends AbstractLogger implements LoggerAwareInterface |
| | { |
| | |
| | |
| | |
| | |
| | |
| | private $loggers = array(); |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | public function getLevelPriority($level) |
| | { |
| | switch ($level) { |
| | case LogLevel::EMERGENCY: |
| | return 600; |
| | case LogLevel::ALERT: |
| | return 550; |
| | case LogLevel::CRITICAL: |
| | return 500; |
| | case LogLevel::ERROR: |
| | return 400; |
| | case LogLevel::WARNING: |
| | return 300; |
| | case LogLevel::NOTICE: |
| | return 250; |
| | case LogLevel::INFO: |
| | return 200; |
| | } |
| |
|
| | return 100; |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | public function setLogger(LoggerInterface $logger) |
| | { |
| | $this->loggers[] = $logger; |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | public function log($level, $message, array $context = array()) |
| | { |
| | foreach ($this->loggers as $logger) { |
| | if ($this->getLevelPriority($level) >= $this->getLevelPriority($logger->getLevel())) { |
| | $logger->log($level, $message, $context); |
| | } |
| | } |
| | } |
| |
|
| | |
| | |
| | |
| | |
| | |
| | public function dump($variable) |
| | { |
| | foreach ($this->loggers as $logger) { |
| | if ($this->getLevelPriority(LogLevel::DEBUG) >= $this->getLevelPriority($logger->getLevel())) { |
| | $logger->dump($variable); |
| | } |
| | } |
| | } |
| | } |
| |
|