views:

39

answers:

2

Does this ever happen to you?

You are sitting at your development machine and you are made aware of an unhandled exception in a deployed asp.net application. You visit the deployed web app. You can't see the exception detail in your browser, because custom errors is set to remote only. So you have to login to the web server and instigate the exception.

Is there a built in way to turn custom errors off for certain remote clients?

This only happens to me for trivial applications where I haven't implemented a better solution, like ELMAH. But, it's still annoying when it happens.

A: 

You can use remote debugging.

This MSDN Article discusses debugging strategies for ASP.NET. If you scroll down to the "Local and Remote Debugging" heading there's some information for you and a link to the remote debugging article.

Basically you can debug a remote server in visual studio. Not reccomended for production servers, but staging servers for sure.

Aren
+1  A: 

2 things. One, if you dont have a sophisticated Exception\Logging Policy already implemented, check out the Microsoft Patterns and Practices Enterprise Library - http://entlib.codeplex.com/ - this may be helpful in tracking down bugs in your software.

Secondly, at the very least, put some logging in your global.asax code behind's Application_Error event, you can capture the last unhandled exception by using something like:

Dim lastError As Exception = Server.GetLastError.GetBaseException

Then you can add custom error pages to your web.config and not worry about debugging from a yellow screen, but still capture any error details.

HTH

ewitkows
entlib just makes things so easy.http://www.davidhayden.com/blog/dave/archive/2006/02/15/2802.aspxYou can check this link where what ewitkows says has been explained further.
sassyboy