我正在尝试找出一种方法来调试我在Azure的应用程序洞察中收到的异常。 我是这种类型的调试的新手,因为我只是在Visual Studio中处理错误,而Visual Studio正在运行一个活动的调试器。但是,对于Application Insights,存在空引用异常,它们仅提供调用堆栈,并且没有有用的异常消息。
异常消息:Arg_NullReferenceException
调用堆栈:at SharedLibrary!<BaseAddress>+0x68d4c5
--- End of stack trace from previous location where exception was thrown ---
at SharedLibrary!<BaseAddress>+0x329115
at SharedLibrary!<BaseAddress>+0x329207
at SharedLibrary!<BaseAddress>+0x34d603
其他例外情况包含Excep_FromHResult 0x800455A0
等消息,
而其他人实际上展示了他们追溯的方法。
有没有办法通过解密callstack或Base Address或HResult找到这些异常的来源?
这对于消除我的应用中的错误非常有用。
答案 0 :(得分:5)
更新:现在HockeyApp遥测堆栈支持此功能。请参阅:http://support.hockeyapp.net/kb/client-integration-windows-and-windows-phone/crash-reporting-for-uwp
使用.NET Native编译应用程序时,生成的二进制文件不包含.NET应用程序通常可用的所有丰富元数据。 (如果在使用.NET Native编译时调用Environment.StackTrace,则会得到相同的行为。)我们会将所有这些数据写入生成的pdb文件中,但它在运行时不可用。
这里的解决方案是使用pdb文件中的信息事后重建堆栈。我知道AppInsights团队在他们的积压工作中有这个,但它似乎没有发生。我们有一些我们试图发布的诊断工具,所以你可以自己进行这种重新组合,但是有一些麻烦让它们发布。
如果您发送邮件至dotnetnative@microsoft.com描述此问题,可能有助于润滑一些轮子。