O misterioso desaparecimento do contador de performance “Process”
Recentemente durante o processo de troubleshoot de um problema de performance pretendia adicionar os seguintes contadores no Perfmon: Process => virtual bytes, working set, pool paged bytes e pool nonpaged bytes. No entanto, deparei-me com o seguinte problema: o contador “Process” não existia na máquina em questão (um Windows 2008 R2):
Lembrei-me de usar um utilitário do Resource Kit do Windows 2000, o exctrlst.exe, para validar as extensões dos Performance counters instalados na máquina. Usei também o Process monitor para verificar quais as entradas do registo que seriam alteradas.
Iniciei a captura com o Procmon e de seguida executei o utilitário exctrlst; procurei pelo contador PerfProc:
Seleccionei a opção "Performance Counters Enabled" (a checkbox para este contador em particular não estava seleccionada…) De seguida parei o Procmon e procurei pelas entradas RegSetValue:
A seguinte entrada do registry passou de 1 para 0:
Fechei e abri novamente o Perform e já foi possível adicionar os contadores “Process”
Caso se pretenda efectuar esta alteração programaticamente em várias máquinas pode-se usar a seguinte linha num batch file:
Reg add HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\PerfProc\Performance /v "Disable Performance Counters" /t REG_DWORD /d 0 /f
Links úteis:
exctrlst
https://www.microsoft.com/en-us/download/details.aspx?id=12123
Procmon
https://technet.microsoft.com/en-us/sysinternals/bb896645.aspx
Bom troubleshoot
AML