private static IAudit AuditForErrorContext(IAudit audit, HttpContext httpContext) { var request = httpContext.Request; var loggedHeaders = request.Headers .Where(h => HeaderWhitelist.Contains(h.Key)) .ToDictionary(h => h.Key, h => h.Value.ToString()); var result = audit .ForContext("RequestHeaders", loggedHeaders, captureObjectStructure: true) .ForContext("RequestHost", request.Host) .ForContext("RequestProtocol", request.Protocol); return(result); }