使用分析数据文件保存符号信息
如果您使用 Visual Studio 集成开发环境 (IDE) 分析文件,并且计划将您的 VSP 文件移动到另一台计算机,则必须设置性能项目设置,将符号保存或序列化到报告文件中。 这会增加报告文件的大小。 由于以下两个原因需要序列化符号:
在目标程序集从其临时存储区中的位置丢失之前,将代码符号嵌入到性能报告中。
保存符号以便性能报告可从分析的计算机移植,并且如果在可能有不同符号的另一台计算机上打开该报告进行分析,能输出相同的信息。
您可以从 Visual Studio IDE 或命令行序列化符号:
若要在 Visual Studio IDE 中序列化符号,请指向菜单栏中的**“工具”,然后单击“选项”。 在“选项”窗口中,选择“性能工具”,再选择“自动序列化符号信息”**复选框。
PACKSYMBOLS 是保存报告文件时的等效命令行选项。 若要序列化符号,请键入 vsperfreport /summary:all /packsymbols filename.vsp。
符号问题疑难解答
如果您在自己的代码中没有看见任何符号,有一些常见的解决方案:
在命令行运行 vsperfreport /debugsympath 来显示探查器组件从中加载符号信息的位置的完整列表,以及所用的符号文件是否与项目所用文件相匹配。
确保使用 /PACKSYMBOLS 标志运行 vsperfreport,或者在 Visual Studio IDE 中选择了常规性能资源管理器选项中的序列化符号信息选项。
如果您收集了类型数据,请将 /SUMMARY:TYPE 添加到 vsperfreport 命令行。
如果您从 Windows 或其他 Microsoft 程序没有看见符号:
确保已将路径设置为您的 Windows 符号缓存。 执行以下操作之一可设置符号缓存路径:
在 Visual Studio IDE 中将“调试程序”->“符号”选项设置为正确的路径。
在 VSPerfReport 命令行中添加 -symbolpath 选项以包括您的符号。
如果在 ASP.NET 中没有看见任何符号,请确保为 ASP 服务器正确设置了符号服务器。
重新打包符号
如果您要将符号重新打包到报告中,可以使用命令行工具 VsPerfReport 来执行此操作。 使用以下命令行:
VsPerfReport -clearpackedsymbols filename.vsp
VsPerfReport -packsymbols -summary:all filename.vsp