views:

625

answers:

3

Hi,

We currently have fairly robust error handling functionality in our ASP.Net application.

We log all errors in the database, a text file on the server and also send automated emails containing the error details back to our support people.

This all happens on the server of course.

We would like to capture (and retrieve) an image of the client browser at the time the error occurred to provide additional info for troubleshooting?

Is this at all possible?

If so what would be an elegant approach to this problem?

+1  A: 

This is not technically impossible, but it is so impractical for nearly all purposes that it might as well be impossible. You would need a plugin running on the client's machine which can receive instructions from your error page to take the screenshot, connect to the server and upload it.

If your client screens have complex data which affects the state surrounding the exception, you should revisit your design to ensure all of that is recorded before it's sent to the client, so you can keep all relevant state tracked with a given exception.

Rex M
Hi Rex, we have complex screens where errors occur based on configured data. To reproduce the error it would help us to be able to see all options that were selected by the user at the time of the error.
Konrad
@Konrad OK, but please re-read my first paragraph. Needing it doesn't make it feasible. You should revisit your design to record more of this complex data before it is sent to the client.
Rex M
I gave this some more thought. My "solution" stated below is flawed as well. I will follow your advice and try instead to convince the powers that be that we need to revisit the current error handling to be more detailed. BTW: I found myself nodding my head while reading the articles on your site.
Konrad
@Konrad cheers... hope you have success with it.
Rex M
A: 

Capturing a client browser screenshot is not possible due to security and privacy reasons. What you can (and imho you should) do is capture the url and the browser version and try to reproduce it in the same environment.

Ender
A: 

Saying something is "impractical" is usually easier than actually trying to solve something that is difficult, but not technically impossible.

I have done some more research and have come across an approach that allows one to get hold of the rendered html server side.

Further more, there are ways to also convert html to images

I will implement the solution using a combination of the two.

Konrad
has anyone tried this approach?
rao