Import-Counter
Importuje soubory protokolu čítače výkonu a vytvoří objekty, které představují jednotlivé vzorky čítačů v protokolu.
Syntaxe
Import-Counter
[-Path] <String[]>
[-StartTime <DateTime>]
[-EndTime <DateTime>]
[-Counter <String[]>]
[-MaxSamples <Int64>]
[<CommonParameters>]
Import-Counter
[-Path] <String[]>
-ListSet <String[]>
[<CommonParameters>]
Import-Counter
[-Path] <String[]>
[-Summary]
[<CommonParameters>]
Description
Rutina Import-Counter importuje data čítače výkonu ze souborů protokolu čítače výkonu a vytvoří objekty pro každý vzorek čítače v souboru. Objekty PerformanceCounterSampleSet, které vytváří, jsou identické s objekty, které Get-Counter vrátí, když shromažďuje data čítače výkonu.
Data můžete importovat ze souborů protokolu výkonu oddělených čárkami (.csv), hodnoty oddělené tabulátory (.tsv) a binárního protokolu výkonu (.blg). Pokud používáte soubory .blg, můžete v každém příkazu importovat až 32 souborů. K filtrování importovaných dat můžete použít parametry čítače importu.
Spolu s rutinami Get-Counter a Export-Counter umožňuje tato funkce shromažďovat, exportovat, importovat, kombinovat, filtrovat, manipulovat a znovu exportovat data čítačů výkonu v prostředí Windows PowerShell.
Příklady
Příklad 1: Import všech dat čítačů ze souboru
$Data = Import-Counter -Path ProcessorData.csv
Tento příkaz importuje všechna data čítačů ze souboru ProcessorData.csv do proměnné $Data.
Příklad 2: Import konkrétních dat čítačů ze souboru
PS C:\> $I = Import-Counter -Path "ProcessorData.blg" -Counter "\\SERVER01\Processor(_Total)\Interrupts/sec"
Tento příkaz importuje pouze "Processor(_total)\Interrupts/sec" data čítače ze souboru ProcessorData.blg do proměnné $I.
Příklad 3: Vyberte data z čítače výkonu a pak je exportujte do souboru.
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
Tento příklad ukazuje, jak vybrat data ze souboru protokolu čítače výkonu (.blg) a pak exportovat vybraná data do .csv souboru. První čtyři příkazy získají cesty čítačů ze souboru a uloží je do proměnné s názvem $Data. Poslední dva příkazy importuje vybraná data a pak exportuje jenom vybraná data.
Příklad 4: Zobrazení všech cest čítačů ve skupině importovaných sad čítačů
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
Tento příklad ukazuje, jak zobrazit všechny cesty čítačů ve skupině importovaných sad čítačů.
Příklad 5: Import dat čítačů z časového razítka
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
Tento příklad importuje pouze data čítače, která mají časové razítko mezi počátečním koncovými oblastmi zadanými v příkazu.
Příklad 6: Import zadaného počtu nejstarších vzorků ze souboru protokolu čítače výkonu
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]
Tento příklad ukazuje, jak importovat pět nejstarších a pět nejnovějších ukázek ze souboru protokolu čítače výkonu.
Příklad 7: Získání souhrnu dat čítačů ze souboru
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
Tento příkaz používá parametr Summary rutiny Import-Counter k získání souhrnu dat čítačů v souboru Memory.blg.
Příklad 8: Aktualizace souboru protokolu čítače výkonu
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
Tento příklad aktualizuje soubor protokolu čítače výkonu.
Příklad 9: Import dat protokolu výkonu z více souborů a jejich uložení
PS C:\> $Counters = "D:\test\pdata.blg", "D:\samples\netlog.blg" | Import-Counter
Tento příkaz importuje data protokolu výkonu ze dvou protokolů a uloží data do proměnné $Counters. Příkaz pomocí operátoru kanálu odešle cesty protokolu výkonu do čítače importu, který importuje data ze zadaných cest.
Všimněte si, že každá cesta je uzavřená v uvozovkách a že cesty jsou navzájem oddělené čárkou.
Parametry
-Counter
Určuje jako pole řetězců čítače výkonu. Ve výchozím nastavení čítač importu importuje všechna data ze všech čítačů ve vstupních souborech. Zadejte jednu nebo více cest čítače. Zástupné cardy jsou povoleny v části instance cesty.
Každá cesta čítače má následující formát. Hodnota ComputerName je vyžadována v cestě. Například:
\\<ComputerName>\<CounterSet>(<Instance>)\<CounterName>
Například:
\\Server01\Processor(2)\% User Time
\\Server01\Processor(*)\% Processor Time
Typ: | String[] |
Position: | Named |
Default value: | All counter |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | True |
-EndTime
Určuje koncové datum a čas, kdy tato rutina importuje data čítačů mezi startTime a časovými razítky tohoto parametru. Zadejte objekt DateTime, například objekt vytvořený rutinou Get-Date. Ve výchozím nastavení Import-Counter importuje všechna data čítačů v souborech určených parametrem Path.
Typ: | DateTime |
Position: | Named |
Default value: | No end time |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-ListSet
Určuje sady čítačů výkonu, které jsou reprezentovány v exportovaných souborech. Příkazy s tímto parametrem neimportují žádná data.
Zadejte jeden nebo více názvů sady čítačů.
Jsou povoleny zástupné cardy.
Chcete-li získat všechny sady čítačů v souboru, zadejte Import-Counter -ListSet *
.
Typ: | String[] |
Position: | Named |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | True |
-MaxSamples
Určuje maximální počet vzorků každého čítače k importu. Ve výchozím nastavení Get-Counter importuje všechna data v souborech určených parametrem Path.
Typ: | Int64 |
Position: | Named |
Default value: | No maximum |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Path
Určuje cesty k souborům, které se mají importovat. Tento parametr je povinný.
Zadejte cestu a název souboru .csv,, .tsv nebo souboru .blg, který jste exportovali pomocí rutiny Export-Counter. V každém příkazu můžete zadat pouze jeden soubor .csv nebo .tsv, ale v každém příkazu můžete zadat více souborů .blg (až 32). Řetězce cest k souboru (v uvozovkách) můžete také převést na importu čítače .
Typ: | String[] |
Aliasy: | PSPath |
Position: | 0 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | True |
-StartTime
Určuje počáteční datum a čas, kdy tato rutina získá data čítače. Zadejte objekt DateTime, například objekt vytvořený rutinou Get-Date. Ve výchozím nastavení Import-Counter importuje všechna data čítačů v souborech určených parametrem Path.
Typ: | DateTime |
Position: | Named |
Default value: | No start time |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Summary
Označuje, že tato rutina získá souhrn importovaných dat místo získání jednotlivých vzorků dat čítačů.
Typ: | SwitchParameter |
Position: | Named |
Default value: | False |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
Vstupy
K této rutině můžete připojit cesty protokolu čítače výkonu.
Výstupy
Microsoft.PowerShell.Commands.GetCounter.PerformanceCounterSampleSet, Microsoft.PowerShell.Commands.GetCounter.CounterSet, Microsoft.PowerShell.Commands.GetCounter.CounterFileInfo
Tato rutina vrátí Microsoft.PowerShell.Commands.GetCounter.PerformanceCounterSampleSet. Pokud použijete parametr ListSet, vrátí tato rutina objekt Microsoft.PowerShell.Commands.GetCounter.CounterSet objektu. Pokud použijete parametr Summary, vrátí tato rutina objekt Microsoft.PowerShell.Commands.GetCounter.CounterFileInfo objektu.
Poznámky
- Tato rutina nemá parametr ComputerName. Pokud je však počítač nakonfigurovaný pro vzdálenou vzdálenou komunikace prostředí Windows PowerShell, můžete pomocí rutiny Invoke-Command spustit příkaz Import-Counter na vzdáleném počítači.