/// <summary> /// Is used to store error/critical logs /// </summary> private async void WriteTechnicalLog(string logMessage, Exception e) { if (e == null) { return; } using var _db = new ChatServiceContext(_DbOptionsBuilder.Options); await File.AppendAllTextAsync(_path, logMessage); if (e == null) { return; } var log = new ErrorLog { Code = e.HResult, LogMessage = logMessage, Time = DateTime.UtcNow, StackTrace = e.StackTrace }; _db.TechnicalLogs.Add(log); await _db.SaveChangesAsync(); }
private async Task <bool> CreateAdmin(JoinAdminModel model) { var byteKey = _cryptoProvider.GetTokenBytes(model.AccessToken); var token = await _serviceDb.AdminTokens.SingleOrDefaultAsync(x => x.TokenData.SequenceEqual(byteKey)); if (token == null || token.isUsed == true) { return(false); } token.isUsed = true; await _serviceDb.SaveChangesAsync(); return(await _joinService.JoinAdmin(model)); }
/// <summary> /// Is used to store trace logs /// </summary> private async void WriteTraceLog(string logMessage) { using var _db = new ChatServiceContext(_DbOptionsBuilder.Options); await File.AppendAllTextAsync(_path, logMessage); var log = new TraceLog { LogMessage = logMessage, Time = DateTime.UtcNow }; _db.TraceLogs.Add(log); await _db.SaveChangesAsync(); }