Importa file di registro dei contatori delle prestazioni (con estensioni blg, csv e tsv) e crea gli oggetti che rappresentano ciascun esempio di contatore nel registro.

Sintassi

Import-Counter [-Path] <string[]> [-Counter <string[]>] [-EndTime <DateTime>] [-MaxSamples <Int64>] [-StartTime <DateTime>] [<CommonParameters>]

Import-Counter [-Path] <string[]> -ListSet <string[]> [<CommonParameters>]

Import-Counter [-Path] <string[]> -Riepilogo <switch> [<CommonParameters>]

Descrizione

Il cmdlet Import-Counter importa dati del contatore delle prestazioni dai file del registro del contatore delle prestazioni e crea oggetti per ciascun esempio di contatore nel file. Gli oggetti PerformanceCounterSampleSet creati sono identici agli oggetti restituiti da Get-Counter quando vengono raccolti dati del contatore delle prestazioni.

È possibile importare dati da file del registro delle prestazioni in formato csv (valori delimitati da virgole), tsv (valori delimitati da tabulazioni) e blg (file del registro delle prestazioni binario). Se si utilizzano file con estensione blg, è possibile importare più file (fino a 32 file diversi) in ogni comando. È inoltre possibile utilizzare i parametri di Import-Counter per filtrare i dati importati.

Insieme a Get-Counter e Export-Counter, questa funzionalità consente di raccogliere, esportazione, importare, combinare, filtrare, modificare e riesportare dati del contatore delle prestazioni all'interno di Windows PowerShell.

Parametri

-Counter <string[]>

Importa dati solo per i contatori delle prestazioni specificati. Per impostazione predefinita, Import-Counter importa tutti i dati da tutti i contatori nei file di input. Immettere uno o più percorsi di contatori. I caratteri jolly sono consentiti nella parte Instance del percorso.

Il percorso di ciascun contatore dispone del formato seguente. Si noti che nel percorso è richiesto il valore ComputerName, anche nel computer locale.

"\\<ComputerName>\<CounterSet>(<Instance>)\<CounterName>"

Ad esempio:

"\\Server01\Processor(2)\% User Time"

"\Processor(*)\% Processor Time

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

true

-EndTime <DateTime>

Importa solo i dati del contatore con un timestamp minore o uguale alla data e all'ora specificate. Immettere un oggetto DateTime, ad esempio uno creato dal cmdlet Get-Date. Per impostazione predefinita, Import-Counter importa tutti i dati del contatore nei file specificati dal parametro Path.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-ListSet <string[]>

Ottiene i set di contatori delle prestazioni rappresentati nei file esportati. I comandi con questo parametro non importano dati.

Immettere uno o più nomi di set di contatori. È consentito l'utilizzo di caratteri jolly. Per ottenere tutti i set di contatori nel file, digitare "import-counter -listset *".

Obbligatorio?

true

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

true

-MaxSamples <Int64>

Specifica il numero massimo di esempi di ciascun contatore da importare. Per impostazione predefinita, Get-Counter importa tutti i dati dei file specificati dal parametro Path.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-Path <string[]>

Specifica i percorsi dei file da importare. Questo parametro è obbligatorio.

Immettere il percorso e il nome file di un file con estensione csv, tsv o blg esportato tramite il cmdlet Export-Counter. È possibile specificare un solo file con estensione csv o tsv, ma è possibile specificare più file con estensione blg (fino a 32) in ciascun comando. È inoltre possibile reindirizzare stringhe dei percorsi dei file (tra virgolette) a Import-Counter.

Obbligatorio?

true

Posizione?

2

Valore predefinito

Accettare input da pipeline?

true (ByValue)

Accettare caratteri jolly?

true

-StartTime <DateTime>

Importa solo i dati del contatore con un timestamp maggiore o uguale alla data e all'ora specificate. Immettere un oggetto DateTime, ad esempio uno creato dal cmdlet Get-Date. Per impostazione predefinita, Import-Counter importa tutti i dati del contatore nei file specificati dal parametro Path.

Obbligatorio?

false

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

-Riepilogo <switch>

Ottiene un riepilogo dei dati importati, anziché ottenere singoli esempi di dati del contatore.

Obbligatorio?

true

Posizione?

named

Valore predefinito

Accettare input da pipeline?

false

Accettare caratteri jolly?

false

<CommonParameters>

Questo cmdlet supporta i parametri comuni -Verbose, -Debug, -ErrorAction, -ErrorVariable, -OutBuffer e -OutVariable. Per ulteriori informazioni, vedere about_Commonparameters.

Input e output

Il tipo di input è il tipo degli oggetti che è possibile reindirizzare al cmdlet. Il tipo restituito è il tipo degli oggetti restituiti dal cmdlet.

Input

System.String

È possibile reindirizzare percorsi di registri di contatori delle prestazioni a Import-Counter.

Output

Microsoft.PowerShell.Commands.GetCounter.PerformanceCounterSampleSet, Microsoft.PowerShell.Commands.GetCounter.CounterSet, Microsoft.PowerShell.Commands.GetCounter.CounterFileInfo

Per impostazione predefinita, Import-Counter restituisce Microsoft.PowerShell.Commands.GetCounter.PerformanceCounterSampleSet. Se si utilizza il parametro ListSet, Import-Command restituisce un oggetto Microsoft.PowerShell.Commands.GetCounter.CounterSet. Se si utilizza il parametro Summary, Import-Command restituisce un oggetto Microsoft.PowerShell.Commands.GetCounter.CounterFileInfo.

Note

Il cmdlet Import-Counter non dispone di un parametro ComputerName. Tuttavia, se il computer è configurato per la comunicazione remota di Windows PowerShell, è possibile utilizzare il cmdlet Invoke-Command per eseguire un comando Import-Counter in un computer remoto.

Esempio 1

C:\PS># Import-Counter

Descrizione
-----------
Questo comando importa tutti i dati del contatore dal file ProcessorData.csv nella variabile $data.

C:\PS> $data = import-counter -path ProcessorData.csv






Esempio 2

C:\PS># Import-Counter

Descrizione
-----------
Questo comando importa solo i dati del contatore Processor(_total)\Interrupts\sec dal file ProcessorData.blg nella variabile $i.

C:\PS> $i = import-counter -path ProcessorData.blg -counter "\\SERVER01\Processor(_Total)\Interrupts/sec"






Esempio 3

C:\PS># Import-Counter

Descrizione
-----------
In questo esempio viene illustrato come selezionare dati da un file del registro dei contatori delle prestazioni (con estensione blg) ed esportare quindi i dati selezionati in un file con estensione csv. 

I primi quattro comandi ottengono i percorsi dei contatori dal file e li salvano in una variabile. Gli ultimi due comandi importano i dati selezionati, quindi esportano solo i dati selezionati.


Il primo comando utilizza Import-Counter per importare tutti i dati dei contatori delle prestazioni dai file ProcessorData.blg. Il comando salva i dati nella variabile $data.

C:\PS> $data = import-counter .\processordata.blg



Nel secondo comando vengono visualizzati i percorsi dei contatori nella variabile $data. La visualizzazione viene mostrata nell'output dei comandi.

C:\PS> $data[0].countersamples | format-table 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
...


Il terzo comando ottiene i percorsi dei contatori che terminano in "Interrupts/sec" e salva i percorsi nella variabile $IntCtrs.

C:\PS> $IntCtrs = $data[0].countersamples | where {$_.path -like "*interrupts/sec"} | foreach {$_.path}



Il quarto comando visualizza i percorsi dei contatori selezionati.

C:\PS> $IntCtrs

\\SERVER01\Processor(_Total)\Interrupts/sec
\\SERVER01\Processor(1)\Interrupts/sec
\\SERVER01\Processor(0)\Interrupts/sec



Il quinto comando utilizza il cmdlet Import-Counter per importare i dati. Viene utilizzato il parametro Counter con la variabile $IntCtrs per importare solo i dati per i percorsi dei contatori in $IntCtrs.

C:\PS> $i = import-counter -path .\processordata.blg -counter $intCtrs
    


Il sesto comando utilizza il cmdlet Export-Counter per esportare i dati. 

C:\PS> $i | export-counter -path .\interrupts.csv -format CSV






Esempio 4

C:\PS># Import-Counter

Descrizione
-----------
In questo esempio viene illustrato come visualizzare tutti i percorsi dei contatori in un gruppo di set di contatori importati. 

Il primo comando utilizza il parametro ListSet per ottenere tutti i set di contatori rappresentati in un file di dati contatore.

C:\PS> 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...}



Il secondo comando ottiene tutti i percorsi dei contatori dal set di elenchi.

C:\PS> import-counter -path processordata.csv -listset * | foreach {$_.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






Esempio 5

C:\PS># Import-Counter

Descrizione
-----------
In questo esempio vengono importati solo i dati dei contatori che dispongono di un timestamp tra gli intervalli di inizio e di fine specificati nel comando.

Il primo comando elenca i timestamp di tutti i dati nel file ProcessorData.blg.

  C:\PS> import-counter -path .\disk.blg | format-table timestamp


Il secondo e il terzo comando salvano determinati timestamp nelle variabili $start e $end. Il cast delle stringhe viene eseguito agli oggetti DateTime.

  C:\PS> $start = [datetime]"7/9/2008 3:47:00 PM"
  C:\PS> $end = [datetime]"7/9/2008 3:47:59 PM"


Il quarto comando finale utilizza Import-Counter per ottenere solo i dati del contatore che dispongono di un timestamp compreso tra l'ora di inizio e di fine (incluse). Il comando utilizza i parametri StartTime e EndTime per specificare l'intervallo.

  C:\PS> $t-data = import-counter -path disk.blg -starttime $start -endtime $end






Esempio 6

C:\PS># Import-Counter

Descrizione
-----------
In questo esempio viene illustrato come importare i cinque esempi meno recenti e più recenti da un file del registro dei contatori delle prestazioni.

Il primo comando utilizza il cmdlet Import-Counter per importare dati dal file Disk.blg. Il comando utilizza il parametro MaxSamples per limitare l'importazione a cinque esempi di contatori. Vengono ottenuti i primi cinque esempi (meno recenti) del file.

C:\PS> import-counter -path disk.blg -maxSamples 5

Il secondo comando utilizza la notazione di matrice e l'operatore di intervallo (..) di Windows PowerShell per ottenere gli ultimi cinque esempi di contatore dal file. Questi sono i cinque esempi più recenti.

C:\PS> (import-counter -path disk.blg)[-1 .. -5]






Esempio 7

C:\PS># Import-Counter

Descrizione
-----------
Questo comando utilizza il parametro Summary per ottenere un riepilogo dei dati del contatore dal file Memory.blg.

C:\PS> 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






Esempio 8

C:\PS># Import-Counter

Descrizione
-----------
In questo esempio viene aggiornato un file del registro dei contatori delle prestazioni. 

Il primo comando utilizza il parametro ListSet di Import-Counter per ottenere i contatori in OldData.blg, un file del registro dei contatori esistente. Il comando utilizza un operatore pipeline (|) per inviare i dati a un comando Foreach-Object che ottiene solo i valori della proprietà PathsWithInstances di ciascun oggetto.

C:\PS> $counters = import-counter olddata.blg -ListSet * | foreach {$_.PathsWithInstances}


Il secondo comando utilizza gli stessi contatori in un nuovo comando Get-Counter per ottenere un esempio corrente e lo esporta nel file NewData.blg.

C:\PS> get-counter -counter $counters -maxSamples 20 | export-counter c:\Logs\newdata.blg






Esempio 9

C:\PS># Import-Counter

Descrizione
-----------
Questo comando importa dati dei registri delle prestazioni da due registri e salva i dati nella variabile $counters. Il comando utilizza un operatore pipeline (|) per inviare i percorsi dei registri delle prestazioni a Import-Counter. 

C:\PS> $counters = "d:\test\pdata.blg", "d:\samples\netlog.blg" | import-counter

Si noti che ciascun percorso è racchiuso tra virgolette e che i percorsi sono separati l'uno dall'altro da una virgola.






Vedere anche




Argomenti della Guida