Счетчики производительности: различия между версиями
(не показано 11 промежуточных версий этого же участника) | |||
Строка 2: | Строка 2: | ||
===Не хватает памяти=== | ===Не хватает памяти=== | ||
+ | |||
+ | Размер памяти, выделяемый для счетчиков производительности ограничен настройками. При создании новых драйверов создаются новые счетчики производительности и иногда выделенной памяти не хватает для этого. | ||
====Симптом==== | ====Симптом==== | ||
Строка 11: | Строка 13: | ||
====Решение==== | ====Решение==== | ||
− | Размер выделяемой памяти указан в файле | + | Размер выделяемой памяти указан в файле '''%windir%\Microsoft.NET\Framework64\[version]\config\machine.config'''. |
− | Тэг | + | Тэг '''performanceCounters''' атрибут '''filemappingsize'''. |
− | <configuration> | + | <pre> |
+ | <configuration> | ||
... | ... | ||
<system.diagnostics> | <system.diagnostics> | ||
<performanceCounters filemappingsize="33554432" /> | <performanceCounters filemappingsize="33554432" /> | ||
</system.diagnostics> | </system.diagnostics> | ||
− | </configuration> | + | </configuration> |
+ | </pre> | ||
+ | |||
+ | <span style="color:red"><b>Внимание!</b></span> Секцию вставлять в конец файла. | ||
| | ||
Значения: | Значения: | ||
− | default = 524288 | + | *default = 524288 |
− | max = 33554432 | + | *max = 33554432 |
− | min = 32768 | + | *min = 32768 |
Начиная с .NET 2.0 для каждой категории счетчиков можно указать допустимый размер в реестре. | Начиная с .NET 2.0 для каждой категории счетчиков можно указать допустимый размер в реестре. | ||
+ | |||
Раздел HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<category name>\Performance\FileMappingSize (тип DWORD). | Раздел HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<category name>\Performance\FileMappingSize (тип DWORD). | ||
+ | |||
Если ключ отсутствует в реестре, то задаётся 1/4 от размера, указанного в machine.config. | Если ключ отсутствует в реестре, то задаётся 1/4 от размера, указанного в machine.config. | ||
+ | |||
+ | ===Ошибки при запуске DPA Server или DPA Host=== | ||
+ | |||
+ | Иногда в Windows повреждаются счетчики производительности и их необходимо восстанавливать. | ||
+ | |||
+ | ====Симптом==== | ||
+ | |||
+ | Host ругается в веб-интерфейсе при запуске на счетчики производительности, DPA Server падает при запуске. При этом в DPAServer.log ошибка: | ||
+ | |||
+ | Perfomance counters cache can be invalid. To rebuild cache run "lodctr /r" in Windows\System32 directory and Windows\SysWOW64 directories. | ||
+ | |||
+ | ====Решение==== | ||
+ | |||
+ | Собственно это и надо сделать, после этого перезапустить DPA Host и DPA Server. | ||
+ | |||
+ | <code>lodctr /R</code> | ||
| |
Текущая версия на 04:11, 6 июля 2020
Содержание
Ошибки
Не хватает памяти
Размер памяти, выделяемый для счетчиков производительности ограничен настройками. При создании новых драйверов создаются новые счетчики производительности и иногда выделенной памяти не хватает для этого.
Симптом
При создании драйвера ошибка:
System.InvalidOperationException: Custom counters file view is out of memory.
Решение
Размер выделяемой памяти указан в файле %windir%\Microsoft.NET\Framework64\[version]\config\machine.config.
Тэг performanceCounters атрибут filemappingsize.
<configuration> ... <system.diagnostics> <performanceCounters filemappingsize="33554432" /> </system.diagnostics> </configuration>
Внимание! Секцию вставлять в конец файла. Значения:
- default = 524288
- max = 33554432
- min = 32768
Начиная с .NET 2.0 для каждой категории счетчиков можно указать допустимый размер в реестре.
Раздел HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\<category name>\Performance\FileMappingSize (тип DWORD).
Если ключ отсутствует в реестре, то задаётся 1/4 от размера, указанного в machine.config.
Ошибки при запуске DPA Server или DPA Host
Иногда в Windows повреждаются счетчики производительности и их необходимо восстанавливать.
Симптом
Host ругается в веб-интерфейсе при запуске на счетчики производительности, DPA Server падает при запуске. При этом в DPAServer.log ошибка:
Perfomance counters cache can be invalid. To rebuild cache run "lodctr /r" in Windows\System32 directory and Windows\SysWOW64 directories.
Решение
Собственно это и надо сделать, после этого перезапустить DPA Host и DPA Server.
lodctr /R