private async Task SaveTraceAsync(LogsDatabaseContext context, HttpEntry entry) { try { var trace = new Entities.Trace { Id = Guid.NewGuid(), CallDuration = entry.CallDuration, CallerIdentity = entry.CallerIdentity ?? "(anonymous)", ReasonPhrase = entry.ReasonPhrase, RequestHeaders = ProcessHeaders(entry.RequestHeaders), ResponseHeaders = ProcessHeaders(entry.ResponseHeaders), RequestPayload = entry.Request, RequestTimestamp = entry.CallDateTime, ResponsePayload = entry.Response, StatusCode = entry.StatusCode, Url = entry.RequestUri.AbsolutePath, Verb = entry.Verb }; context.Traces.Add(trace); await context.SaveChangesAsync(); } catch { } }
public LogService(LogsDatabaseContext context, INow now, IConfiguration helper, IMapper mapper) { _context = context; _now = now; _helper = helper; _mapper = mapper; }