private void Notify(Guid messageId, HttpResponse response) { var trace = new WebMessageTrace(messageId) { Messages = new List <WebMessage> { new WebMessage(WebMessageType.Response) { Details = response.Data, Headers = HttpWebRequestHelper.GetHeaders(response.Headers) } } }; Publish(trace); }
private void Notify(Guid messageId, WebException exception) { var trace = new WebMessageTrace(messageId) { Messages = new List <WebMessage> { new WebMessage(WebMessageType.Error) { Details = string.Format("Message - {0} Stack Trace - {1}", exception.Message, exception.StackTrace), Headers = HttpWebRequestHelper.GetHeaders(exception.Response.Headers) } } }; Publish(trace); }
private void Notify(Guid messageId, WebRequest request, string data) { var trace = new WebMessageTrace(messageId) { Messages = new List <WebMessage> { new WebMessage(WebMessageType.Request) { Details = data, Headers = HttpWebRequestHelper.GetHeaders(request.Headers), Method = request.Method, AbsolutePath = request.RequestUri.AbsolutePath } } }; Publish(trace); }
private void Notify(Guid messageId, HttpRequest request, HttpResponse response, Exception exception) { var trace = new WebMessageTrace(messageId); if (response != null) { trace.Messages.Add( new WebMessage(WebMessageType.Response) { Details = response.Data, Headers = HttpWebRequestHelper.GetHeaders(response.Headers), Timestamp = DateTime.UtcNow }); } if (request != null) { trace.Server = request.Server; trace.Messages.Add( new WebMessage(WebMessageType.Request) { Details = request.Data, Headers = HttpWebRequestHelper.GetHeaders(request.Headers), Method = request.Request.Method, AbsolutePath = request.Request.RequestUri.AbsolutePath, Timestamp = request.Timestamp }); } if (exception != null) { trace.Messages.Add( new WebMessage(WebMessageType.Error) { Details = string.Format("Message - {0} Stack Trace - {1}", exception.Message, exception.StackTrace), Headers = exception.GetType() == typeof(WebException) && ((WebException)exception).Response != null ? HttpWebRequestHelper.GetHeaders(((WebException)exception).Response.Headers) : new Dictionary <string, string>(), Timestamp = DateTime.UtcNow }); } Publish(trace); }