Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
В этой статье помогают устранять неполадки с помощью Монитор производительности.
Что такое Монитор производительности (perfmon)?
Будучи доступным в различных итерациях с ранних дней Windows, Монитор производительности — это оснастка MMC в Windows, которая помогает отслеживать использование системы и различные метрики производительности. Представление по умолчанию при открытии показывает несколько различных областей и метрик в режиме реального времени, которые включают:
- Монитор производительности: просмотр метрик в режиме реального времени
- Наборы сборщика данных: определенная коллекция данных в течение заданного интервала времени
- Отчеты: данные, собранные в наборах сборщика данных
Вопросы перед сбором данных
Когда вы столкнулись с проблемами, ознакомьтесь с дополнительными сведениями о том, что произошло до устранения неполадок и сбора данных.
- Какой вопрос?
- Можно ли воспроизвести эту проблему?
- Возникает ли проблема нерегулярно? Если да, какие действия сделали пользователь?
- Наблюдается ли шаблон? Если да, какой шаблон?
- Происходит ли это только один раз, а не повторится?
Например, возникает проблема с высоким потреблением ЦП. Иногда эта проблема возникает через пять минут после запуска системы, иногда через два часа и т. д. Шаблон не наблюдается. При поиске диспетчера задач или других средств мониторинга его нельзя наблюдать или вы не уверены, отображаются ли выходные данные из средств мониторинга.
В этой ситуации вам потребуется общий обзор системных ресурсов. Это можно достичь с помощью длительного Монитор производительности.
Примечание.
Монитор производительности не имеет доступа к ядру и не регистрирует такие сведения. Кроме того, Монитор производительности упрощен по сравнению с другими средствами ведения журнала для проблем с высоким потреблением ЦП, и это встроенное средство. Вы можете выполнять Монитор производительности локально или удаленно.
Локальное выполнение Монитор производительности
При необходимости можно добавить счетчики. Откройте командную строку с повышенными привилегиями и выполните следующие команды:
Создайте набор сборщика данных:
Logman.exe create counter CORE_%computername% -f bin -v mmddhhmm -max 2048 -c "\Memory\*" "\Cache\*" "\Objects\*" "\Network Interface(*)\*" "\Paging File(*)\*" "\PhysicalDisk(*)\*" "\LogicalDisk(*)\*" "\Processor(*)\*" "\Processor Information(*)\*" "\Process(*)\*" "\Server\*" "\System\*" "\Server Work Queues(*)\*" "\Terminal Services\*" "\Terminal Services Session(*)\*" -si 00:00:01
Примечание.
-max 2048
означает максимальный размер файла журнала — 2 ГБ.-si 00:00:01
означает, что интервал является1
вторым. Этот параметр можно изменить на основе ваших потребностей.Запустите набор сборщика данных:
logman start CORE_%computername%
Остановите трассировку, которая будет храниться в папке c:\perflogs\Admin:
logman stop CORE_%computername%
Удаленное выполнение Монитор производительности
Чтобы настроить Монитор производительности для мониторинга удаленной системы, откройте командную строку с повышенными привилегиями и выполните следующие команды:
Создайте набор сборщика данных:
Logman create counter <LOGNAME> -u <DOMAIN\USERNAME> * -f bincirc -v mmddhhmm -max 500 -c "\\<SERVERNAME>\LogicalDisk(*)\*" "\\<SERVERNAME>\Memory\*" "\\<SERVERNAME>\Network Interface(*)\*" "\\<SERVERNAME>\Paging File(*)\*" "\\<SERVERNAME>\PhysicalDisk(*)\*" "\\<SERVERNAME>\Process(*)\*" "\\<SERVERNAME>\Redirector\*" "\\<SERVERNAME>\Server\*" "\\<SERVERNAME>\System\*" "\\<SERVERNAME>\Terminal Services\*" "\\<SERVERNAME>\Processor(*)\*" "\\<SERVERNAME>\Cache\*" -si 00:00:02
Примечание.
Замените <DOMAIN\USERNAME> соответствующими учетными данными пользователя и <SERVERNAME> именем проблемного сервера.
Запустите сборщик данных, выполнив следующую команду:
logman start <LOGNAME>
Когда сервер перестанет отвечать, остановите сборщик данных, выполнив следующую команду:
logman stop <LOGNAME>
Журнал Монитор производительности будет расположен в папке C:\PERFLOGS. Затем загрузите .blg
файл и отправьте его в рабочую область после возникновения проблемы.
После выполнения Монитор производительности в течение одного или двух рабочих дней можно проанализировать журнал, чтобы узнать, существуют ли какие-либо шаблоны. Какие процессы резко возросли на ЦП? И, являются ли процессы одинаковыми или разными каждый день или час?
Основываясь на результатах, перейдите дальше к следующим шагам, чтобы узнать больше о том, что приводит к их всплеску ЦП. Определите первопричину путем трассировки последовательности процессов, потоков, модулей и функций.
Примеры устранения неполадок
См. следующие примеры использования TroubleShootingScript (TSS) для сбора данных и CpuStres для имитации активности ЦП.
Использование TSS
TSS может получить трассировку использования ЦП при достижении определенного порогового значения:
Скачайте TSS и извлеките его в папку C:\tss на затронутом компьютере.
В командной строке PowerShell с повышенными привилегиями выполните следующий командлет из папки C:\tss .
.\TSS.ps1 -perfmon general -WaitEvent HighCPU:90 -StopWaitTimeInSec 100
Примечание.
Дождитесь возникновения проблемы с высоким потреблением ЦП. Когда загрузка ЦП превышает <CpuThreshold>, сохраняйте сбор данных в течение длительности
StopWaitTimeInSec
settconds (значение по умолчанию равно 60).Ниже приведены некоторые примеры.
-
.\TSS.ps1 -PerfMon General -PerfIntervalSec 5 -WaitEvent HighCPU:90
PerfMon
представляет Монитор производительности с коротким интервалом. -
.\TSS.ps1 -PerfMonLong SMB -PerfLongIntervalMin 11 -WaitEvent HighCPU:90
PerfMonLong
представляет Монитор производительности с длинным интервалом.
-
В новой командной строке PowerShell с повышенными привилегиями выполните следующий командлет из папки C:\tss .
.\TSS.ps1 -Stop
Примечание.
Если трассировка не останавливается через пять минут, остановите ее.
TSS поддерживает мониторы производительности. Подробные имена счетчиков производительности можно просмотреть, выполнив .\TSS.ps1 -ListSupportedPerfCounter
командлет.
Начните запись счетчиков производительности с набором General
счетчиков, выполнив командлет:
.\TSS.ps1 -PerfMon General
Если вы хотите изменить интервал для журнала производительности, используйте -PerfIntervalSec
(единица секунда) или -PerfIntervalMin
(единица составляет минуту). Например, .\TSS.ps1 -PerfMon General -PerfIntervalSec 1
задает интервал в одну секунду.
Ниже приведены дополнительные примеры командлета .\TSS.ps1 -PerfMon <CounterSetName>
:
Запустите Монитор производительности с общими счетчиками (ЦП, памятью, диском и т. д.) и 5-секундным интервалом:
.\TSS.ps1 -PerfMon General -PerfIntervalSec 5
Запустите Монитор производительности (
Long
) с счетчиками SMB (счетчиками SMB и общими счетчиками) и интервалом в 11 минуту:.\TSS.ps1 PerfMonLong SMB -PerfLongIntervalMin 11
Это также можно сделать с помощью Монитор производительности начать трассировку, когда использование ЦП достигает определенного количества, но это сложно и занимает много времени.
Использование CpuStres
С помощью CpuStres можно имитировать высокую активность использования ЦП, выполнив несколько потоков. После трассировки проблемы с высоким потреблением ЦП в течение шести минут Монитор производительности отображает пробелы в следующем графе, что является проблемой:
Процессор | Минимум | Максимум | По средней |
---|---|---|---|
% загруженности процессора | 4.688% | 100% | 81.605% |
При добавлении счетчиков для обработчика: %ProcessorTime и просмотра экземпляров видно, что CPUStres64.exe имеет наибольшее потребление. Существуют случаи, когда %Processor Time превысило 100 %, достигая примерно 180 % в данных, что указывает на значительные пики.
% загруженности процессора | Минимум | Максимум | По средней |
---|---|---|---|
CPUSTRES64 | 0% | 180.309% | 19.787% |
Проверьте длину очереди процессора, средняя из которых составляет > 10. Это проблема. Подробные сведения о том, кто использует %Processor Time.
Это ограничение Монитор производительности. Он может отображать только так много данных.
Счетчики производительности для использования ЦП
Для проблем с высоким потреблением ЦП сначала проверьте использование ЦП в диспетчере задач. Если загрузка ЦП постоянно превышает 85%, она указывает, что система сталкивается с узким местом ЦП. Ниже приведен список счетчиков, которые необходимо проверить:
- Процессор: % времени процессора
- Процессор: % времени пользователя
- Процессор: % времени привилегий
- Процессор: % времени прерывания
- Система: длина очереди процессора
- Система: вызовы/с
- Система: переключатели контекста/с
- Процесс: число потоков
- Процесс. Обработка количества
Просмотрите следующие счетчики, отслеживаемые для различных аспектов производительности:
Компонент | Отслеживаемый аспект производительности | Счетчики для мониторинга |
---|---|---|
Процессор | Использование | Процессор: % времени процессора (все экземпляры) Процессор: % времени DPC Процессор: % времени прерывания Процессор: % привилегированного времени Процессор: % времени пользователя |
Процессор | Узкие места | Процессор: % времени процессора (все экземпляры) Процессор: % времени DPC Процессор: % времени прерывания Процессор: % привилегированного времени Процессор: % времени пользователя Процессор: прерывания/с Процессор: очереди DPCs/с Система: переключатели контекста/с Система: системные вызовы/с Система: длина очереди процессора (все экземпляры) |
Имя счетчика | Metric |
---|---|
Длина очереди процессора (PQL) | Если на процессор имеется два или более экземпляра, а загрузка ЦП высока, проверьте процессы высокого потребления ЦП. Кроме того, проверьте параметры контекста, % времени DPC и % прерывания. |
% времени процессора | 0-50%: здоров. 50-80%: монитор или монитор предупреждений. 80-100%: критическое. Система может работать медленно. |
% времени DPC | % Процессорное время> 85% и % время> DPC 15%: проверьте, постоянно ли они выше этих уровней. Короткие пики хорошо. Например, только на одном процессоре с 100 % % времени процессора и более 50 % % DPC Time. |
% время прерывания | Высокое время прерывания ЦП: более 30 % времени прерывания. Большое количество времени прерывания в процессоре может указывать на проблему оборудования или драйвера. Очень высокое время прерывания ЦП: более 50 % времени прерывания. Очень большое количество времени прерывания в процессоре может указывать на проблему оборудования или драйвера. |
Ссылки
- Windows Монитор производительности
- LOGMAN (perfmon)
- Практическое руководство. Использование Монитор производительности для сбора данных трассировки событий
- Использование процессора в режиме пользователя и режиме привилегированного режима
Отказ от ответственности сторонних разработчиков и сведений о решении
Сведения и решение в этом документе представляют текущее представление корпорации Майкрософт по этим вопросам по дате публикации. Это решение доступно через корпорацию Майкрософт или через стороннего поставщика. Корпорация Майкрософт специально не рекомендует сторонним поставщиком или сторонним решением, которое может описать в этой статье. Кроме того, могут быть другие сторонние поставщики или сторонние решения, которые не описываются в этой статье. Так как корпорация Майкрософт должна реагировать на изменение рыночных условий, эта информация не должна интерпретироваться как обязательство корпорации Майкрософт. Корпорация Майкрософт не может гарантировать или поддержать точность любой информации или любого решения, представленного корпорацией Майкрософт или любым упомянутым сторонним поставщиком.
Корпорация Майкрософт не предоставляет никаких гарантий и исключает все представления, гарантии и условия, будь то явные, подразумеваемые или нормативные. Эти условия включают в себя, но не ограничиваются представлениями, гарантиями или условиями титула, несовершения, удовлетворительного состояния, торговой возможности и пригодности для определенной цели, в отношении любой услуги, решения, продукта или других материалов или информации. В любом случае корпорация Майкрософт не несет ответственности за любое стороннее решение, которое упоминается в этой статье.