Example #1
0
 /**
  * @inheritdoc
  */
 public function setUp()
 {
     $this->handler = new ArrayHandler();
     $this->handler->setFormatter(new LineFormatter('%level_name% %message%'));
     $this->logger = new Logger('test');
     $this->logger->pushHandler($this->handler);
     $this->logger->pushProcessor(new ContextReplacementProcessor());
 }
Example #2
0
File: Log.php Project: romeoz/rock
 protected function defaultHandlers()
 {
     $path = $path = Alias::getAlias('@runtime/logs');
     FileHelper::createDirectory($path);
     $paths = [self::DEBUG => "{$path}/debug.log", self::INFO => "{$path}/info.log", self::NOTICE => "{$path}/error.log", self::WARNING => "{$path}/error.log", self::ERROR => "{$path}/error.log", self::CRITICAL => "{$path}/error.log", self::ALERT => "{$path}/error.log", self::EMERGENCY => "{$path}/error.log"];
     $formatter = new LineFormatter("[%datetime%]\t%level_name%\t%extra.hash%\t%message%\t%extra.user_id%\t%extra.user_ip%\t%extra.user_agent%\n");
     $this->logger->pushProcessor(function ($record) {
         $record['extra']['hash'] = substr(md5($record['message']), -6);
         $record['extra']['user_agent'] = strip_tags($_SERVER['HTTP_USER_AGENT']);
         $record['extra']['user_ip'] = filter_input(INPUT_SERVER, 'REMOTE_ADDR', FILTER_VALIDATE_IP);
         $record['extra']['user_id'] = isset($_SESSION['user']['id']) ? $_SESSION['user']['id'] : 'NULL';
         return $record;
     });
     $handlers = [];
     foreach ($paths as $level => $path) {
         $handlers[$level] = (new StreamHandler($path, $level, false))->setFormatter($formatter);
     }
     return $handlers;
 }