Woo. I just found this gem of an IIS 6.0 feature while hopping around for info prior to writing an ISAPI Extension for IIS 6.0. It's called IIS 6.0 Enterprise Tracing for Windows:
Windows Server 2003 includes Enterprise Tracing for Windows (ETW), a new framework for implementing tracing providers that can be used for debugging and capacity planning. IIS 6.0 implements a number of providers to trace key transitions and the progress that an HTTP request makes as it moves through the IIS service framework. These providers include the following:
- HTTP Service Trace. This provider traces new connections, new HTTP requests from a given connection, HTTP kernel cache hits, application pool routing, and HTTP request completion.
- IIS: WWW Server. This provider traces the transition of a request from HTTP.sys to the worker process, start and stop events surrounding Common Gateway Interface (CGI) requests, and the transition of a request back to HTTP.sys from the worker process. This information reveals the type of request that is being processed.
- IIS: SSL Filter. This provider traces calls into and out of the SSL Filter, which is used for SSL traffic.
- IIS ISAPI Extension. This provider traces the transition of a request into and out of ISAPI extension processing.
- IIS ASP. Traces the start and completion of the execution of an ASP request.
These tracing providers allow you to follow a request through all of its phases. This information is very useful in the problem isolation phase of troubleshooting. For example, ISAPI filters can often cause delays or hangs in HTTP request processing. The tracing functionality can help to determine which ISAPI filter is causing the delay for a given request.
Nice! It's a bit beastly to use and there isn't a GUI tool to display the trace logs prettily so my eyes won't cross, but it's will come in handy when I find myself up the creek wearing a blindfold.