public function broadcast($realm, $type, $subtype = null, $message = '') { if (!$message instanceof LogMessage) { $message = new LogMessage($message); } $message->setMode('broadcast'); $message->setNamespace($this->getNamespace()); $message->setChunk($this->getChunk()); if ($message->getTiming() == '') { $message->setTiming($this->getDuration()); } $message->setRealm($realm); $message->setType($type); $message->setSubtype($subtype); foreach ($this->broadCaster as $broadCaster) { $broadCaster->broadcast($message); } foreach ($this->logger as $logger) { if ($logger['broadcast'] == true) { $logger['logger']->log('info', (string) $message); } } }
/** * Logs with an arbitrary level. * * @param mixed $level * @param string $message * @param array $context * * @return null */ public function log($level, $message, array $context = array()) { if (!$message instanceof LogMessage) { $message = new LogMessage($message); } $message->setNamespace($this->getNamespace()); $message->setChunk($this->getChunk()); if ($message->getTiming() == '') { $message->setTiming($this->getDuration()); } if (array_key_exists($level, $this->logLevels)) { foreach ($this->logger as $logger) { if ($this->logLevels[$level] <= $this->logLevels[$logger['threshold']]) { $logger['logger']->log($level, $message, $context); } } } }