Перестроение значений библиотек счетчиков производительности вручную
В этой статье описывается, как вручную перестроить значения библиотеки счетчиков производительности.
Область применения: Windows 10 — все выпуски, Windows Server 2012 R2
Исходный номер базы знаний: 300956
Важно!
В этот раздел, описание метода или задачи включены действия, содержащие указания по изменению параметров реестра. Однако неправильное изменение параметров реестра может привести к возникновению серьезных проблем. Поэтому следует в точности выполнять приведенные инструкции. Для дополнительной защиты создайте резервную копию реестра, прежде чем редактировать его. Так вы сможете восстановить реестр, если возникнет проблема. Для получения дополнительной информации о том, как создать резервную копию и восстановить реестр, см. статью Сведения о резервном копировании и восстановлении реестра Windows.
При использовании средства системного монитора некоторые счетчики могут отсутствовать или не содержать данные счетчиков. Базовый набор библиотек счетчиков производительности может быть поврежден и может потребоваться перестроить. Кроме того, может потребоваться перестроить все настраиваемые (созданные microsoft платформа .NET Framework приложение) счетчики или любые расширяемые счетчики.
Такое поведение может возникать в следующих ситуациях:
- некоторые расширяемые счетчики повреждают реестр.
- некоторые программы на основе инструментария управления Windows (WMI) изменяют реестр.
Перестроение базовых счетчиков производительности
Расширяемые сведения о счетчике хранятся в обоих следующих расположениях:
Подраздел реестра:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Perflib\009
.Файл
%Systemroot%\System32\Perfc009.dat
и%Systemroot%\System32\Perfh009.dat
файл.
Чтобы перестроить базовые библиотеки счетчиков производительности вручную, выполните следующие действия.
Разверните файл Perfc009.dat и файл Perfh009.dat . Эти файлы находятся на установочном диске Windows. Сжатые файлы находятся по адресу
DriveLetter:\i386\perfc009.da_
и вDriveLetter:\i386\perfh009.da_
. Замените файлы, которые находятся в папке%Systemroot%\System32
.Запустите Редактор реестра, а затем найдите следующий раздел в реестре:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Perflib
В реестре измените значение последнего счетчика на 1846 (десятичное), а значение последней справки — на 1847 (десятичное).
Найдите следующий раздел реестра, чтобы найти службы с подразделом Производительность :
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services
Удалите следующие значения из подраздела Производительность (если они существуют):
- Первый счетчик
- Первая справка
- Последний счетчик
- Последняя справка
Вы также можете использовать средство Exctrlst.exe для поиска установленных файлов библиотек динамической компоновки (DLL) счетчика производительности. Затем получите доступ к реестру, чтобы удалить значения DWORD. Теперь у вас есть доступный реестр производительности, содержащий только системные базовые счетчики.
Примечание.
Удаление значений из подраздела Производительность в реестре может привести к тому, что все установленные платформа .NET Framework приложения не будут работать при следующем запуске. В этом случае используйте
lodctr /R
команду в разделе Повторное добавление расширяемых счетчиков , чтобы перестроить счетчики производительности. Если при запуске приложения платформа .NET Framework по-прежнему возникают проблемы, см. раздел Переустановка счетчиков производительности пользовательских платформа .NET Framework сборок этой статьи.
Повторное добавление расширяемых счетчиков
Необходимо снова добавить расширяемые счетчики из списка служб. Перед этим необходимо определить .ini файл, который используется для загрузки счетчиков:
Откройте окно командной строки.
В командной строке введите
cd %Systemroot%\System32
и нажмите клавишу ВВОД.В командной строке введите
findstr drivername *.ini
и нажмите клавишу ВВОД.Обратите внимание на имя файла .ini для каждого имени драйвера в списке.
В командной строке введите
lodctr <inifile>
команду и нажмите клавишу ВВОД.Примечание.
В этой команде <inifile> представляет имя файла .ini для драйвера, который требуется перезагрузить.
Например, если вы хотите перезагрузить драйвер ASP, в списке, который вы записали на шаге 4, показано, что Axperf.ini является .ini файлом для драйвера ASP (
axperf.ini:drivername=ASP
). Чтобы перезагрузить драйвер ASP, введитеlodctr axperf.ini
в командной строке и нажмите клавишу ВВОД.Повторите шаг 5 для каждого .ini файла в списке.
Restart your computer.
Чтобы перестроить все счетчики производительности, включая расширяемые и сторонние счетчики в Windows Server, введите в командной строке следующие команды. Нажмите клавишу ВВОД после каждой команды.
cd \windows\system32
lodctr /R
Примечание.
/R
имеет верхний регистр. Для успешного выполнения этой команды необходимо иметь права администратора на компьютере.- На компьютере под управлением 32-разрядного выпуска Windows
Lodctr /R:<filename>
команда является стандартным методом для восстановления строк реестра счетчиков производительности и сведений с помощью имени файла.
Windows Server перестраивает все счетчики, так как считывает все .ini файлы в папке C:\Windows\inf\009
для операционной системы на английском языке.
Примечание.
- Если вы используете кластер или продукт центра обработки данных, необходимо выполнить отработку отказа узла, чтобы обновить список счетчиков. Это необходимо сделать после выполнения действий в разделе Повторное добавление расширяемых счетчиков как для базовых, так и для расширяемых счетчиков.
- В системах с приложениями, которые добавляют собственные счетчики производительности, например Exchange или SQL Server, файл .ini, используемый для загрузки счетчика производительности, может не находиться в
%Systemroot%\System32
. Эти .ini файлы обычно находятся в структуре папок приложений. - Если при выполнении предыдущих шагов появляется сообщение об ошибке о библиотеке производительности, может потребоваться выгрузить и перезагрузить библиотеки динамической компоновки производительности IIS (DLL).
- Если при запуске приложения платформа .NET Framework по-прежнему возникают проблемы, см. раздел Переустановка счетчиков производительности пользовательских платформа .NET Framework сборок.
Переустановка счетчиков производительности пользовательских платформа .NET Framework сборок
Если при запуске приложения платформа .NET Framework после выполнения указанных здесь процедур по-прежнему возникают проблемы, может потребоваться перестроить счетчики производительности для пользовательского приложения платформа .NET Framework. Для этого используйте параметр в средстве /i
установщика платформа .NET Framework (Installutil.exe). Необходимо знать имена файлов DLL, которые создают счетчики производительности.
Если следовать этим процедурам и удалить счетчики из реестра для всех служб, установленных в системе с установленным Microsoft System Center Operations Manager 2007, может возникнуть неисправный сервер управления. Счетчики для модулей службы конфигурации, службы SDK и записи базы данных не предоставляются в виде расширяемых счетчиков в INI-файлах. Вместо этого они регистрируются во время установки. Таким образом, при попытке запустить System Center Operations Manager 2007 может появиться сообщение об ошибке, аналогичное следующему примеру, так как отсутствуют счетчики производительности:
Event Type: Error
Event Source: OpsMgr SDK Service
Event Category: None
Event ID: 26380
Date: date
Time: time
User: N/A
Computer: MOM
Description: The System Center Operations Manager SDK Service failed due to an unhandled exception.
Чтобы устранить эту проблему в System Center Operations Manager 2007, необходимо переустановить платформа .NET Framework сборок, создающих счетчики производительности. Для этого используйте параметр в средстве /i
установщика платформа .NET Framework (Installutil.exe), чтобы переустановить следующие сборки:
- Microsoft.Mom.ConfigService.dll
- Microsoft.Mom.Sdk.ServiceDataLayer.dll
- Microsoft.Mom.DatabaseWriteModules.dll
- Microsoft.EnterpriseManagement.HealthService.Modules.DataWarehouse.dll
Например, в командной строке введите следующие команды и нажмите клавишу ВВОД после каждой команды:
InstallUtil /i Microsoft.Mom.ConfigService.dll
InstallUtil /i Microsoft.Mom.Sdk.ServiceDataLayer.dll
InstallUtil /i Microsoft.Mom.DatabaseWriteModules.dll
InstallUtil /i Microsoft.EnterpriseManagement.HealthService.Modules.DataWarehouse.dll
Примечание.
Для успешного выполнения этих команд необходимо иметь права администратора на компьютере.
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по