Screencast: Troubleshooting Slow Requests in Windows Azure Web Sites

This is the first in a series of Microsoft CTS Screencasts on using Windows Azure Web Sites.

Troubleshooting performance issues in the cloud can be tough. If you are dealing with slowness for a particular page in your Windows Azure Web Sites site, you can use the Failed Request Tracing feature to find out the cause for the slow response times. If you are using an ASP.NET site, you can use additional tracing features to instrument your code and find exactly where in your code you are experiencing a performance problem.

Click below to watch the screencast. For best results, use 720p HD quality and fullscreen mode.



In this screencast, I used the following XML snippet in my configuration file to configure Failed Request Tracing.

<!-- Tracing slow requests using Failed Request Tracing. -->
          <remove path="*" />
          <add path="*.aspx">
              <add provider="ASP" verbosity="Verbose" />
              <add provider="ASPNET" areas="Infrastructure,Module,Page,AppServices" verbosity="Verbose" />
              <add provider="ISAPI Extension" verbosity="Verbose" />
              <add provider="WWW Server" areas="Authentication,Security,Filter,StaticFile,CGI,Compression,Cache,
                                                                             RequestNotifications,Module,FastCGI" verbosity="Verbose" />
            <failureDefinitions statusCodes="200-999" />

Once you have used this method to troubleshoot a problem, you should turn off Failed Request Tracing in the Azure portal.

We have a FAQ thread on the Windows Azure Web Sites forum that describes how to use Failed Request Tracing to capture a trace when a request takes longer than a specified time. However, I opted to use the 200 status code in this post because it allows us to see the entire request lifecycle.

I hope you enjoy this screencast. There are more to come!