Newscoop\Log\Writer::_write PHP 메소드

_write() 보호된 메소드

Store event
protected _write ( array $event ) : void
$event array
리턴 void
    protected function _write($event)
    {
        // search for ip
        foreach (self::$ipKeys as $key) {
            if (!empty($_SERVER[$key])) {
                $ip = $_SERVER[$key];
                break;
            }
        }
        // set user if any
        if (!isset($event['user'])) {
            $event['user'] = null;
            $auth = \Zend_Auth::getInstance();
            if ($auth->hasIdentity()) {
                $event['user'] = $this->em->getReference('Newscoop\\Entity\\User\\Staff', $auth->getIdentity());
            }
        }
        // create log entity
        $log = new Log();
        $log->setTimeCreated(new DateTime($event['timestamp']))->setText($event['message'])->setPriority($event['priority'])->setClientIP(isset($ip) ? $ip : '')->setUser($event['user']);
        // store
        $this->em->persist($log);
        $this->em->flush();
    }