Bagikan melalui


Import-Counter

Mengimpor file log penghitung kinerja dan membuat objek yang mewakili setiap sampel penghitung dalam log.

Sintaks

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>]

Deskripsi

Import-Counter Cmdlet mengimpor data penghitung kinerja dari file log penghitung kinerja dan membuat objek untuk setiap sampel penghitung dalam file. Objek PerformanceCounterSampleSet yang dibuatnya identik dengan objek yang Get-Counter kembali saat mengumpulkan data penghitung kinerja.

Anda dapat mengimpor data dari nilai yang dipisahkan koma (.csv), nilai yang dipisahkan tab (.tsv), dan file log performa () performa.blg biner. Jika Anda menggunakan .blg file, Anda dapat mengimpor hingga 32 file di setiap perintah. Anda dapat menggunakan parameter Import-Counter untuk memfilter data yang Anda impor.

Bersama dengan Get-Counter cmdlet dan Export-Counter , fitur ini memungkinkan Anda mengumpulkan, mengekspor, mengimpor, menggabungkan, memfilter, memanipulasi, dan mengekspor ulang data penghitung kinerja dalam Windows PowerShell.

Contoh

Contoh 1: Mengimpor semua data penghitung dari file

$data = Import-Counter -Path ProcessorData.csv

Perintah ini mengimpor semua data penghitung ProcessorData.csv dari file ke $data dalam variabel.

Contoh 2: Mengimpor data penghitung tertentu dari file

$i = Import-Counter -Path "ProcessorData.blg" -Counter "\\SERVER01\Processor(_Total)\Interrupts/sec"

Perintah ini hanya mengimpor data penghitung "Processor(_total)\Interrupts/dtk" dari ProcessorData.blg file ke $i dalam variabel.

Contoh 3: Pilih data dari penghitung kinerja lalu ekspor ke file

Contoh ini menunjukkan cara memilih data dari file log penghitung kinerja (.blg) lalu mengekspor data yang dipilih ke .csv file. Empat perintah pertama mendapatkan jalur penghitung dari file dan menyimpannya dalam variabel bernama $data. Dua perintah terakhir mengimpor data yang dipilih lalu hanya mengekspor data yang dipilih.

$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

Perintah pertama menggunakan Import-Counter untuk mengimpor semua data penghitung kinerja dari ProcessorData.blg file. Perintah menyimpan data dalam $data variabel.

Perintah kedua menampilkan jalur penghitung dalam $data variabel. Untuk mendapatkan tampilan yang ditampilkan dalam output perintah, contoh menggunakan Format-Table cmdlet untuk memformat sebagai tabel jalur penghitung penghitung pertama dalam $data variabel.

Perintah ketiga mendapatkan jalur penghitung yang berakhiran Interrupts/sec dan menyimpan jalur dalam $intCtrs variabel. Ini menggunakan Where-Object cmdlet untuk memfilter jalur penghitung dan ForEach-Object cmdlet untuk mendapatkan hanya nilai properti Jalur dari setiap objek jalur yang dipilih.

Perintah keempat menampilkan jalur penghitung yang dipilih dalam $intCtrs variabel.

Perintah kelima menggunakan Import-Counter cmdlet untuk mengimpor data. Ini menggunakan $intCtrs variabel sebagai nilai parameter Penghitung untuk mengimpor hanya data untuk jalur penghitung di $intCtrs.

Perintah keenam menggunakan Export-Counter cmdlet untuk mengekspor data ke Interrupts.csv file.

Contoh 4: Menampilkan semua jalur penghitung dalam sekelompok set penghitung yang diimpor

Contoh ini menunjukkan cara menampilkan semua jalur penghitung dalam sekelompok set penghitung yang diimpor.

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

Perintah pertama menggunakan parameter ListSet cmdlet Import-Counter untuk mendapatkan semua set penghitung yang diwakili dalam file data penghitung.

Perintah kedua mendapatkan semua jalur penghitung dari kumpulan daftar.

Contoh 5: Mengimpor data penghitung dari berbagai tanda waktu

Contoh ini hanya mengimpor data penghitung yang memiliki tanda waktu antara rentang akhir awal yang ditentukan dalam perintah.

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

Perintah pertama mencantumkan dalam tabel tanda waktu semua data dalam ProcessorData.blg file.

Perintah kedua menyimpan tanda waktu tertentu dalam $start variabel dan $end . String dilemparkan ke objek DateTime .

Perintah ketiga menggunakan Import-Counter cmdlet untuk hanya mendapatkan data penghitung yang memiliki stempel waktu antara waktu mulai dan akhir (inklusif). Perintah menggunakan parameter StartTime dan EndTime untuk Import-Counter menentukan rentang.

Contoh 6: Mengimpor jumlah sampel terlama yang ditentukan dari file log penghitung kinerja

Contoh ini menunjukkan cara mengimpor lima sampel terlama dan lima terbaru dari file log penghitung kinerja.

Import-Counter -Path "Disk.blg" -MaxSamples 5
(Import-Counter -Path Disk.blg)[-1 .. -5]

Perintah pertama menggunakan Import-Counter cmdlet untuk mengimpor lima sampel pertama (terlama) dari Disk.blg file. Perintah menggunakan parameter MaxSamples untuk membatasi impor hingga lima sampel penghitung.

Perintah kedua menggunakan notasi array dan operator rentang Windows PowerShell (..) untuk mendapatkan lima sampel penghitung terakhir dari file. Ini adalah lima sampel terbaru.

Contoh 7: Mendapatkan ringkasan data penghitung dari file

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

Perintah ini menggunakan parameter Import-Counter Ringkasan cmdlet untuk mendapatkan ringkasan data penghitung dalam Memory.blg file.

Contoh 8: Memperbarui file log penghitung kinerja

Contoh ini memperbarui file log penghitung kinerja.

$counters = Import-Counter OldData.blg -ListSet * | ForEach-Object {$_.PathsWithInstances}
Get-Counter -Counter $Counters -MaxSamples 20 | Export-Counter C:\Logs\NewData.blg

Perintah pertama menggunakan parameter ListSet untuk mendapatkan penghitung dalam OldData.blg, file log penghitung Import-Counter yang ada. Perintah menggunakan operator alur (|) untuk mengirim data ke ForEach-Object perintah yang hanya mendapatkan nilai properti PathsWithInstances dari setiap objek

Perintah kedua mendapatkan data yang diperbarui untuk penghitung dalam $counters variabel. Ini menggunakan Get-Counter cmdlet untuk mendapatkan sampel saat ini, lalu mengekspor hasilnya ke NewData.blg file.

Contoh 9: Mengimpor data log performa dari beberapa file lalu menyimpannya

$counters = "D:\test\pdata.blg", "D:\samples\netlog.blg" | Import-Counter

Perintah ini mengimpor data log performa dari dua log dan menyimpan data dalam $counters variabel. Perintah menggunakan operator alur untuk mengirim jalur log performa ke Penghitung Impor, yang mengimpor data dari jalur yang ditentukan.

Perhatikan bahwa setiap jalur diapit dalam tanda kutip dan bahwa jalur dipisahkan satu sama lain oleh koma.

Parameter

-Counter

Menentukan, sebagai array string, penghitung kinerja. Secara default, Import-Counter mengimpor semua data dari semua penghitung dalam file input. Masukkan satu atau beberapa jalur penghitung. Kartubebas diizinkan di bagian Instans dari jalur.

Setiap jalur penghitung memiliki format berikut. Nilai ComputerName diperlukan di jalur . Contohnya:

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

Contohnya:

  • \\Server01\Processor(2)\% User Time
  • \\Server01\Processor(*)\% Processor Time
Type:String[]
Position:Named
Default value:All counter
Required:False
Accept pipeline input:False
Accept wildcard characters:True

-EndTime

Menentukan tanggal dan waktu akhir cmdlet ini mengimpor data penghitung antara StartTime dan tanda waktu parameter ini. Masukkan objek DateTime , seperti yang dibuat oleh Get-Date cmdlet. Secara default, Import-Counter mengimpor semua data penghitung dalam file yang ditentukan oleh parameter Jalur .

Type:DateTime
Position:Named
Default value:No end time
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ListSet

Menentukan set penghitung kinerja yang diwakili dalam file yang diekspor. Perintah dengan parameter ini tidak mengimpor data apa pun.

Masukkan satu atau beberapa nama set penghitung. Kartubebas diizinkan. Untuk mendapatkan semua set penghitung dalam file, ketik Import-Counter -ListSet *.

Type:String[]
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:True

-MaxSamples

Menentukan jumlah maksimum sampel setiap penghitung yang akan diimpor. Secara default, Get-Counter mengimpor semua data dalam file yang ditentukan oleh parameter Jalur .

Type:Int64
Position:Named
Default value:No maximum
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Path

Menentukan jalur file dari file yang akan diimpor. Parameter ini diperlukan.

Masukkan jalur dan nama file file, .csv, , .tsvatau .blg yang Anda ekspor dengan menggunakan Export-Counter cmdlet. Anda hanya dapat menentukan satu .csv atau .tsv file, tetapi Anda dapat menentukan beberapa .blg file (hingga 32) di setiap perintah. Anda juga dapat menyalurkan string jalur file (dalam tanda kutip) ke Import-Counter.

Type:String[]
Aliases:PSPath
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:True

-StartTime

Menentukan tanggal dan waktu mulai di mana cmdlet ini mendapatkan data penghitung. Masukkan objek DateTime , seperti yang dibuat oleh Get-Date cmdlet. Secara default, Import-Counter mengimpor semua data penghitung dalam file yang ditentukan oleh parameter Jalur .

Type:DateTime
Position:Named
Default value:No start time
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Summary

Menunjukkan bahwa cmdlet ini mendapatkan ringkasan data yang diimpor, alih-alih mendapatkan sampel data penghitung individu.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

Input

String

Anda dapat menyalurkan jalur log penghitung kinerja ke cmdlet ini.

Output

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

Cmdlet ini mengembalikan Microsoft.PowerShell.Commands.GetCounter.PerformanceCounterSampleSet. Jika Anda menggunakan parameter ListSet , cmdlet ini mengembalikan objek Microsoft.PowerShell.Commands.GetCounter.CounterSet . Jika Anda menggunakan parameter Ringkasan , cmdlet ini mengembalikan objek Microsoft.PowerShell.Commands.GetCounter.CounterFileInfo .

Catatan

  • Cmdlet ini tidak memiliki parameter ComputerName . Namun, jika komputer dikonfigurasi untuk jarak jauh Windows PowerShell, Anda dapat menggunakan Invoke-Command cmdlet untuk menjalankan Import-Counter perintah di komputer jarak jauh.