/** * @param array $msg */ protected function mongoLogger($msg) { if (!isset($this->loggerCfg['dbConfigName'])) { throw new Exception('Invalid log config of mongo handler, $dbConfigName missing!'); } if (isset($msg['time'])) { $msg['time'] = new \MongoDate(strtotime($msg['time'])); } $db = Mongo::instance($this->loggerCfg['dbConfigName'])->selectDB()->selectCollection($this->loggerCfg['dbCollection']); if (is_array($msg)) { if (is_array(current($msg))) { foreach ($msg as $record) { $db->save($record); } } else { $db->save($msg); } } else { throw new Exception('$msg for mongo handler should be array!'); } }