Import-Counter
Importa arquivos de log do contador de desempenho e cria os objetos que representam cada exemplo de contador no log.
Sintaxe
GetCounterSet (Default)
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 de arquivos de log do contador de desempenho e cria objetos para cada exemplo de contador no arquivo. Os objetos PerformanceCounterSampleSet que ele cria são idênticos aos objetos que Get-Counter retorna quando coleta dados do contador de desempenho.
Você pode importar dados de arquivos de log de desempenho separados por vírgulas (.csv), valor separado por tabulação (.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.
Junto com os cmdlets Get-Counter e Export-Counter, esse recurso permite coletar, exportar, importar, combinar, filtrar, manipular e exportar novamente dados de contador de desempenho no Windows PowerShell.
Exemplos
Exemplo 1: importar todos os dados de contador de um arquivo
$data = Import-Counter -Path ProcessorData.csv
Esse comando importa todos os dados do contador do arquivo ProcessorData.csv para a variável $data.
Exemplo 2: importar dados de contador específicos de um arquivo
$i = Import-Counter -Path "ProcessorData.blg" -Counter "\\SERVER01\Processor(_Total)\Interrupts/sec"
Esse comando importa apenas os dados do contador "Processador(_total)\Interrupts/s" do arquivo ProcessorData.blg para a variável $i.
Exemplo 3: selecionar dados de um contador de desempenho e exportá-los para um arquivo
Este exemplo mostra como selecionar dados de um arquivo de log de contador de desempenho (.blg) e exportar os dados selecionados para um arquivo de .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 exportam apenas os dados selecionados.
$data = Import-Counter .\ProcessorData.blg
$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
$intCtrs = $Data[0].Countersamples | Where-Object {$_.Path -like "*Interrupts/sec"} | ForEach-Object {$_.Path}
$intCtrs
\\SERVER01\Processor(_Total)\Interrupts/sec
\\SERVER01\Processor(1)\Interrupts/sec
\\SERVER01\Processor(0)\Interrupts/sec
$i = Import-Counter -Path .\ProcessorData.blg -Counter $intCtrs
$i | Export-Counter -Path .\Interrupts.csv -Format CSV
O primeiro comando usa Import-Counter para importar todos os dados do contador de desempenho dos arquivos de ProcessorData.blg. O comando salva os dados na variável $data.
O segundo comando exibe os caminhos do contador na variável $data. Para obter a exibição mostrada na saída do comando, o exemplo usa o cmdlet Format-Table para formatar como uma tabela os caminhos do contador do primeiro contador na variável $data.
O terceiro comando obtém os caminhos de contador que terminam em Interrupts/sec e salva os caminhos na variável $intCtrs. Ele usa o cmdlet Where-Object para filtrar os caminhos do contador e o cmdlet ForEach-Object para obter apenas o valor da propriedade Path de cada objeto de caminho selecionado.
O quarto comando exibe os caminhos de contador selecionados na variável $intCtrs.
O quinto comando usa o cmdlet Import-Counter para importar os dados. Ele usa a variável $intCtrs como o valor do parâmetro Counter para importar apenas dados para os caminhos do contador no $intCtrs.
O sexto comando usa o cmdlet Export-Counter para exportar os dados para o arquivo Interrupts.csv.
Exemplo 4: Exibir todos os caminhos de contador em um grupo de conjuntos de contadores importados
Este exemplo mostra como exibir todos os caminhos de contador em um grupo de conjuntos de contadores importados.
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...}
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
O primeiro comando usa o parâmetro ListSet do cmdlet Import-Counter para obter todos os conjuntos de contadores representados em um arquivo de dados de contador.
O segundo comando obtém todos os caminhos de contador do conjunto de listas.
Exemplo 5: Importar dados de contador de um intervalo de carimbos de data/hora
Este exemplo importa apenas os dados do contador que têm um carimbo de data/hora entre os intervalos finais especificados no comando.
Import-Counter -Path ".\disk.blg" | Format-Table -Property Timestamp
$start = [datetime]"7/9/2008 3:47:00 PM"; $end = [datetime]"7/9/2008 3:47:59 PM"
Import-Counter -Path Disk.blg -StartTime $start -EndTime $end
O primeiro comando lista em uma tabela os carimbos de data/hora de todos os dados no arquivo ProcessorData.blg.
O segundo comando salva carimbos de data/hora específicos nas variáveis $start e $end. As cadeias de caracteres são convertidas em objetos DateTime.
O terceiro comando usa o cmdlet Import-Counter para obter apenas dados de contador que têm um carimbo de data/hora entre os horários de início e término (inclusive). O comando usa os parâmetros StartTime e EndTime de Import-Counter para especificar o intervalo.
Exemplo 6: importar um número especificado dos exemplos mais antigos de um arquivo de log do contador de desempenho
Este exemplo mostra como importar os cinco exemplos mais antigos e cinco mais recentes de um arquivo de log de contador de desempenho.
Import-Counter -Path "Disk.blg" -MaxSamples 5
(Import-Counter -Path Disk.blg)[-1 .. -5]
O primeiro comando usa o cmdlet Import-Counter para importar os primeiros (mais antigos) cinco exemplos do arquivo Disk.blg. O comando usa o parâmetro MaxSamples para limitar a importação a cinco exemplos de contador.
O segundo comando usa a notação de matriz e o operador de intervalo do Windows PowerShell (..) para obter os últimos cinco exemplos de contador do arquivo. Estes são os cinco exemplos mais recentes.
Exemplo 7: obter um resumo dos dados do contador de um arquivo
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
Esse comando usa o parâmetro Resumo 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
Este exemplo atualiza um arquivo de log do contador de desempenho.
$counters = Import-Counter OldData.blg -ListSet * | ForEach-Object {$_.PathsWithInstances}
Get-Counter -Counter $Counters -MaxSamples 20 | Export-Counter C:\Logs\NewData.blg
O primeiro comando usa o parâmetro ListSet de Import-Counter para obter os contadores em OldData.blg, um arquivo de log de contador existente. O comando usa um operador de pipeline (|) para enviar os dados para um comando ForEach-Object que obtém apenas os valores da propriedade PathsWithInstances de cada objeto
O segundo comando obtém dados atualizados para os contadores na variável $counters. Ele usa o cmdlet Get-Counter para obter um exemplo atual e exportar os resultados para o arquivo NewData.blg.
Exemplo 9: importar dados de log de desempenho de vários arquivos e salvá-los
$counters = "D:\test\pdata.blg", "D:\samples\netlog.blg" | Import-Counter
Esse 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 de log de desempenho para o Import-Counter, que importa os dados dos caminhos especificados.
Observe que cada caminho está entre aspas e que os caminhos sã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 de 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 do parâmetro
| Tipo: | String[] |
| Valor padrão: | All counter |
| Dá suporte a curingas: | True |
| DontShow: | False |
Conjuntos de parâmetros
GetCounterSet
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-EndTime
Especifica uma data e hora de término em que esse cmdlet importa dados de contador entre o startTime Get-Date. Por padrão, Import-Counter importa todos os dados de contador nos arquivos especificados pelo parâmetro caminho.
Propriedades do parâmetro
| Tipo: | DateTime |
| Valor padrão: | No end time |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
GetCounterSet
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-ListSet
Especifica os conjuntos de contadores de desempenho representados nos arquivos exportados. Os comandos com esse parâmetro não importam dados.
Insira um ou mais nomes de conjunto de contadores. Caracteres curinga são permitidos. Para obter todos os conjuntos de contadores no arquivo, digite Import-Counter -ListSet *.
Propriedades do parâmetro
| Tipo: | String[] |
| Valor padrão: | None |
| Dá suporte a curingas: | True |
| DontShow: | False |
Conjuntos de parâmetros
ListSetSet
| Cargo: | Named |
| Obrigatório: | True |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-MaxSamples
Especifica o número máximo de amostras de cada contador a ser importado. Por padrão, Get-Counter importa todos os dados nos arquivos especificados pelo parâmetro caminho.
Propriedades do parâmetro
| Tipo: | Int64 |
| Valor padrão: | No maximum |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
GetCounterSet
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-Path
Especifica os caminhos de arquivo dos arquivos a serem importados. Este parâmetro é obrigatório.
Insira o caminho e o nome do arquivo de um arquivo, .csv, .tsvou .blg exportado usando o cmdlet Export-Counter. Você pode especificar apenas um arquivo .csv ou .tsv, mas pode especificar vários arquivos de .blg (até 32) em cada comando. Você também pode canalizar cadeias de caracteres de caminho de arquivo (entre aspas) para Import-Counter.
Propriedades do parâmetro
| Tipo: | String[] |
| Valor padrão: | None |
| Dá suporte a curingas: | True |
| DontShow: | False |
| Aliases: | PSPath |
Conjuntos de parâmetros
(All)
| Cargo: | 1 |
| Obrigatório: | True |
| Valor do pipeline: | True |
| Valor do pipeline pelo nome da propriedade: | True |
| Valor dos argumentos restantes: | False |
-StartTime
Especifica a data e a hora de início em que esse cmdlet obtém dados de contador. Insira um objeto DateTime, como um criado pelo cmdlet Get-Date. Por padrão, Import-Counter importa todos os dados de contador nos arquivos especificados pelo parâmetro caminho.
Propriedades do parâmetro
| Tipo: | DateTime |
| Valor padrão: | No start time |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
GetCounterSet
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | False |
-Summary
Indica que esse cmdlet obtém um resumo dos dados importados, em vez de obter exemplos de dados de contador individuais.
Propriedades do parâmetro
| Tipo: | SwitchParameter |
| Valor padrão: | False |
| Dá suporte a curingas: | False |
| DontShow: | False |
Conjuntos de parâmetros
SummarySet
| Cargo: | Named |
| Obrigatório: | False |
| Valor do pipeline: | False |
| Valor do pipeline pelo nome da propriedade: | False |
| Valor dos argumentos restantes: | 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 redirecionar caminhos de log do contador de desempenho para este 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, esse cmdlet retornará um objeto Microsoft.PowerShell.Commands.GetCounter.CounterSet. Se você usar o parâmetro resumo
Observações
- Esse 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-Commandpara executar um comandoImport-Counterem um computador remoto.