UWP Application Insights 没有崩溃的调用堆栈
Posted
技术标签:
【中文标题】UWP Application Insights 没有崩溃的调用堆栈【英文标题】:UWP Application Insights no call stack for crashes 【发布时间】:2016-02-25 12:02:24 【问题描述】:我为一个新的 UWP 项目设置了 Application Insights。
我收到所有信息并正确崩溃,但是,当我尝试查看异常详细信息时,我得到了所有信息,但是:
调用堆栈不可用 方法失败:未知我在 App.xaml.cs 构造函数中启用:
WindowsAppInitializer.InitializeAsync();
【问题讨论】:
Windows 10 uap?它是发布版本吗?如果你能重现崩溃,你可能想运行 fiddler,看看当 AI 发送它的输出时输出了什么输出,看看发送了什么数据。 Win 10 发布版本现在是 .net 原生的,所以例外基本上只是内存位置和偏移量,就像 C++ 代码一样...... 例如,看看这个问题,FileNotFoundException
在 win10 上的样子:***.com/questions/33572396/…
要获取 Windows 10 UAP 应用程序的完整故障转储信息,您可能需要使用 HockeyApp(Application Insights 组织的一部分)之类的工具,请参阅 support.hockeyapp.net/kb/…
【参考方案1】:
如果您可以自己处理异常,则可以将堆栈跟踪(以及其他任何内容)添加为自定义属性。在我们的应用中,我们使用全局异常处理程序,在 App 构造函数中初始化:
CoreApplication.UnhandledErrorDetected += UnhandledError;
处理程序本身大致如下:
private void UnhandledError(object sender, UnhandledErrorDetectedEventArgs eventArgs)
try
eventArgs.UnhandledError.Propagate();
catch (Exception e)
var properties = new Dictionary<string, string>()
"trace", e.StackTrace ,
"mesage", e.Message ,
;
telemetryClient.TrackCrash(e, properties);
【讨论】:
以上是关于UWP Application Insights 没有崩溃的调用堆栈的主要内容,如果未能解决你的问题,请参考以下文章
ILogger 到 Application Insights