Windows Performance Analyzer (WPA) is not resolving symbols for my c# application

3.1k views Asked by At

OS: Windows Server 2012 R2 (also tried Windows 10)

WPRUI/WPA version: 10.0.16299.91

Visual Studio Community 2017 version: 15.6.6

.NET version: 4.7

I'm having trouble loading symbols in WPA for what I think is a really simple scenario.

  1. C# Console Application (called TestEtw - binary is TestEtw.exe)
  2. ETL file
  3. NGENPDB files (output by WPRUI)
  4. Symcache file for testetw (TestEtw.exe-f5dfdbac20df4e29879d1c9abbd2cda61v2.symcache)
  5. _NT_SYMBOL_PATH=c:\MySyms;srv*C:\Symbols*http://msdl.microsoft.com/download/symbols
    1. The PDB is in the bin directory of the project, and I made a copy of it in c:\MySyms
  6. Load ETL file in WPA and click load symbols. You'll find that wpa does not load symbols for TestEtw.exe (the aforementioned C# console application)

enter image description here

I've tried a number of things:

  1. Validated that symchk can find the symbols by running: symchk c:\Users\Administrator\source\repos\TestEtw\TestEtw\bin\Debug\TestEtw.exe /v
    1. It finds the symbols at c:\MySyms\TestEtw.pdb
  2. Verified that c:\symcache actually contains a testetw file and its name matches the PDB signature: TestEtw.exe-f5dfdbac20df4e29879d1c9abbd2cda61v2.symcache
  3. An older version of WPA (6.3.9600.16384 -- this is the winblue_rtm version) also does NOT load these symbols
  4. Confirmed with Process Monitor that WPA does open the symcache file for TestEtw.

So, it appears as though symcheck can find the pdb, wpa is populating the symcache and even loading the symcache file, but WPA UI is not displaying the symbols in TestEtw.

Any help would be greatly appreciated. Thanks!

0

There are 0 answers