We are currently using FogBugz.BugReport.Submit (BugzScout.dll) to report back any errors that occur in our distributed application and it works like a charm for the most part.
Is there any way to report back the exception and inner exceptions that are thrown when an error occurs rather than only the top level exception?