public static async ETTask SaveLog(this DBProxyComponent self, long uid, DBLog.LogType logType, ComponentWithId record) { Session session = Game.Scene.GetComponent <NetInnerComponent>().Get(self.dbAddress); DBLog dBLog = ComponentFactory.CreateWithId <DBLog>(IdGenerater.GenerateId()); dBLog.uid = uid; dBLog.logType = (int)logType; BsonDocument doc = null; BsonDocument.TryParse(record.ToJson(), out doc); dBLog.document = doc; dBLog.createAt = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); await self.SaveLog(dBLog); }
public static async ETTask SaveLogBatch(this DBProxyComponent self, long uid, DBLog.LogType logType, List <ComponentWithId> components) { Session session = Game.Scene.GetComponent <NetInnerComponent>().Get(self.dbAddress); List <ComponentWithId> list = new List <ComponentWithId>(); for (int i = 0; i < components.Count; i++) { ComponentWithId record = null; DBLog dBLog = ComponentFactory.CreateWithId <DBLog>(IdGenerater.GenerateId()); dBLog.uid = uid; dBLog.logType = (int)logType; BsonDocument doc = null; BsonDocument.TryParse(record.ToJson(), out doc); dBLog.document = doc; dBLog.createAt = DateTimeOffset.UtcNow.ToUnixTimeMilliseconds(); list.Add(dBLog); } await self.SaveBatch(list); }