Gpf_Log_Logger::addLogger PHP Method

addLogger() public method

public addLogger ( Gpf_Log_LoggerBase $logger, integer $logLevel ) : Gpf_Log_LoggerBase
$logger Gpf_Log_LoggerBase
$logLevel integer
return Gpf_Log_LoggerBase
        public function addLogger(Gpf_Log_LoggerBase $logger, $logLevel)
        {
            $this->enableType($logger->getType());
            if ($logger->getType() == Gpf_Log_LoggerDisplay::TYPE) {
                $this->logToDisplay = true;
            }
            if (!$this->checkLoggerTypeExists($logger->getType())) {
                $logger->setLogLevel($logLevel);
                $this->loggers[$logger->getType()] = $logger;
                return $logger;
            } else {
                $ll = new Gpf_Log_LoggerDatabase();
                $existingLogger = $this->loggers[$logger->getType()];
                if ($existingLogger->getLogLevel() > $logLevel) {
                    $existingLogger->setLogLevel($logLevel);
                }
                return $existingLogger;
            }
        }

Usage Example

 private function initLogger()
 {
     self::$benchmarkLogger = Gpf_Log_Logger::getInstance('benchmark');
     $fileLogger = new Gpf_Log_LoggerFile();
     $fileName = $this->getLogFileName();
     $fileLogger->setFileName($fileName);
     $this->checkResetFileSize($fileName);
     self::$benchmarkLogger->addLogger($fileLogger, Gpf_Log::DEBUG);
 }