Import-Counter
Importa arquivos de log do contador de desempenho e cria os objetos que representam cada amostra de contador no log.
Sintaxe
GetCounterSet (Predefinição)
Import-Counter
[-Path] <String[]>
[-StartTime <DateTime>]
[-EndTime <DateTime>]
[-Counter <String[]>]
[-MaxSamples <Int64>]
[<CommonParameters>]
ListSetSet
Import-Counter
[-Path] <String[]>
-ListSet <String[]>
[<CommonParameters>]
SummarySet
Import-Counter
[-Path] <String[]>
[-Summary]
[<CommonParameters>]
Description
O cmdlet Import-Counter importa dados do contador de desempenho dos arquivos de log do contador de desempenho e cria objetos para cada amostra de contador no arquivo.
Os objetos
Você pode importar dados de arquivos de log de desempenho de valores separados por vírgulas (.csv), valores separados por tabulações (.tsv) e log de desempenho binário (.blg). Se você estiver usando arquivos .blg, poderá importar até 32 arquivos em cada comando. Você pode usar os parâmetros de Import-Counter para filtrar os dados importados.
Juntamente com os cmdlets Get-Counter e Export-Counter, esse recurso permite coletar, exportar, importar, combinar, filtrar, manipular e reexportar dados do contador de desempenho no Windows PowerShell.
Exemplos
Exemplo 1: Importar todos os dados do contador de um arquivo
$Data = Import-Counter -Path ProcessorData.csv
Este comando importa todos os dados do contador do arquivo ProcessorData.csv para a variável $Data.
Exemplo 2: Importar dados específicos do contador de um arquivo
PS C:\> $I = Import-Counter -Path "ProcessorData.blg" -Counter "\\SERVER01\Processor(_Total)\Interrupts/sec"
Este comando importa apenas os "Processor(_total)\Interrupts/sec" dados do contador do arquivo ProcessorData.blg para a variável $I.
Exemplo 3: Selecione dados de um contador de desempenho e exporte-os para um arquivo
The first command uses **Import-Counter** to import all of the performance counter data from the ProcessorData.blg files. The command saves the data in the $Data variable.
PS C:\> $Data = Import-Counter .\ProcessorData.blg
The second command displays the counter paths in the $Data variable. To get the display shown in the command output, the example uses the Format-Table cmdlet to format as a table the counter paths of the first counter in the $Data variable.
PS C:\> $Data[0].CounterSamples | Format-Table -Property Path
Path
----
\\SERVER01\Processor(_Total)\DPC Rate
\\SERVER01\Processor(1)\DPC Rate
\\SERVER01\Processor(0)\DPC Rate
\\SERVER01\Processor(_Total)\% Idle Time
\\SERVER01\Processor(1)\% Idle Time
\\SERVER01\Processor(0)\% Idle Time
\\SERVER01\Processor(_Total)\% C3 Time
\\SERVER01\Processor(1)\% C3 Time
The third command gets the counter paths that end in "Interrupts/sec" and saves the paths in the $IntCtrs variable. It uses the Where-Object cmdlet to filter the counter paths and the ForEach-Object cmdlet to get only the value of the **Path** property of each selected path object.
PS C:\> $IntCtrs = $Data[0].Countersamples | Where-Object {$_.Path -like "*Interrupts/sec"} | ForEach-Object {$_.Path}
The fourth command displays the selected counter paths in the $IntCtrs variable.
PS C:\> $IntCtrs
\\SERVER01\Processor(_Total)\Interrupts/sec
\\SERVER01\Processor(1)\Interrupts/sec
\\SERVER01\Processor(0)\Interrupts/sec
The fifth command uses the **Import-Counter** cmdlet to import the data. It uses the $IntCtrs variable as the value of the *Counter* parameter to import only data for the counter paths in $IntCtrs.
PS C:\> $I = Import-Counter -Path .\ProcessorData.blg -Counter $intCtrs
The sixth command uses the Export-Counter cmdlet to export the data to the Interrupts.csv file.
PS C:\> $I | Export-Counter -Path .\Interrupts.csv -Format CSV
Este exemplo mostra como selecionar dados de um arquivo de log do contador de desempenho (.blg) e, em seguida, exportar os dados selecionados para um arquivo .csv. Os quatro primeiros comandos obtêm os caminhos do contador do arquivo e os salvam na variável chamada $Data. Os dois últimos comandos importam dados selecionados e, em seguida, exportam apenas os dados selecionados.
Exemplo 4: Exibir todos os caminhos de contador em um grupo de conjuntos de contadores importados
The first command uses the *ListSet* parameter of the **Import-Counter** cmdlet to get all of the counter sets that are represented in a counter data file.
PS C:\> Import-Counter -Path ProcessorData.csv -ListSet *
CounterSetName : Processor
MachineName : \\SERVER01
CounterSetType : MultiInstance
Description :
Paths : {\\SERVER01\Processor(*)\DPC Rate, \\SERVER01\Processor(*)\% Idle Time, \\SERVER01
\Processor(*)\% C3 Time, \\SERVER01\Processor(*)\% Interrupt Time...}
PathsWithInstances : {\\SERVER01\Processor(_Total)\DPC Rate, \\SERVER01\Processor(1)\DPC Rate, \\SERVER01
\Processor(0)\DPC Rate, \\SERVER01\Processor(_Total)\% Idle Time...}
Counter : {\\SERVER01\Processor(*)\DPC Rate, \\SERVER01\Processor(*)\% Idle Time, \\SERVER01
\Processor(*)\% C3 Time, \\SERVER01\Processor(*)\% Interrupt Time...}
The second command gets all of the counter paths from the list set.
PS C:\> Import-Counter -Path ProcessorData.csv -ListSet * | ForEach-Object {$_.Paths}
\\SERVER01\Processor(*)\DPC Rate
\\SERVER01\Processor(*)\% Idle Time
\\SERVER01\Processor(*)\% C3 Time
\\SERVER01\Processor(*)\% Interrupt Time
\\SERVER01\Processor(*)\% C2 Time
\\SERVER01\Processor(*)\% User Time
\\SERVER01\Processor(*)\% C1 Time
\\SERVER01\Processor(*)\% Processor Time
\\SERVER01\Processor(*)\C1 Transitions/sec
\\SERVER01\Processor(*)\% DPC Time
\\SERVER01\Processor(*)\C2 Transitions/sec
\\SERVER01\Processor(*)\% Privileged Time
\\SERVER01\Processor(*)\C3 Transitions/sec
\\SERVER01\Processor(*)\DPCs Queued/sec
\\SERVER01\Processor(*)\Interrupts/sec
Este exemplo mostra como exibir todos os caminhos de contador em um grupo de conjuntos de contadores importados.
Exemplo 5: Importar dados do contador de um intervalo de carimbos de data/hora
The first command lists in a table the time stamps of all of the data in the ProcessorData.blg file.
PS C:\> Import-Counter -Path ".\disk.blg" | Format-Table -Property Timestamp
The second command saves particular time stamps in the $Start and $End variables. The strings are cast to **DateTime** objects.
PS C:\> $Start = [datetime]"7/9/2008 3:47:00 PM"; $End = [datetime]"7/9/2008 3:47:59 PM"
The third command uses the **Import-Counter** cmdlet to get only counter data that has a time stamp between the start and end times (inclusive). The command uses the *StartTime* and *EndTime* parameters of **Import-Counter** to specify the range.
PS C:\> Import-Counter -Path Disk.blg -StartTime $start -EndTime $end
Este exemplo importa apenas os dados do contador que têm um carimbo de data/hora entre os intervalos iniciais e finais especificados no comando.
Exemplo 6: Importar um número especificado das amostras mais antigas de um arquivo de log do contador de desempenho
The first command uses the **Import-Counter** cmdlet to import the first (oldest) five samples from the Disk.blg file. The command uses the *MaxSamples* parameter to limit the import to five counter samples.
PS C:\> Import-Counter -Path "Disk.blg" -MaxSamples 5
The second command uses array notation and the Windows PowerShell range operator (..) to get the last five counter samples from the file. These are the five newest samples.
PS C:\> (Import-Counter -Path Disk.blg)[-1 .. -5]
Este exemplo mostra como importar os cinco exemplos mais antigos e os cinco mais recentes de um arquivo de log do contador de desempenho.
Exemplo 7: Obter um resumo dos dados do contador de um arquivo
PS C:\> Import-Counter "D:\Samples\Memory.blg" -Summary
OldestRecord NewestRecord SampleCount
------------ ------------ -----------
7/10/2008 2:59:18 PM 7/10/2008 3:00:27 PM 1000
Este comando usa o parâmetro Summary do cmdlet Import-Counter para obter um resumo dos dados do contador no arquivo Memory.blg.
Exemplo 8: Atualizar um arquivo de log do contador de desempenho
The first command uses the *ListSet* parameter of **Import-Counter** to get the counters in OldData.blg, an existing counter log file. The command uses a pipeline operator (|) to send the data to a ForEach-Object command that gets only the values of the **PathsWithInstances** property of each object
PS C:\> $Counters = Import-Counter OldData.blg -ListSet * | ForEach-Object {$_.PathsWithInstances}
The second command gets updated data for the counters in the $Counters variable. It uses the Get-Counter cmdlet to get a current sample, and then export the results to the NewData.blg file.
PS C:\> Get-Counter -Counter $Counters -MaxSamples 20 | Export-Counter C:\Logs\NewData.blg
Este exemplo atualiza um arquivo de log do contador de desempenho.
Exemplo 9: Importar dados de log de desempenho de vários arquivos e salvá-los
PS C:\> $Counters = "D:\test\pdata.blg", "D:\samples\netlog.blg" | Import-Counter
Este comando importa dados de log de desempenho de dois logs e salva os dados na variável $Counters. O comando usa um operador de pipeline para enviar os caminhos do log de desempenho para Import-Counter, que importa os dados dos caminhos especificados.
Observe que cada caminho está entre aspas e que os caminhos estão separados uns dos outros por uma vírgula.
Parâmetros
-Counter
Especifica, como uma matriz de cadeia de caracteres, os contadores de desempenho. Por padrão, Import-Counter importa todos os dados de todos os contadores nos arquivos de entrada. Insira um ou mais caminhos de contador. Curingas são permitidos na parte Instância do caminho.
Cada caminho do contador tem o seguinte formato. O valor ComputerName é necessário no caminho. Por exemplo:
\\<ComputerName>\<CounterSet>(<Instance>)\<CounterName>
Por exemplo:
\\Server01\Processor(2)\% User Time\\Server01\Processor(*)\% Processor Time
Propriedades dos parâmetros
| Tipo: | String[] |
| Default value: | All counter |
| Suporta carateres universais: | True |
| NãoMostrar: | False |
Conjuntos de parâmetros
GetCounterSet
| Position: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
-EndTime
Especifica uma data e hora de término que este cmdlet importa dados do contador entre o StartTime e este parâmetro timestamps. Insira um objeto DateTime, como um criado pelo cmdlet Get-Date. Por padrão, Import-Counter importa todos os dados do contador nos arquivos especificados pelo parâmetro Path.
Propriedades dos parâmetros
| Tipo: | DateTime |
| Default value: | No end time |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
Conjuntos de parâmetros
GetCounterSet
| Position: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
-ListSet
Especifica os conjuntos de contadores de desempenho representados nos arquivos exportados. Os comandos com este parâmetro não importam dados.
Insira um ou mais nomes de conjuntos de contadores.
Curingas são permitidos.
Para obter todos os conjuntos de contadores no arquivo, digite Import-Counter -ListSet *.
Propriedades dos parâmetros
| Tipo: | String[] |
| Default value: | None |
| Suporta carateres universais: | True |
| NãoMostrar: | False |
Conjuntos de parâmetros
ListSetSet
| Position: | Named |
| Obrigatório: | True |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
-MaxSamples
Especifica o número máximo de amostras de cada contador a importar. Por padrão, Get-Counter importa todos os dados nos arquivos especificados pelo parâmetro Path.
Propriedades dos parâmetros
| Tipo: | Int64 |
| Default value: | No maximum |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
Conjuntos de parâmetros
GetCounterSet
| Position: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
-Path
Especifica os caminhos de arquivo dos arquivos a serem importados. Este parâmetro é obrigatório.
Insira o caminho e o nome de arquivo de um arquivo .csv,, .tsv ou .blg que você exportou usando o cmdlet Export-Counter. Você pode especificar apenas um arquivo .csv ou .tsv, mas pode especificar vários arquivos .blg (até 32) em cada comando. Você também pode canalizar cadeias de caracteres de caminho de arquivo (entre aspas) para Import-Counter.
Propriedades dos parâmetros
| Tipo: | String[] |
| Default value: | None |
| Suporta carateres universais: | True |
| NãoMostrar: | False |
| Aliases: | PSPath |
Conjuntos de parâmetros
(All)
| Position: | 0 |
| Obrigatório: | True |
| Valor do pipeline: | True |
| Valor do pipeline por nome de propriedade: | True |
| Valor dos restantes argumentos: | False |
-StartTime
Especifica a data e a hora de início nas quais esse cmdlet obtém dados do contador. Insira um objeto DateTime, como um criado pelo cmdlet Get-Date. Por padrão, Import-Counter importa todos os dados do contador nos arquivos especificados pelo parâmetro Path.
Propriedades dos parâmetros
| Tipo: | DateTime |
| Default value: | No start time |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
Conjuntos de parâmetros
GetCounterSet
| Position: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
-Summary
Indica que esse cmdlet obtém um resumo dos dados importados, em vez de obter amostras de dados de contador individuais.
Propriedades dos parâmetros
| Tipo: | SwitchParameter |
| Default value: | False |
| Suporta carateres universais: | False |
| NãoMostrar: | False |
Conjuntos de parâmetros
SummarySet
| Position: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline por nome de propriedade: | False |
| Valor dos restantes argumentos: | False |
CommonParameters
Este cmdlet suporta os parâmetros comuns: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction e -WarningVariable. Para obter mais informações, consulte about_CommonParameters.
Entradas
String
Você pode canalizar caminhos de log do contador de desempenho para esse cmdlet.
Saídas
Microsoft.PowerShell.Commands.GetCounter.PerformanceCounterSampleSet, Microsoft.PowerShell.Commands.GetCounter.CounterSet, Microsoft.PowerShell.Commands.GetCounter.CounterFileInfo
Este cmdlet retorna um Microsoft.PowerShell.Commands.GetCounter.PerformanceCounterSampleSet.
Se você usar o parâmetro ListSet
Notas
- Este cmdlet não tem um parâmetro ComputerName. No entanto, se o computador estiver configurado para comunicação remota do Windows PowerShell, você poderá usar o cmdlet Invoke-Command para executar um comando Import-Counter em um computador remoto.