コード例 #1
0
 /**
  * Establish the necessary instances for logging.
  *
  * Implements 'core.init' event when Zikula_Core::STAGE_CONFIG.
  *
  * @param Zikula_Event $event The event to log.
  *
  * @return void
  */
 public function setupLoggers(Zikula_Event $event)
 {
     if (!($event['stage'] & Zikula_Core::STAGE_CONFIG)) {
         return;
     }
     if (!$this->serviceManager['log.enabled']) {
         return;
     }
     if ($this->serviceManager['log.to_display'] || $this->serviceManager['log.sql.to_display']) {
         $displayLogger = $this->serviceManager->attachService('zend.logger.display', new Zend_Log());
         // load writer first because of hard requires in the Zend_Log_Writer_Stream
         $writer = new Zend_Log_Writer_Stream('php://output');
         $formatter = new Zend_Log_Formatter_Simple('%priorityName% (%priority%): %message% <br />' . PHP_EOL);
         $writer->setFormatter($formatter);
         $displayLogger->addWriter($writer);
     }
     if ($this->serviceManager['log.to_file'] || $this->serviceManager['log.sql.to_file']) {
         $fileLogger = $this->serviceManager->attachService('zend.logger.file', new Zend_Log());
         $filename = LogUtil::getLogFileName();
         // load writer first because of hard requires in the Zend_Log_Writer_Stream
         $writer = new Zend_Log_Writer_Stream($filename);
         $formatter = new Zend_Log_Formatter_Simple('%timestamp% %priorityName% (%priority%): %message%' . PHP_EOL);
         $writer->setFormatter($formatter);
         $fileLogger->addWriter($writer);
     }
 }