Latest Microsoft Blogs

Browse by Tags

Related Posts

  • Creating a UI Module For IIS7 to watch Current Requests

    A while back I posted about Failed Request Tracing in IIS 7 and I mentioned the command appcmd list requests which lists the requests that are currently executing in the process... I was playing around a bit with UI Modules in IIS7, you know the ones that show up in the Features view when you open up a site in IIS 7... ... and I decided to create one that displays the requests that are currently executing... This is a step-by-step of how I created it, along with a few notes about things to think about when creating them. The sample should be seen as a proof-of-concept and although you are welcome to use this sample I will advice that it is not tested and doesn't have much in terms of error handling etc. I just wanted to show how I went through...


  • Debugging Silverlight applications with windbg and sos.dll

    If you have hangs, performance, memory issues, exceptions or crashes in Silverlight applications you can debug them using windbg and sos just like you would if the issues occurred in other .net applications.  The difference is that Silverlight in IE runs a subset of the framework where the main dll is coreclr.dll rather than mscorwks.dll so you can't use the regular 2.0 version of sos.dll that you can find in the framework directory.  Instead you can install the Silverlight Developer Runtime from http://www.microsoft.com/silverlight/resources/tools.aspx and the sos.dll for silverlight will be located in the C:\Program Files\Microsoft Silverlight\2.0.30523.8 directory. To troubleshoot silverlight applications with windbg and sos...


  • Troubleshooting a performance issue with Failed Request Tracing and appcmd in IIS7

    I know I'm a little late in the game, but I decided that after vacation it was finally time for me to install Windows 2008 on my Vista box and play around with some of the IIS 7 features like Failed Request Tracing (known as FRT or FREB) and the appcmd tool. I wanted to show you an alternative way of troubleshooting Lab 1 (hang scenario) from my Debugging Lab series using Failed Request Tracing and appcmd so here are some things I will go through in this post Setting up failed request tracing Listing executing requests with appcmd Using Page.Trace with failed request tracing Setting up different FREB rules and looking at the differences between them Short notes about failed request tracing Failed request tracing comes with IIS7. It works...


  • Setting .NET breakpoints in Windbg for applications that crash on startup

    I recently received a question from a reader who wanted to know how to set breakpoints in code for applications that crash on startup. The email went like this: I have a .NET app which is crashing upon startup (it even causes DW20.exe to make an appearance). When I open the .NET app in Windbg, I can see exactly what the exception is and where it happens. What I would like to do is put a breakpoint on the method where the exception is being raised so that I can step through it. This is where I'm stuck. I'm familiar with commands such as !name2ee and !bpmd., however, when I load the .NET app, I don't get a chance to set the breakpoint since the exception happens so early in startup code of the app. It's like as soon as Windbg finishes...


  • My presentation on Troubleshooting ASP.NET applications at Oredev

    The guys at Oredev are in the midst of preparing for the next Oredev conference in November. Sadly I won't be presenting there this year because of other comittments. I say sadly because it was an awesome event last year. If you want to check out my presentation from last year you can do that here . The page says "Due to technical problems with our video equipment, this session was never recorded" but that is incorrect. The video is there... Disclaimer: I had some issues with the mike not fitting properly so it starts off a little bit shaky:) but hopefully you can oversee the presentation skills and look at the content instead There are also plenty of other videos from the other presentations here . After having seen a lot of really...


  • The 21 most popular blog posts

    I started this blog 2.5 years ago today, mostly because I felt that the same types of issues came up over and over and over in our support cases. I figured that if I started writing about them, a lot of people would be able to resolve them on their own, or even better avoid them in the first place. A lot of water passed under the bridge since then, but looking back at some of those earlier posts they are still very applicable today, and they still seem to continue to get a lot of hits. Here is a list of the 21 most popular ones... ASP.NET 2.0 Crash case study: Unhandled exceptions ASP.NET Case Study: Lost session variables and appdomain recycles ASP.NET Memory: If your application is in production… then why is debug=true .NET Memory Leak Case...


  • DebugDiag 1.1 or Windbg, which one should I use? and how do I gather memory dumps

    If you have read any of my posts you have probably noticed that I am very partial to windbg and the debugging tools for windows. I often get friendly nudges from the developers of debugdiag when I suggest using adplus and windbg on internal discussion lists, and to be fair I have to beat on the drum a bit for debug diag as well. My answer to the question "Should I use DebugDiag 1.1 or Windbg" is both... it just depends on the scenario. I often lean towards windbg but to a large extent that is because that is what I use all the time, so in many cases where both fit the bill equally well I simlply haven't invested the time to see how it can be done with debug diag and therefore I suggest what I know works. Before I start the comparison...


  • "Failed to start stack walk: 80004005", "Following frames may be wrong" and other errors you may see in windbg

    When you debug .net applications you will sometimes get error messages in windbg. Here are a few of the ones I most commonly get questions around... Failed to start stack walk If you run the sos command !clrstack to display the .net stack on a thread, and this thread is a .net thread but it is not currently running any .net code, sos will spit out Failed to start stack walk: 80004005. This does not mean that there is anything wrong with the process or with the debugger. It simply means that sos can't display the stack because there is none. OS Thread Id: 0x1ec (12) Failed to start stack walk: 80004005 Unable to walk the managed stack If you run !clrstack on a native thread (i.e. a thread that has no corresponding System.Threading.Thread...


  • ntdll!kifastSystemcallret, SharedUserData!SystemCallStub and search engines...

    If I were to pick out ten keywords for my blog I would pick, in no particular order, ASP.net, windbg, sos, debugging, .net exceptions, memory leaks, performance issues, OutOfMemory exceptions, garbage collection, troubleshooting. Those are the things that I think, but I might be wrong, that people who visit my blog are most interested in. As with most other technical blogs (I think), about half of the traffic to my blog comes from people searching on various search engines, but what really surprised me was what the top search terms are that bring people here, since obviously my keywords are way off:) 1. kifastsystemcallret 2. .net exception types 3. ntdll!kifastsystemcallret 4. 0x800703e9 5. 0xe0434f4d 6. Invalid viewstate 7. tess blog 8. tess...


  • Why are some commands missing in sos for 2.0 compared to sos for 1.1?

    This question that I got from a reader is something that I get asked pretty frequently... "I met a small problem during my dump analysis, our application is using .net 2.0. when I load 2.0 version of sos.dll, some of useful extension commands are lost, but sos.dll which is under clr10 debugging tool has. Do you know any way to use those extension command in 1.1 under 2.0 sos.dll?" After you have gotten used to the wealth of commands and functions in sos for .net framework 1.1 it can get a bit tedious to have to do these things manually when debugging 2.0 applications. The differences are not extreme but commands such as !aspxpages etc. are missing in 2.0, and the reason is basically that the debugging architecture in 2.0 is very different...


Page 1 of 2 (13 items) 1 2 Next >
Microsoft Communities