Performance Metrics for IIS Servers
Analyze the resource usage of sites, apps and application pools in IIS servers and avoid server problems proactively with detailed custom reports. The IIS monitor uses the Site24x7 Windows agent for monitoring. Install the Windows agent and get your IIS servers auto-discovered.
Once the IIS server monitor is successfully added to your Site24x7 account,
- View performance metrics for IIS monitors. Log in to Site24x7 and go to Server > Microsoft IIS Server > click on the monitor.
- Add a Threshold and Availability profile to declare a specific resource as critical or down.
- Analyze trends and identify performance issues with exclusive performance reports.
- View key metrics in a single glance with the inventory and health dashboards, or create your own.
- Automate the start and stop of application pools and sites using IT Automation. Learn more.
Interpret IIS Performance Metrics
- Microsoft IIS Server Details: Gives basic details on the IIS server configured, along with the top five pools based on traffic, network usage, CLR exception and memory.
- Sites: Tells the status of a site with the bindings enabled.
- Applications: Lists the active applications, their cache and session details.
- Application Pools: Shows information on the active application pools, CLR memory, and thread data.
Microsoft IIS Server Details
Parameters | Description |
Microsoft IIS Server Details | Gives the host name, IP address, version, platform of the IIS server |
Network Statistics | Total bytes of all requests received and sent to the client |
Requests Stats | A graphical view of the current and queued requests |
Top App Pools by Exceptions | Top app pools based on the number of CLR exceptions thrown per second. The higher this rate, lower the performance. |
Top App Pools by Memory Usage (Working Set) | Top app pools based on shared/physical memory |
Top Apps by Traffic | Top app pools based on the traffic |
Top Apps by Network usage | Top app pools based on the network usage |
Sites
Parameters | Description |
Site Name | Name of the site |
Binding | Bindings enabled in the site |
Status | Status of the site (Up/Down) |
Action | Choose to be notified when a particular site is Down. Set thresholds for Binding Address and associate automations to be executed when the threshold is breached. |
Applications
Click on Discover Applications to automatically add the applications in your IIS server for monitoring.
Parameters | Description |
Name | Name of the application |
Pool Name | Name of the application pool corresponding to that application |
Site Name | Name of the site |
Protocol | Enabled transfer protocols (http, https, etc) |
Path | Path of the application |
Status | Status of the application (Up/Idle/Down) |
Enable APM Insight | Get deeper vsibility into your application code by enabling our APM Insight monitoring capabilities |
Active Application Details: | |
Name | Name of the application |
Requests/sec | Requests per second |
Total Failed Requests | Total number of failed requests which includes Request Timed Out (#500), Request Not Found (#404/#414), Request Not Authorized (#401), Request Rejects (#503) |
Queued Requests | Number of requests waiting to be processed |
Total Bytes Received (KB) | Total bytes of all requests received |
Total Bytes Sent (KB) | Total bytes of response sent to the client |
Concurrent Requests | The maximum number of concurrent requests that are being processed by the application. A low number signifies effective usage of CPU. |
Application Request Details: | |
Name | Name of the application |
Total No of Requests | The total number of requests in the application |
Request Success | The number of requests that succeeded during the sample period |
Request Timed Out (500) | Number of requests that timed out |
Request Not Found (404) | Number of requests for resources that were not found |
Request Not Authorized (401) | Number of requests failed due to unauthorized access |
Request Rejected (503) | Number of rejected requests due to the request queue being full |
Requests Disconnected | Number of disconnected requests due to communication failure |
Anonymous Request | Number of requests that use anonymous authentication |
Session Details: | |
Name | Name of the application |
Active Session | No of active (in-process) sessions |
SQL Connection | Total number of (out-of-proc) sessions, that uses SQL Server for storing sessions |
State Connection | Total number of (out-of-proc) sessions, that uses ASP.NET State Service for storing sessions |
Connection Timeout | No of time out (in-proc) sessions |
Cache Details: | |
Name | Name of the application |
Total Entries | Total number of entries in the cache |
API Hit Ratio (%) | Cache hit-to-miss ratio when accessed through the external cache APIs |
Output Hits Ratio (%) | Percentage of total requests serviced from the output cache |
Memory Limit (%) | The cache is trimmed, whenever that memory percentage limit hits 100 |
Turnover Rate/sec | Number of additions to and removals from the cache per second. Higher turnover rate can indicate inefficient usage of cache. |
Application Pools
Parameters | Description |
Thread Statistics | Thread count for each active application pool running on that server |
Pool Name | Name of the application pool |
Runtime | .NET runtime version of app pool |
Max Processes | The maximum number of worker processes for this app pool. The more this value, higher the reliability, but poorer the memory and CPU usage |
Status | Tells us if the app pool has started/stopped |
Active Application Pools Details: | |
Pool Name | Name of the application pool |
Processor Time | Percentage of time all threads in current process spend using the processors |
IO Operations/sec | I/O operations per second |
Thread Count | Number of threads during sampling |
Private/Virtual Memory (MB) | Size of the working set, in MB, that is used for that worker process only and not sharable by other processes |
Private Bytes (MB) | The current size, in MB, of the committed memory owned by this process. Memory leaks are identified by a consistent and prolonged increase in Private Bytes. This is the best performance counter for detecting memory leaks |
Shared/Physical Memory (MB) | The current size, in MB, of the working set of this process |
Common Language Runtime (CLR) Data: | |
Pool Name | Name of the application pool |
Loader Heap | Number of bytes committed by the class loader across all AppDomains. If the counter doesn't reach steady state, it may point to a memory leak |
Assemblies | Total number of assemblies loaded since the application started |
App Domains | Peak number of application domains loaded since the application started |
Exceptions/sec | Number of CLR exceptions thrown per second. The higher this rate, lower the performance |
Common Language Runtime (CLR) Memory Data: | |
Pool Name | Name of the application pool |
Garbage Collection Time (%) | Percentage of time spent performing the last garbage collection |
Total Heap (MB) | Sum of the large object heap and the generation 1, and 2 heaps |
Gen 0 Heap (MB) | Size (in Megabytes) of Gen 0 heap |
Gen 1 Heap (MB) | Size (in Megabytes) of Gen 1 heap |
Gen 2 Heap (MB) | Size (in Megabytes) of Gen 2 heap |
Large Object Heap (MB) | Size (in Megabytes) of large objects heap |
Common Language Runtime (CLR) Thread Data: | |
Pool Name | Name of the application pool |
Physical Threads | Number of native operating system threads created and owned by CLR |
Logical Threads | Current managed thread objects in the application |
Queued Threads | Total number of threads that are currently waiting to acquire a managed lock |
Performance Reports for IIS
Log in to Site24x7 and go to Reports > Microsoft IIS Server. The following reports are available for IIS monitoring:
- Availability Summary Report
- Busy Hours Report
- Health Trend Report
- Performance Report
- IIS App Report
- IIS App Pools Report
- Top N Microsoft IIS servers by network traffic
Related Articles
- Add an IIS server monitor | IIS Automation
- Other Microsoft applications supported | Add a Windows monitor
- Server monitoring architecture
- Other OS platforms supported: Linux | FreeBSD | OS X
- Troubleshooting Tips