Source code lines number in stack trace for asp.net application in WinDbg

271 views Asked by At

I have dump of IIS w3wp.exe process and inetpub folder with dll's and pdb's of working asp.net application.

When I execute command !dumpstack in WinDbg, there is no information about code line number, only offset near with function MD:

0:088> !DumpStack
OS Thread Id: 0x1b358 (88)
Current frame: (MethodDesc 00007ffdc6850430 +0x2ae System.Text.RegularExpressions.RegexInterpreter.Go())
Child-SP         RetAddr          Caller, Callee
00000016e619e380 00007ffdc66c3675 (MethodDesc 00007ffdc5fc8650 +0x185 System.Text.RegularExpressions.RegexRunner.Scan(System.Text.RegularExpressions.Regex, System.String, Int32, Int32, Int32, Int32, Boolean, System.TimeSpan))
00000016e619e3f0 00007ffdc66c333e (MethodDesc 00007ffdc5fc1db8 +0x1ce System.Text.RegularExpressions.Regex.Run(Boolean, Int32, System.String, Int32, Int32, Int32)), calling (MethodDesc 00007ffdc5fc8650 +0 System.Text.RegularExpressions.RegexRunner.Scan(System.Text.RegularExpressions.Regex, System.String, Int32, Int32, Int32, Int32, Boolean, System.TimeSpan))
00000016e619e4b0 00007ffdc66c3110 (MethodDesc 00007ffdc5fc1bd8 +0x30 System.Text.RegularExpressions.Regex.Match(System.String, Int32)), calling (MethodDesc 00007ffdc5fc1db8 +0 System.Text.RegularExpressions.Regex.Run(Boolean, Int32, System.String, Int32, Int32, Int32))
00000016e619e4c0 00007ffdc66c209a (MethodDesc 00007ffdc5fc19f8 +0x3a System.Text.RegularExpressions.Regex..ctor(System.String)), calling (MethodDesc 00007ffdc5fc1a28 +0 System.Text.RegularExpressions.Regex..ctor(System.String, System.Text.RegularExpressions.RegexOptions, System.TimeSpan, Boolean))
00000016e619e500 00007ffdc888d27f (MethodDesc 00007ffdc8aee670 +0x27f EmailProcessor.Process()), calling (MethodDesc 00007ffdc5fc1bc8 +0 System.Text.RegularExpressions.Regex.Match(System.String))

Before this command I also set symbols path with commands: .symfix d:\inetpub\bin; .reload.

The main problem I want to solve — which line of code in method EmailProcessor.Process calls System.Text.RegularExpressions.Regex methods — maybe I can get it with +0x27f MethodDesc offset and get command in IL code?

Web application build settings — Release configuration and Debug info is full.

UPD

When I run !clrstack command on my dump I get something like this:

0:088> !CLRStack
OS Thread Id: 0x1b358 (88)
        Child SP               IP Call Site
00000016e619d610 00007ffdc66c41ce System.Text.RegularExpressions.RegexInterpreter.Go()
00000016e619e390 00007ffdc66c3675 System.Text.RegularExpressions.RegexRunner.Scan(System.Text.RegularExpressions.Regex, System.String, Int32, Int32, Int32, Int32, Boolean, System.TimeSpan)
00000016e619e400 00007ffdc66c333e System.Text.RegularExpressions.Regex.Run(Boolean, Int32, System.String, Int32, Int32, Int32)
00000016e619e4c0 00007ffdc66c3110 System.Text.RegularExpressions.Regex.Match(System.String, Int32)
00000016e619e510 00007ffdc888d27f EmailProcessor.Process()
0

There are 0 answers