Missing Stacktrace

Mike

Posted on
Jul 10 2015

I'm currently using the ASP.Net Raygun library in production. The issue i'm facing is my organization has very strict firewall rules for PCI Compliance. Firewall exceptions at my organization are configured by IP Address for all allowed outgoing web traffic (80/443). So whenever api.raygun.io resolves to a new address or pool (which seems to happen frequently), all of our webserver API calls to raygun get blocked.

The solution that I have come up with is to simply send the RaygunIdentifierMessage class object as well as the Exception class object to an Asp WebApi application that resides on our internal network, where outgoing web traffic is not blocked. This endpoint then uses the asp webapi raygun client to send the exception. This solution works, however when I view the exception report on the Raygun Dashboard the stack trace is missing even though the exception object contained one. Any ideas of why the stacktrace may be missing?


Jamie Penney

Posted on
Jul 10 2015

Hi Mike,

The StackTrace is built up from the Exception object passed to Raygun, so it wont have one when you send it from your proxy service as the Exception you've got there has been deserialized and I'm fairly certain the stack frame information doesn't get serialized.

What you could do is change the endpoint that Raygun sends crash reports to by setting the endpoint attribute on <RaygunSettings /> in your app/web.config. Then you don't have to worry about manually handling anything, just set up an endpoint on your WebApi service to take the json blob as a whole and forward it to the Raygun API. The API itself is pretty easy to make requests to, just POST the JSON to https://api.raygun.io/entries, and set the X-APIKEY header to the api key of your application.

Does that make sense?


Mike

Posted on
Jul 11 2015

Hi Jamie,

That sounds like a solution. I will give it a try.


Mike

Posted on
Jul 11 2015

Thanks Jaime. Your solution works great!


Jamie Penney

Posted on
Jul 13 2015

Great, glad I could help!


Reply