Slow Request
Check the "Slow request execution detector" to find more details about the slowness
Check application insights to find more details about the slowness
Drill into samples
If we don't see any slow dependency, that means the time is spent inside the code
If the issue is reproducible on demand you can Collect profiler trace :
Or you can use auto heal to collect profiler trace or memory dump by creating a rule for slowness
Use AutoHeal to collect Memory Dump or Profiler Trace
Or you can use auto heal to collect profiler trace or memory dump by creating a rule for slowness
Once we have collected the memory dump using SlowPage scenario
https://buggyappservice.azurewebsites.net/SlowPage/Index/time=40000
Open Memory dump in WinDbg
First thing we always check in the dump is the CLR version and establish if we are in a supported scenario.
lmvm clr .net framework
lmvm coreclr .net core
Checking running requests:
!aspxcorepages -n -a
!ck2
!decompilemember BuggyAppService!BuggyAppService.Controllers.SlowPage.Index
We can see that thread 34 stack, specifically BuggyAppService!BuggyAppService.Controllers.SlowPage.Index calls Thread.Sleep().