Thursday, June 24, 2021

How to View Running Web Requests in IIS


When website performance suddenly becomes worse, there may be many potential causes. Gathering information about the current requests being handled by the worker process can help to identify issues impacting performance.

The Internet Information Services (IIS) Manager provides a server-level Worker Processes feature that manages "a list of worker processes running in application pools on a Web server." The information provided includes the Application Pool Name, Process ID, State of the process, CPU percentage, Private Bytes, and Virtual Bytes

Additionally, if enabled, the View Current Requests action is available. The View Current Requests displays the current running requests in a worker process. Several fields provide data to investigate performance issues; for example, the URL, Client IP, Pipeline Module State and Module Name, and the Time Elapsed for a request.

Although, this may also show a bunch of web requests that are queued up and not directly lead you to the root cause.

One of the first things you should do is see which web requests are currently executing. This may help you identify a specific URL that is causing the problem.

Via the IIS User Interface

Via the IIS management console, you can view the running worker processes. You can view which IIS application pool is causing high CPU and view the currently running web requests.















After selecting “Worker Processes” from the main IIS menu, you can see the currently 
running IIS worker processes.









If you double-click on a worker process, you can see all of the currently executing requests.

Here’s an example from one of our servers. You can see that each request is in different parts of the ASP.NET pipeline and currently executing different HTTP modules.

No comments:

Post a Comment