XPerf/WPA堆栈不显示名称问题求助(源自Application Insights Profiler)
解决Application Insights Profiler堆栈跟踪名称缺失问题
确保符号文件(PDB)配置正确
堆栈跟踪的函数名称依赖符号文件,需确认:- Azure App Service部署的应用,在服务的配置 > 常规设置中开启「启用符号下载」;
- 自行托管的服务,将PDB文件与应用二进制文件放在同一目录,或配置本地符号服务器。
调整应用编译设置
Release模式默认的代码优化会抹除部分函数名称:- 临时切换Debug模式重新部署测试(生产环境不建议长期使用);
- 若保留Release模式,在Visual Studio中右键项目→属性→生成→高级,将「调试信息」设置为「完整」或「pdb-only」。
验证Profiler的安装与运行状态
- .NET应用需确认已安装对应NuGet包:ASP.NET Core用
Microsoft.ApplicationInsights.Profiler.AspNetCore,ASP.NET用Microsoft.ApplicationInsights.Profiler; - 在Azure门户的Application Insights资源中,进入性能 > 探查器,确认探查器处于运行状态,且存在成功的近期跟踪会话。
- .NET应用需确认已安装对应NuGet包:ASP.NET Core用
配置Azure符号服务器补充系统符号
若缺失.NET框架或Azure服务的函数名称,在Visual Studio的工具 > 选项 > 调试 > 符号中,添加https://msdl.microsoft.com/download/symbols服务器并勾选「Microsoft符号服务器」,重新加载堆栈跟踪文件。重新下载完整的跟踪数据
若当前下载的跟踪文件不完整,尝试从Application Insights Profiler重新下载最新的跟踪会话数据,确保下载过程无中断。
内容的提问来源于stack exchange,提问作者itsme017
相关产品推荐
相关产品推荐

