/** * ログ出力 */ public function __call($name, $args) { if (false !== ($level = LogLevel::toInt($name))) { $this->post(Log::create(isset($args[0]) ? $args[0] : 'no message', isset($args[1]) ? $args[1] : [], $level, isset($args[2]) ? $args[2] : null)); return true; } throw new Exception\InvalidMethod($name, $this); }
/** * ログを整形する * * @param Log $log * @return string */ public function format(Log $log) { return vsprintf($this->_compiled_format, ['[' . $log->getTag() . ']', $log->getMsg(), LogLevel::toString($log->getLevel()), json_encode($log->getArgs(), JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE), date($this->_date_format, $log->getTime())]); }
protected function initWriter() { $this->_level = LogLevel::toInt($this->spec()->get('level', 'all')); $this->initWriterImpl(); }