2012-01-10 6 views
0

Надеюсь, у этого вопроса есть простой ответ, который я пропускаю! У меня есть веб-сервер IIS с несколькими сайтами. В Perfmon они отображаются как w3wp # 1, w3wp # 2 и т. Д. Я пишу скрипт Logman, который будет собирать данные счетчика производительности, используя счетчики/экземпляры, которые я указываю, и я хочу ТОЛЬКО собирать любые рабочие процессы w3wp ,Как получить ТОЛЬКО экземпляры w3wp при указании счетчиков производительности для Perfmon/LogMan в Windows?

Я попробовал несколько способов, но не повезли:

\.NET CLR Memory(*w3wp*)\ 
    \.NET CLR Memory(w3wp#*)\ 
    \.NET CLR Memory(w3wp*)\ 

Я никогда посмотрел на документации here, и кажется, что она претендует на поддержку подстановочных знаков, но нечастичной соответствует. Я не уверен, что с этим делать. Есть ли способ достичь того, чего я хочу? Надеюсь, я объяснил это достаточно хорошо. Дайте мне знать, если вам нужна дополнительная информация.

Спасибо!

ответ

0

Я придумал собственный пакетный скрипт, который находит идентификатор пула приложений, PID и связывает его с рабочим процессом IIS. Оттуда я могу вручную НАЙТИ и ЗАМЕНИТЬ общий заполнитель в моем файле конфигурации perfmon, чтобы начать сбор для определенных сайтов. Я могу предоставить некоторые детали, если есть интерес.

+1

Не могли бы вы предоставить детали? У меня одинаковые потребности. Спасибо. –

1

Существует способ отображения экземпляра путем добавления к нему идентификатора процесса. Поскольку ProcessId не изменяется, это помогает определить правильный экземпляр. В этом сообщении описывается метод - Perfmon: Identifying processes by PID instead of instance.

Соответствующая часть по ссылке:

Making below registry change will display processes in the format of **ProcessName_PID** instead of **ProcessName#1**. 
Click Start, click Run, type regedit, and then click OK. 
Locate and then click the following registry subkey: 

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PerfProc\Performance 
On the Edit menu, click New, and then click DWORD Value. 
Right-click New Value #1, click Rename, and then type ProcessNameFormat to name the new value. 
Right-click ProcessNameFormat, and then click Modify. 
In the Data value box, type one of the following values, and then click OK: 

    1: Disables PID data. This value is the default value. 
    2: Enables PID data. 

Exit Registry Editor. 

Warning: Serious problems might occur if you modify the registry incorrectly by using Registry Editor or by using another method. These problems might require that you reinstall the operating system. Microsoft cannot guarantee that these problems can be solved. Modify the registry at your own risk. 

Important: If you enable this feature, you may be unable to monitor process-specific information by using third-party utilities or custom-made programs, and this functionality may change at any time in the future without notice. 

Надеется, что это поможет кому-то.

+0

Хотя эта ссылка может ответить на вопрос, лучше включить здесь основные части ответа и предоставить ссылку для справки. Ответные ссылки могут стать недействительными, если связанная страница изменится. – Luke

+0

@ Luke - Спасибо за отзыв. Я обновил ответ с соответствующим описанием из ссылки. –