У меня есть сервер Windows 2008 R2 Service Pack 1. Это виртуально, но это не должно иметь никакого значения. Единственная цель в жизни - запускать IIS 7, и он делает это довольно хорошо. Однако, когда я перехожу к монитору производительности, нет выбора приложений ASP.NET или ASP.NET. Можно выбрать APP_POOL_WAS, в котором есть экземпляры интересующих меня пулов приложений, но счетчики не очень интересны. Есть также множество других вариантов счетчиков производительности. На веб-сайтах используются 2 пула приложений, каждый из которых использует платформу .NET версии 4.0. Если я посмотрю в диспетчер задач, я вижу, что запущены два w3wp.exe, каждый из которых является рабочим процессом IIS. У меня был включен UAC, но я его выключил. Я добавил appDomainResourceMontoring в файл aspnet.config, но это не помогло. Вот файл aspnet.config, если это хоть немного поможет.
<?xml version="1.0" encoding="UTF-8" ?>
<configuration>
<runtime>
<legacyUnhandledExceptionPolicy enabled="false" />
<legacyImpersonationPolicy enabled="true"/>
<alwaysFlowImpersonationPolicy enabled="false"/>
<SymbolReadingPolicy enabled="1" />
<shadowCopyVerifyByTimestamp enabled="true"/>
<appDomainResourceMonitoring enabled="true"/>
</runtime>
<startup useLegacyV2RuntimeActivationPolicy="true" />
</configuration>
Что вы хотите отслеживать или контролировать конкретно?
Как вы видели, вам необходимо отслеживать пул приложений и экземпляры в нем, поскольку они являются фактическими потоками на сервере, под видом процесса w3wp.exe.
Кроме того, вы можете обратиться к поставщику мониторинга работоспособности ASP.NET. Это, безусловно, самый большой объем статистики и информации, относящейся к фактическому запущенному приложению. Ознакомьтесь с документами Microsoft Вот Чтобы получить больше информации. Если я правильно помню, вы можете записывать их прямо в журнал событий или в базу данных. База данных - хороший вариант просто потому, что в зависимости от вашей конфигурации может возникать тонна событий.