debugging a crash – An example

Debugging & troubleshooting applications is a major part of my job, but not using debuggers like WinDBG. Although I have a great liking around using the debuggers, I don’t spend a lot of my time these days using this debugger. So when I get time, I generally read books and use sample code to brush…

1

manually Debugging native memory leaks

So in my previous posts, I explained how you can use DebugDiag tool to capture high memory dumps with leak tracking enabled and also how to use the inbuilt memory analysis scripts to get a report of memory usage. In this post, I discuss how you can do things manually using Debugging tools for Windows…

0

Using debugdiag for memory pressure analysis

In my last post, I discussed a generic approach to collecting memory dumps using Debug Diagnostics tool. In this post, I discuss how to use DebugDiag’s memory pressure scripts. Please note that the current version of DebugDiag does not have the ability to look up .NET heaps and draw conclusions. For .NET debugging, the best…

0

debugging native memory leaks

Debugging native memory leaks is one of the most difficult things to do – (at least for me). There are a few Escalation Engineers at Microsoft Product Support Services who are extremely good at debugging all kinds of issues. I learn a lot from these guys whenever I get an opportunity. In this blog post,…

0

How to get the http headers for asp.net requests from a dump file

So, you have a managed dump and you want to find out the request headers. Here’s one of the methods I use to find this information. I use it especially when I want to view the session ID or cookies. Load SOS Run !aspxpages and note down the HttpContext address you are interested in. Eg:…

0

setting managed breakpoints in windbg

Windbg is a native debugger and you can use it to set a breakpoint on a virtual address. Any managed code running within the process wouldn’t have a virtual address associated with it until it is JIT compiled. Thus setting a breakpoint on a managed function is a bit tricky in Windbg. You can set…

0

catching a memory dump on system.outofmemoryexception

Issues related to high memory utilization on an IIS application server are common. With .NET there is a little misconception that the Garbage Collector (GC) will clean up objects and therefore the process can never run out of memory. This isn’t true. GC will never clean up an object which is in use. If that…

0

debugging memory problems – a beginner’s view

Unlike native debugging, you don’t need symbols for debugging managed code. SOS.dll can also be used with WinDBG and Visual Studio debugger. Simply use the intermediate window in Visual Studio to load SOS.dll and then you can use the commands provided by the extension. My favorite blog for managed debugging (and almost everyone else’s) is…

0

installing & configuring debugging tools for windows

There are umpteen blogs out there that discuss various debugging techniques. So what is so different about this one? Nothing really. It’s just something that I am adding as a reference for myself and for any soul out there that is starting out with debugging. As part of my job, I need to start learning…

0