Selecting the correct AppPool in PerfMon instances

2.8k Views Asked by At

I have a webserver with six App Pools. When I want to add counters in PerfMon for a specific ASP.NET application, the available instances have very different names.

For example, I have an App Pool named “FrontEnd”, and these are the instances available:

_LM_W3SVC_1_Root_bookeline
_LM_W3SVC_1_Root_CredentialsService
_LM_W3SVC_1_Root_pReports
_LM_W3SVC_1130837766_Root
_LM_W3SVC_1147758436_Root
_LM_W3SVC_1254277584_Root
_LM_W3SVC_1366866887_Root
_LM_W3SVC_1505760911_Root
_LM_W3SVC_1604538730_Root
_LM_W3SVC_1618350214_Root
_LM_W3SVC_175082253_Root
_LM_W3SVC_177047044_Root
_LM_W3SVC_1825997120_ROOT
_LM_W3SVC_1966585210_Root
_LM_W3SVC_204756873_Root
_LM_W3SVC_261753984_Root
_LM_W3SVC_3_ROOT
_LM_W3SVC_315617261_Root
_LM_W3SVC_36575378_Root
_LM_W3SVC_575979470_Root
_LM_W3SVC_831033229_Root
_LM_W3SVC_940052100_Root

A colleague suggested a neat trick to match the App Pools to Process IDs by creating a small .bat file:

c:\windows\system32\cscript.exe c:\windows\system32\iisapp.vbs
pause

However those ID’s doesn’t seem to have anything to do with the instances either.

What am I misunderstanding here?

3

There are 3 best solutions below

0
On

Look closely to your instance names: _LM_W3SVC_1147758436_Root number 1147758436 here is your application identifier, which can be found in IIS Manager.

enter image description here

Good news are that this identifier do not changes after application, iis or server restart unlike PID

0
On

Using Process Explorer, hover over a w3wp.exe process, you will see the command line that started it with the app-pool name there. The same view that shows the process name has the pid to verify against what perfmon shows.

1
On

We use a utility from SysInternals called BGInfo.

http://technet.microsoft.com/en-us/sysinternals/bb897557

You can configure it to show your AppPools and associated process IDs. Check out this screenshot (background from the server).

Server Screenshot with BGInfo

@arcain pointed out that we are using a custom configuration to get BGInfo to print the app pools. Here it is.

Host Name:  <Host Name>
User Name:  <User Name>
Boot Time:  <Boot Time>
Snapshot Time:  <Snapshot Time>

IP Address: <IP Address>
Subnet Mask:    <Subnet Mask>
Default Gateway:    <Default Gateway>
DNS Server: <DNS Server>
MAC Address:    <MAC Address>


Volumes:    <Volumes>
Free Space: <Free Space>

IIS App Pools:  <IIS App Pools>

IE Version: <IE Version>

CPU:    <CPU>
Memory: <Memory>
Network Card:   <Network Card>
Network Speed:  <Network Speed>
OS Version: <OS Version>
Service Pack:   <Service Pack>
System Type:    <System Type>