References > Template Reference > AppInsight > AppInsight for IIS

AppInsight for IIS

AppInsight template for monitoring IIS instances. This Template helps you to monitor health of your whole IIS instance. For details on AppInsight, see AppInsight for IIS.

Prerequisites

WMI access to target server.

Monitored Components

For details on monitors, see SAM Component Monitor Types.

Application Pools

Collects the status of all monitored application pools for the IIS application.

Due to dependencies, you can only add notes. Values cannot be modified.

Sites

Collects the status of all monitored sites for the IIS application.

Due to dependencies, you can only add notes. Values cannot be modified.

Site Bindings Monitor

Collects the data for site bindings, including the type of HTTP or HTTPS, IP address, and ports.

Due to dependencies, you can only add notes. Values cannot be modified.

Worker Process Statistic Monitor

Collects and provides data and status of the worker process activation service for an application pool. This information includes the number of processes running in the application pool, recent failures of the process in the pool, total pool recycles since the service was started, total ping failures, total shutdown failures, and total startup failures.

You can modify the thresholds for this monitor.

Log Parsing Monitor

Collects and displays log data for the AppInsight for IIS log.

You can modify the thresholds for this monitor.

Total Connection Attempts

The total number of connections to the Web or FTP service that have been attempted since service startup. The count is the total for all Web sites or FTP sites combined, regardless of what you choose for Instance. This number does not include connection attempts that failed at the TCP (transport) or IP (network) layer.

You can modify the thresholds for this monitor.

Total Logon Attempts

The total number of successful logons to the Web or FTP service since the service started. Value does not include failed logon attempts.

You can modify the thresholds for this monitor.

Current Connections

Current Connections is the current number of connections established with the Web service. This is the sum of both non-anonymous (authenticated) and anonymous (unauthenticated) users.

You can modify the thresholds for this monitor.

Possible issues: If this number is at or near the maximum connections allowable, the Web service is at full capacity.

Resolution: If the value is too high for a particular IIS server, then load balancing or clustering technologies can be applied to lower the burden of the server in question. Also check the Web Site property page for maximum connection limit.

Current Anonymous users

Current Anonymous Users is the number of users who currently have an anonymous connection using the Web service. If anonymous connections are not permitted on the server, the value of all anonymous user counters is always zero.

You can modify the thresholds for this monitor.

Current NonAnonymous Users

Current NonAnonymous Users is the number of users who currently have a non-anonymous connection using the Web service. If authentication is not enabled on the server, and none of the applications that run on the server request or require authentication, then the value of all non-anonymous user counters is always zero.

You can modify the thresholds for this monitor.

Total Connection Attempts

The total number of connections to the Web or FTP service that have been attempted since service startup. The count is the total for all Web sites or FTP sites combined, regardless of what you choose for Instance. This number does not include connection attempts that failed at the TCP (transport) or IP (network) layer.

You can modify the thresholds for this monitor.

Total Logon Attempts

The total number of successful logons to the Web or FTP service since the service started. Value does not include failed logon attempts.

You can modify the thresholds for this monitor.

Total Bytes Received

The total bytes of data that have been received by the WWW service since the service started. This information can be used to determine network load on a specific Web site.

You can modify the thresholds for this monitor.

Total Bytes Sent

The number of data bytes that have been sent by the WWW service since the service started. This information can be used to determine network load on a specific Web site.

You can modify the thresholds for this monitor.

Total Bytes Transferred

The total number of bytes of data that have been sent and received by the WWW service since the service started. This information can be used to determine network load on a specific Web site.

You can modify the thresholds for this monitor.

HTTP Bindings Monitor

A performance counter, displays the response time for loading the HTTP Bindings and testing the web server's ability to accept incoming sessions and transmit the requested page.

You can modify all settings.

HTTPS Bindings Monitor

A performance counter, displays the response time for loading the HTTPS Bindings and testing the web server's ability to accept incoming sessions and transmit the requested page.

You can modify all settings.

SSL Certificate Monitor

This component monitor tests a web server's ability to accept incoming sessions over a secure channel and then test the security certificate.

You can modify the thresholds for this monitor.

Site Directory Info Monitor

Provides site directory information for the Exchange server.

You can modify the thresholds for this monitor.

Site Log Directory Monitor

Provides site log directory information for the Exchange server.

You can modify the thresholds for this monitor.

Windows Process Activation Service

Collects data from the Windows process activation service.

You can modify the thresholds for this monitor.

World Wide Web Publishing Service

Collects data and status from the W3Svc service. This is used for Internet access.

You can modify the thresholds for this monitor.

Web Management Service

Collects data and status from the Web Management Service. This is used for authentication.

You can modify the thresholds for this monitor.

ASP.NET State Service

Collects and provides status data for all ASP.NET IIS application requests that contain all the websites for the current application.

You can modify all settings.

Application Host Helper Service

Collects and provides data from the Application Host Helper Service, which enables IIS configuration history and application pool SID (security identifier) mapping. It enables the configuration history functionality by saving the ApplicationHost.config file to separate configuration history subdirectories at set intervals.

You can modify all settings.

IIS Event Log Monitor

Collects and displays IIS events.

You can modify settings, but cannot disable this monitor.

Current File Cache Memory Usage

Current number of bytes used for the user-mode file cache.

You can modify the thresholds for this monitor.

Output Cache Current Memory Usage

Current memory usage by output cache.

You can modify the thresholds for this monitor.

File Cache Hits %

The ratio of user-mode file cache hits to the total number of cache requests since the service started.

This counter reflects how well the settings for the IIS file cache are working. A site with mostly static files should have a very high cache hit percentage (70%-85%). If the Kernel: Cache Hits % counter is low, this value should be high. Note that this counter does not include dynamic content, only static files. If your static files are not being cached, you might want to lengthen the activity period for this cache.

You can modify the thresholds for this monitor.

Possible issues: The value returned from Kernel: Cache Hits % is low.

Resolution: Examine your file set and determine why your files are not being cached.

Kernel: URI Cache Hits %

The ratio of kernel URI cache hits to the total number of cache requests since the service started.

You can modify the thresholds for this monitor.

Metadata Cache Hits %

The ratio of user-mode metadata cache hits to total number of cache request since the service started.

You can modify the thresholds for this monitor.

Output Cache Current Hits %

Output cache current hit ratio. The ratio is calculated as (H)/(H+M), where H and M represent Hits and Misses in previous sample intervals, respectively.

You can modify the thresholds for this monitor.

URI Cache Hits %

The ratio of user-mode URI Cache Hits to the total number of cache requests since the service started.

If content cannot be cached in the HTTP.sys response cache, the value of this counter should be as high as possible. If your content can be stored in the HTTP.sys response cache, the value of this counter should be low.

You can modify the thresholds for this monitor.

Active Requests

Current number of requests being processed by the worker process.

You can modify the thresholds for this monitor.

Requests / Sec

HTTP requests/sec being processed by the worker process.

You can modify the thresholds for this monitor.

Active Threads Count

Number of threads actively processing requests in the worker process.

You can modify the thresholds for this monitor.

Current Worker Processes

The current number of worker processes that are running in the application pool.

You can modify the thresholds for this monitor.

Recent Worker Process Failures

The number of times that the worker process for the application pool failed during the rapid-fail protection interval. Value should be count as difference with threshold greater than 0.

You can modify the thresholds for this monitor.

Total Application Pool Recycles

The number of times that the application pool has been recycled since Windows Process Activation Service (WAS) started. Value should be count as difference with threshold greater than 0.

You can modify the thresholds for this monitor.

Total Worker Process Failures

The number of times that worker processes have crashed since the application pool was started. Value should be count as difference with threshold greater than 0.

You can modify the thresholds for this monitor.

Total Worker Process Ping Failures

The number of times that Windows Process Activation Service (WAS) did not receive a response to ping messages sent to a worker process. Value should be count as difference with threshold greater than 0.

You can modify the thresholds for this monitor.

Total Worker Process Shutdown Failures

The number of times that Windows Process Activation Service (WAS) failed to shut down a worker process. Value should be count as difference with threshold greater than 0.

You can modify the thresholds for this monitor.

Total Worker Process Startup Failures

The number of times that Windows Process Activation Service (WAS) failed to start a worker process. Value should be count as difference with threshold greater than 0.

You can modify the thresholds for this monitor.

Maximum File Cache Memory Usage

Maximum number of bytes used by the user-mode file cache since service startup. The value of this counter and the value of Web Service Cache\Current File Cache Memory Usage should be the same.

You can modify the thresholds for this monitor.

Possible issues: If the numbers are different, the cache was flushed. If this counter is significantly higher than Web Service Cache\Current File Cache Memory Usage, you might consider recycling the worker process because the application might have a memory leak.

File Cache Hits

Total number of successful lookups in the user-mode file cache since service startup. Value depends on content. If the content files cannot be cached by HTTP.sys, a high value is good.

You can modify the thresholds for this monitor.

File Cache Misses

Total number of unsuccessful lookups in the user-mode file cache since service startup. A file cache miss means the request for the file must go to the hard disk.

You can modify the thresholds for this monitor.

Possible issues: File cache misses negatively impact performance and scalability. This value should be as low as possible. Also note that kernel cache hits will cause this value to be low.

Metadata Cache Hits

Total number of successful lookups in the user-mode metadata cache since service startup.

You can modify the thresholds for this monitor.

Metadata Cache Misses

Total number of unsuccessful lookups in the user-mode metadata cache since service startup. Value should be as low as possible.

You can modify the thresholds for this monitor.

Output Cache Total Hits

Total number of successful lookups in the output cache since service startup.

You can modify the thresholds for this monitor.

Output Cache Total Misses

Total number of unsuccessful lookups in the output cache since service startup.

You can modify the thresholds for this monitor.

URI Cache Hits

Total number of successful lookups in the user-mode URI cache since service startup. Value depends on content. If content cannot be cached in the HTTP.sys response cache, the value of this counter should be as high as possible. If your content can be stored in the HTTP.sys response cache, the value of this counter should be low.

You can modify the thresholds for this monitor.

URI Cache Misses

Total number of unsuccessful lookups in the user-mode URI cache since service startup.

Low is better. The value of this counter increases when IIS cannot locate requested content in either the HTTP.sys response cache or the IIS file cache, and must locate the requested content on the hard disk.

You can modify the thresholds for this monitor.

Possible issues: If the value of this counter is high, IIS locate requested content on hard disk which could slow overall performance.

Total Method Requests

The number of HTTP requests that have been made since the WWW service started.

You can modify the thresholds for this monitor.

Delete Requests

The number of HTTP requests that have used the DELETE method since the WWW service started.

You can modify the thresholds for this monitor.

Get Requests

The number of HTTP requests that have used the GET method since the WWW service started. GET requests are generally used for basic file retrievals or image maps, though they can be used with forms.

You can modify the thresholds for this monitor.

Resolution: If the value is too high for a particular IIS server, then load balancing or clustering technologies can be applied to lower the burden of the server in question.

Head Requests

The number of HTTP requests that have used the HEAD method since the WWW service started. HEAD requests typically indicate that a client is querying the state of a document they already have to see if it needs to be refreshed.

You can modify the thresholds for this monitor.

CGI Requests

The number of all CGI requests that have been made since the WWW service started. CGI requests are custom gateway executable (.exe files) the administrator can install to add forms processing or other dynamic data sources. CGI requests spawn a process on the server which can be a large drain on server resources.

You can modify the thresholds for this monitor.

ISAPI Extension Requests

The number of ISAPI extension requests that have been made since the WWW service started. ISAPI Extension Requests are custom gateway DLLs, which the administrator can install to add forms processing or other dynamic data sources.

You can modify the thresholds for this monitor.

Put Requests

The number of HTTP requests that have used the PUT method since the WWW service started.

You can modify the thresholds for this monitor.

Post Requests

The number of HTTP requests that have used the POST method since the WWW service started. Post requests are generally used for forms or gateway requests.

You can modify the thresholds for this monitor.

Resolution: If the value is too high for a particular IIS server, then load balancing or clustering technologies can be applied to lower the burden of the server in question.

Files Received

The number of files that have been received by the WWW service since the service started.

You can modify the thresholds for this monitor.

Files Sent

The number of user-mode files that have been sent by the WWW service since the service started. This counter does not include cache hits. Note that this counter does not increment when files are being served from the kernel-mode cache.

You can modify the thresholds for this monitor.

Files Transferred

The sum of Total Files Sent and Total Files Received by the WWW service since the service started. Note that this counter does not increment when files are being served from the kernel-mode cache.

You can modify the thresholds for this monitor.

Locked Errors

The number of requests that have been made since the service started that could not be satisfied by the server because the requested document was locked. This is usually reported as HTTP error 423. Baseline required.

You can modify the thresholds for this monitor.

Not Found Errors

The number of requests that have been made since the service started that were not satisfied by the server because the requested document was not found. This is usually reported as HTTP error 404.

You can modify the thresholds for this monitor.

Request Execution Time

This displays the number of milliseconds that it took to execute the most recent request.

The execution time begins when the HttpContext for the request is created, and stops before the response is sent to IIS. Assuming that user code does not call HttpResponse.Flush, this implies that execution time stops before sending any bytes to IIS, or to the client. When the process model is enabled, the request execution time includes the time required to write the response to the client, and therefore depends upon the bandwidth of the client's connection. There is no threshold for this counter. The value of this counter should be stable. Experience will help you set a threshold for a particular site.

You can modify the thresholds and enabled/disabled status for this monitor.

Request Wait Time

This displays the number of milliseconds that the most recent request was waiting in the queue. This does not include any time spent waiting in application queues. The threshold for this counter is 1,000. The average request should spend 0 milliseconds waiting in the queue.

You can modify the thresholds and enabled/disabled status for this monitor.

Possible issues: If this indicator is greater than 1,000 ms, the performance of the IIS server is suffering.

Requests Queued

This displays the number of requests waiting to be processed.

The Aspnet_wp process queue is a named pipe through which the request is sent from one process to the other. The number of requests in this queue increases if there is a shortage of available I/O threads in the Aspnet_wp process. When the limit specified by <processModel requestQueueLimit=/> is exceeded, requests will be rejected with a 503 error (Service Unavailable). Note that if a request is rejected for this reason, it will never reach managed code and error handlers will not be notified. Normally this only occurs when the server is under a very heavy load. Virtual directory queues maintain the availability of worker and I/O threads. The number of requests in these queues increases if the number of available worker threads or available I/O threads falls below the limit specified by <httpRuntime minFreeThreads=/>. When the limit specified by <httpRuntime appRequestQueueLimit=/> is exceeded, the request is rejected with a 503 error and the client is sent an HTTP exception with the message, Service Unavailable.

You can modify the thresholds and enabled/disabled status for this monitor.

Possible issues: When this value starts to increment linearly with increased client load, the web server computer has reached the limit of concurrent requests that it can process.

Resolution: The default maximum value for this counter is 5,000. You can change this setting in the Machine.config file.

Requests Rejected

This displays the number of requests rejected because the request queue was full.

Requests are rejected when one of the queue limits is exceeded. Back-end latency, such as that caused by a slow computer running SQL Server, is often preceded by a sudden increase in the number of pipeline instances and a decrease in % Processor Time and Requests/second. A server might be overwhelmed during times of heavy load due to processor or memory constraints that ultimately result in the rejection of requests.

You can modify the thresholds and enabled/disabled status for this monitor.

Possible issues: The value of this counter should be 0. Values greater than 0 should be investigated.