What's the best way to monitor a large number of application pools in IIS7?

5,160

Solution 1

In IIS 7, you can use appcmd to monitor the apppool. For example, you type the command as below in CMD:

appcmd list apppool /state:Started

Then you should get a list of apppools which are running.

I suggest you that write a script with appcmd, and put the script as a scheduler task. Then you can get email notifications when some apppools are crashed.

Solution 2

Performance counters are available by Application Pool (under APP_POOL_WAS) and by ASP.NET Apps (the latter, by .NET version).

These include things like app-pool uptime, requests/sec and lots of other information.

Share:
5,160

Related videos on Youtube

Kev
Author by

Kev

###Actively looking for freelance work ###About Me: I'm a professional software developer and have spent my time building provisioning and web based self-service systems for IIS, Apache and Citrix XenServer, amongst other things. My Curriculum Vitae can be viewed on Stack Overflow Careers (might be a bit out of date). Stuff I like to listen to at last.fm You can get in touch here: kevin.e.kenny #@# gmail.com (you know what to do with the # and spaces). No Survey Emails Please. Also not ashamed to admit I like trains, mostly diesels, late Era 8 (BR Sectorisation) and Era 9 onwards :) I'm also interested in signalling if anyone from Network Rail is looking this far down ;)

Updated on September 17, 2022

Comments

  • Kev
    Kev almost 2 years

    Some background first - We're running IIS 7 on Windows 2008. We're running around 250 websites per server with each site in it's own application pool.

    I need a way to monitor each application pool for crashes and hangs and to send an email alert if an application pool is unresponsive for more than say 2 minutes.

    I thought about having a virtual directory mapped into each site with an ASP.NET page that we could poll via our existing monitoring system (HostMonitor).

    Does anyone else have experience in this area?