//////////////////////////////////////////////////////////////////////////////////////////////////// /// <summary> Updates the given log. </summary> /// /// <remarks> Msacli, 24.04.2019. </remarks> /// /// <param name="log"> The log to save. </param> /// /// <returns> An int. </returns> //////////////////////////////////////////////////////////////////////////////////////////////////// public int Update(ErrorLogModel log) { if (log == null) { return(CoreConstants.NullLogResponse); } if (string.IsNullOrWhiteSpace(log.Id)) { return(CoreConstants.EmptyLogIdResponse); } var emptystring = Guid.Empty.ToString(); if (log.Id == emptystring) { return(CoreConstants.EmptyGuidLogIdResponse); } emptystring = emptystring.Replace('-', '\0'); if (log.Id == emptystring) { return(CoreConstants.EmptyGuidLogIdResponse); } var logModel = new ErrorLogModelMongo { Id = log.Id, ClassName = log.ClassName, CreatedOn = log.CreatedOn, CreatedOnTimestamp = log.CreatedOnUnixTimestamp, ExceptionData = log.ExceptionData, LogTime = log.LogTime, LogTimeUnixTimestamp = log.LogTimeUnixTimestamp, Message = log.Message, MethodName = log.MethodName, RequestAddres = log.RequestAddres, ResponseAddress = log.ResponseAddress, ResponseMachineName = log.ResponseMachineName, StackTrace = log.StackTrace, UserId = log.UserId }; var filter = Builders <ErrorLogModelMongo> .Filter.Eq(s => s.Id, logModel.Id); var replaceOneResult = this.Collection.ReplaceOne(filter, logModel); return((int)replaceOneResult.ModifiedCount); }
//////////////////////////////////////////////////////////////////////////////////////////////////// /// <summary> Saves the given log. </summary> /// /// <remarks> Msacli, 24.04.2019. </remarks> /// /// <param name="log"> The log to save. </param> /// /// <returns> A string. </returns> //////////////////////////////////////////////////////////////////////////////////////////////////// public string Save(ErrorLogModel log) { if (log == null) { #if DEBUG log = new ErrorLogModel(); #else return("null"); #endif } var logId = log?.Id ?? string.Empty; var emptyGuid = Guid.Empty.ToString(); if (string.IsNullOrWhiteSpace(logId) || logId == emptyGuid || logId == emptyGuid.Replace('-', '\0')) { log.Id = Guid.NewGuid().ToString(); } if (!log.LogTime.HasValue) { log.LogTime = DateTime.Now; log.LogTimeUnixTimestamp = log.LogTime.Value.Ticks; } log.CreatedOn = DateTime.Now; log.CreatedOnUnixTimestamp = log.CreatedOn.Ticks; var logModel = new ErrorLogModelMongo { Id = log.Id, ClassName = log.ClassName, CreatedOn = log.CreatedOn, CreatedOnTimestamp = log.CreatedOnUnixTimestamp, ExceptionData = log.ExceptionData, LogTime = log.LogTime, LogTimeUnixTimestamp = log.LogTimeUnixTimestamp, Message = log.Message, MethodName = log.MethodName, RequestAddres = log.RequestAddres, ResponseAddress = log.ResponseAddress, ResponseMachineName = log.ResponseMachineName, StackTrace = log.StackTrace, UserId = log.UserId }; this.Collection.InsertOne(logModel); return(log.Id); }