IIS providers
Applies To: Windows Server 2003, Windows Server 2003 with SP1
Components that provide tracing events to ETW, like ASP and ISAPI extensions, are called providers. In Windows Server 2003, Service Pack 1, the following IIS providers report trace data to ETW:
IIS: WWW Server
IIS: SSL Filter
IIS: ISAPI Extension
IIS: Active Server Pages (ASP)
IIS: IISAdmin
IIS: Request Monitor
When you configure the trace session by creating the provider file, you define which providers report data. Components not listed in the provider file do not report trace data. Each of the providers listed here is described in greater detail later in this section.
If you are actively troubleshooting a problem on a busy production server, try to limit the number of providers defined in the provider file or use the IIS: WWW Server UrlFilter flag to restrict tracing to a specific URL. Doing so will result in a more manageable set of trace data in the trace log which should make it easier to locate the source of the problem.
If you are new to request-based tracing, run a few practice trace sessions on a test computer with multiple (or all) providers defined in the provider file so you can see what kind of events are generated with “normal” traffic and how quickly the trace log can fill with data.
IIS: WWW Server
This provider traces the following core WWW service functional areas. If you wish to trace one or more of these functional areas, you must define these areas in the provider file using the designated flag or the friendly flag. If a flag or friendly flag is not designated in the provider file, the functional area will not be traced. The following table lists all of the functional areas, the flags to enable them, and the "friendly" flag name of each functional area. Each of these functional areas is described in detail later in this section.
Functional Area | Flag | Friendly Flag Name |
---|---|---|
UrlFilter |
1 |
UseURLFilter |
Authentication |
2 |
IISAuthentication |
Security |
4 |
IISSecurity |
ISAPI Filter |
8 |
IISFilter |
Static File |
10 |
IISStaticFile |
CGI |
20 |
IISCGI |
Compression |
40 |
IISCompression |
Cache |
80 |
IISCache |
WWW Server All |
0xFFFFFFFE |
IISAll |
Note
You can identify more than one functional area in a provider file by adding the numeric flag values. For example, if you want to trace using the Urlfilter flag (1), the Authentication flag (2), and the Security flag (4), you can enter a flag value of 7 in your provider file to trace all of these areas.
UseUrlFilter
The UseUrlFilter flag allows you to specify which URL(s) to trace. If you do not enable this flag, request-based tracing traces all URLs. If you enable this flag and configure the TraceUriPrefix Metabase Property for the URL’s you want to trace, you can preserve system resources like disk space and CPU overhead while narrowing your troubleshooting efforts to a much smaller data set in the trace log.
Important
If you plan to trace a specific URL or group of URLs using the UseUrlFilter flag, you must configure the TraceUriPrefix property in the IIS metabase with the URL’s you want to trace. If you enable the UseUrlFilter flag and do not enable the TraceUriPrefix property, ETW will not trace any URLs. For information on how to enable the TraceUriPrefix metabase property, see How to Trace Requests for a Specific URL or Set of URLs.
Authentication
The IISAuthentication flag traces authentication actions, including the name of the authenticated user, the authentication scheme (anonymous, basic, etc) and the results of the authentication attempt (successful, failed, error, etc). If users are having problems authenticating on your Web application, use the IISAuthentication flag to understand what is happening with authentication on the server.
Security
The IISSecurity flag generates trace events when requests are rejected by the IIS server for security-related reasons, like a client request was denied access to a resource. Use this flag to understand why requests are being rejected for security reasons.
ISAPI Filter
The IISFilter flag traces calls into and out of ISAPI filters. Use this flag to understand how requests have been changed after entering an ISAPI filter, as well as how long requests are spending in the filters.
Static File
The IISStaticFile flag generates trace events when a request is for a static file.
CGI
The IISCGI flag generates trace events when a request is for a CGI file.
Compression
The IISCompression flag generates trace events when a response is compressed.
Cache
The IISCache flag generates trace events for cache operations associated with the request.
WWW Server All
The IISAll flag forces all of the WWW Server functional areas to generate trace events.
IIS: SSL Filter
This provider traces calls into and out of the Secure Sockets Layer (SSL) Filter, which is used for encrypting and decrypting SSL requests.
IIS: WWW ISAPI Extension
This provider traces ISAPI extension requests.
IIS: Active Server Pages (ASP)
This provider traces requests for Active Server Pages (ASP) files, including calls into and out of COM+ objects. The events captured by this provider are useful for diagnosing hangs or crashes caused by COM objects used in ASP pages.
IIS: IISAdmin Service
This provider traces the IIS Admin service during startup and shutdown. The IIS Admin service reads the IIS metabase.xml file which stores all IIS configuration data. Use this provider if you notice that the IISAdmin service has trouble starting up or shutting down.
This provider includes the following flags:
Startup
The Startup flag forces ETW to trace IIS Admin service startup events.
Shutdown
The Shutdown flag forces ETW to trace IIS Admin service shutdown events.
For more information about this provider, see Tracing Startup and Shutdown Problems in the IIS Admin Service.
IIS: Request Monitor
This provider traces all requests currently executing in worker processes at the moment tracing was started. For more information about this provider, see Currently Executing Requests Tracing.