O que é o (*) nos contadores de desempenho do Windows

5

Pegue o seguinte contador, por exemplo:

\LogicalDisk(*)\% Free Space

Onde posso encontrar o que pode ser plugado no lugar do * ?

Eu sei que às vezes é _global_ e outras vezes pode ser _total_ . Eu não tenho idéia da diferença (além de adivinhar).

O que mais está disponível?
O que posso / não posso usar para contadores diferentes?

    
por Paul Fleming 21.05.2013 / 18:08

2 respostas

6

O asterisco significa "Todas as instâncias", que inclui _Total quando aplicável.

Perfmon é provavelmente o lugar mais fácil para ver os contadores e ver o que está disponível em seu sistema.

A partir da documentação para o typeperf :

•Counter path format 

The general format for counter paths is as follows: [\Computer]\object[parent/instance#index]\counter] where:

The parent, instance, index, and counter components of the format may contain either a valid name or a wildcard character. The computer, parent, instance, and index components are not necessary for all counters.

You determine the counter paths to use based on the counter itself. For example, the LogicalDisk object has an instance index, so you must provide the #index or a wildcard. Therefore, you could use the following format:

\LogicalDisk(*/*#*)\*

In comparison, the Process object does not require an instance index. Therefore, you could use the following format:

\Process(*)\ID Process

The following is a list of the possible formats: ◦ \machine\object(parent/instance#index)\counter 

◦ \machine\object(parent/instance)\counter 

◦ \machine\object(instance#index)\counter 

◦ \machine\object(instance)\counter 

◦ \machine\object\counter 

◦ \object(parent/instance#index)\counter 

◦ \object(parent/instance)\counter 

◦ \object(instance#index)\counter 

◦ \object(instance)\counter 

◦ \object\counter

Edit: Ah, e não se esqueça de verificar Get-Counter em Powershell:

PS C:\> (Get-Counter -ListSet Memory).Paths

\Memory\Page Faults/sec
\Memory\Available Bytes
\Memory\Committed Bytes
\Memory\Commit Limit
\Memory\Write Copies/sec
\Memory\Transition Faults/sec
\Memory\Cache Faults/sec
\Memory\Demand Zero Faults/sec
\Memory\Pages/sec
\Memory\Pages Input/sec
...

The second command gets the path names that include "cache".
PS C:\> (Get-Counter -ListSet Memory).Paths | Where {$_ -like "*Cache*"}

\Memory\Cache Faults/sec
\Memory\Cache Bytes
\Memory\Cache Bytes Peak
\Memory\System Cache Resident Bytes
\Memory\Standby Cache Reserve Bytes
\Memory\Standby Cache Normal Priority Bytes
\Memory\Standby Cache Core Bytes
    
por 21.05.2013 / 18:19
1

A resposta está certa. Gostaria de acrescentar que é possível usar parent* para usar todas as instâncias. Consulte o link

Por exemplo "\Thread(w3wp*)\Context Switches/sec" lista todos os tópicos no processo w3wp

Eu não achei isso listado em nenhum lugar. Também PowerShell reclama, mas funciona ...

    
por 22.04.2016 / 13:59