Import-Counter

Performans sayacı günlük dosyalarını içeri aktarır ve günlükteki her sayaç örneğini temsil eden nesneleri oluşturur.

Syntax

GetCounterSet (Varsayılan)

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

Import-Counter cmdlet'i performans sayacı günlük dosyalarından performans sayacı verilerini içeri aktarır ve dosyadaki her sayaç örneği için nesneler oluşturur. PerformanceCounterSampleSet oluşturduğu nesneler, performans sayacı verilerini topladığında Get-Counter döndüren nesnelerle aynıdır.

Virgülle ayrılmış değer (.csv), sekmeyle ayrılmış değer (.tsv) ve ikili performans günlüğü (.blg) performans günlüğü dosyalarından verileri içeri aktarabilirsiniz. .blg dosyaları kullanıyorsanız, her komutta en fazla 32 dosya içeri aktarabilirsiniz. İçeri aktardığınız verileri filtrelemek için Import-Counter parametrelerini kullanabilirsiniz.

bu özellik, Get-Counter ve Export-Counter cmdlet'lerinin yanı sıra Windows PowerShell'de performans sayacı verilerini toplamanıza, dışarı aktarmanıza, içeri aktarmanıza, birleştirmenize, filtrelemenize, işlemenize ve yeniden dışarı aktarmanıza olanak tanır.

Örnekler

Örnek 1: Bir dosyadan tüm sayaç verilerini içeri aktarma

$data = Import-Counter -Path ProcessorData.csv

Bu komut, ProcessorData.csv dosyasındaki tüm sayaç verilerini $data değişkenine aktarır.

Örnek 2: Bir dosyadan belirli sayaç verilerini içeri aktarma

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

Bu komut, dosyasından ProcessorData.blg sayaç verilerini $i değişkenine aktarır.

Örnek 3: Performans sayacından veri seçip bir dosyaya aktarın

Bu örnekte, performans sayacı günlük dosyasından (.blg) veri seçme ve ardından seçili verileri .csv dosyasına dışarı aktarma işlemi gösterilmektedir. İlk dört komut dosyasından sayaç yollarını alır ve $dataadlı değişkene kaydeder. Son iki komut seçili verileri içeri aktarır ve ardından yalnızca seçili verileri dışarı aktarır.

$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

İlk komut, Import-Counter dosyalarından tüm performans sayacı verilerini içeri aktarmak için ProcessorData.blg kullanır. komutu verileri $data değişkenine kaydeder.

İkinci komut, $data değişkenindeki sayaç yollarını görüntüler. Komut çıkışında gösterilen görüntüyü almak için örnek, Format-Table cmdlet'ini kullanarak $data değişkenindeki ilk sayacın sayaç yollarını tablo olarak biçimlendirmektedir.

Üçüncü komut, Interrupts/sec ile biten sayaç yollarını alır ve yolları $intCtrs değişkenine kaydeder. Sayaç yollarını filtrelemek için Where-Object cmdlet'ini ve seçilen her yol nesnesinin yalnızca ForEach-Object özelliğinin değerini almak için cmdlet'ini kullanır.

Dördüncü komut, $intCtrs değişkeninde seçili sayaç yollarını görüntüler.

Beşinci komut, verileri içeri aktarmak için Import-Counter cmdlet'ini kullanır. $intCtrs parametresinin değeri olarak değişkenini kullanarak yalnızca $intCtrs'daki sayaç yollarına ait verileri içeri aktarır.

Altıncı komut, verileri Export-Counter dosyasına aktarmak için Interrupts.csv cmdlet'ini kullanır.

Örnek 4: İçeri aktarılan sayaç kümeleri grubundaki tüm sayaç yollarını görüntüleme

Bu örnekte, içeri aktarılan sayaç kümeleri grubundaki tüm sayaç yollarının nasıl görüntüleneceği gösterilmektedir.

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

İlk komut, bir sayaç veri dosyasında temsil edilen tüm sayaç kümelerini almak için cmdlet'in Import-Counter parametresini kullanır.

İkinci komut, liste kümesindeki tüm sayaç yollarını alır.

Örnek 5: Zaman damgaları aralığından sayaç verilerini içeri aktarma

Bu örnek yalnızca komutunda belirtilen bitiş aralıkları arasında zaman damgası olan sayaç verilerini içeri aktarır.

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

İlk komut, ProcessorData.blg dosyasındaki tüm verilerin zaman damgalarını bir tabloda listeler.

İkinci komut, $start ve $end değişkenlerine belirli zaman damgalarını kaydeder. Dizeler DateTime nesnelerine atılır.

Üçüncü komut, yalnızca başlangıç ve bitiş saatleri (dahil) arasında zaman damgası olan sayaç verilerini almak için Import-Counter cmdlet'ini kullanır. Komut, aralığı belirtmek için starttime ve EndTime parametrelerini Import-Counter kullanır.

Örnek 6: Performans sayacı günlük dosyasından belirtilen sayıda en eski örneği içeri aktarma

Bu örnekte, bir performans sayacı günlük dosyasından en eski beş ve en yeni beş örneğin nasıl içeri aktarılacağını gösterilmektedir.

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

İlk komut, Import-Counter dosyasından ilk (en eski) beş örneği içeri aktarmak için Disk.blg cmdlet'ini kullanır. komut, içeri aktarmayı beş sayaç örneğiyle sınırlamak için MaxSamples parametresini kullanır.

İkinci komut, dosyadan son beş sayaç örneğini almak için dizi gösterimini ve Windows PowerShell aralık işlecini (..) kullanır. Bunlar en yeni beş örnektir.

Örnek 7: Bir dosyadan sayaç verilerinin özetini alma

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

Bu komut, dosyasındaki sayaç verilerinin özetini almak için Import-Counter cmdlet'in Memory.blg parametresini kullanır.

Örnek 8: Performans sayacı günlük dosyasını güncelleştirme

Bu örnek bir performans sayacı günlük dosyasını güncelleştirir.

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

İlk komut, Import-Counter parametresini kullanarak sayaçları mevcut bir sayaç günlük dosyası olan OldData.blgalır. komut, verileri yalnızca her nesnenin | özelliğinin değerlerini alan bir ForEach-Object komutuna göndermek için bir işlem hattı işleci () kullanır

İkinci komut, $counters değişkenindeki sayaçlar için güncelleştirilmiş verileri alır. Geçerli bir örneği almak ve ardından sonuçları Get-Counter dosyasına aktarmak için NewData.blg cmdlet'ini kullanır.

Örnek 9: Performans günlüğü verilerini birden çok dosyadan içeri aktarın ve sonra kaydedin

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

Bu komut, performans günlüğü verilerini iki günlükten içeri aktarır ve verileri $counters değişkenine kaydeder. komut, performans günlüğü yollarını belirtilen yollardan içeri aktaran Import-Counter'a göndermek için bir işlem hattı işleci kullanır.

Her yolun tırnak içine alındığını ve yolların birbirinden virgülle ayrıldığına dikkat edin.

Parametreler

-Counter

Performans sayaçlarını dize dizisi olarak belirtir. Varsayılan olarak, Import-Counter giriş dosyalarındaki tüm sayaçlardaki tüm verileri içeri aktarır. Bir veya daha fazla sayaç yolu girin. Yolun Örnek bölümünde joker karakterlere izin verilir.

Her sayaç yolu aşağıdaki biçime sahiptir. ComputerName değeri yolda gereklidir. Örneğin:

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

Örneğin:

  • \\Server01\Processor(2)\% User Time
  • \\Server01\Processor(*)\% Processor Time

Parametre özellikleri

Tür:

String[]

Default value:All counter
Joker karakterleri destekler:True
DontShow:False

Parametre kümeleri

GetCounterSet
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-EndTime

Bu cmdlet'in StartTime ile bu parametre zaman damgaları arasında sayaç verilerini içeri aktardığını bir bitiş tarihi ve saati belirtir. cmdlet'i tarafından oluşturulan bir tane gibi bir Get-Date nesnesi girin. varsayılan olarak, Import-CounterPath parametresi tarafından belirtilen dosyalardaki tüm sayaç verilerini içeri aktarır.

Parametre özellikleri

Tür:DateTime
Default value:No end time
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

GetCounterSet
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-ListSet

Dışarı aktarılan dosyalarda temsil edilen performans sayacı kümelerini belirtir. Bu parametreye sahip komutlar veri içeri aktarmaz.

Bir veya daha fazla sayaç kümesi adı girin. Joker karakterlere izin verilir. Dosyadaki tüm sayaç kümelerini almak için Import-Counter -ListSet *yazın.

Parametre özellikleri

Tür:

String[]

Default value:None
Joker karakterleri destekler:True
DontShow:False

Parametre kümeleri

ListSetSet
Position:Named
Zorunlu:True
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-MaxSamples

İçeri aktaracak her sayacın en fazla örnek sayısını belirtir. varsayılan olarak, Get-CounterPath parametresi tarafından belirtilen dosyalardaki tüm verileri içeri aktarır.

Parametre özellikleri

Tür:Int64
Default value:No maximum
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

GetCounterSet
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-Path

İçeri aktarılacak dosyaların dosya yollarını belirtir. Bu parametre gereklidir.

.csv cmdlet'ini kullanarak dışarı aktardığınız bir, .tsv, .blgveya Export-Counter dosyasının yolunu ve dosya adını girin. Yalnızca bir .csv veya .tsv dosyası belirtebilirsiniz, ancak her komutta birden çok .blg dosyası (en fazla 32) belirtebilirsiniz. Dosya yolu dizelerini (tırnak işaretleri içinde) Import-Counterde ekleyebilirsiniz.

Parametre özellikleri

Tür:

String[]

Default value:None
Joker karakterleri destekler:True
DontShow:False
Diğer adlar:PSPath

Parametre kümeleri

(All)
Position:1
Zorunlu:True
İşlem hattından gelen değer:True
Özellik adına göre işlem hattından gelen değer:True
Kalan bağımsız değişkenlerden elde edilen değer:False

-StartTime

Bu cmdlet'in sayaç verilerini aldığı başlangıç tarihini ve saatini belirtir. cmdlet'i tarafından oluşturulan bir tane gibi bir Get-Date nesnesi girin. varsayılan olarak, Import-CounterPath parametresi tarafından belirtilen dosyalardaki tüm sayaç verilerini içeri aktarır.

Parametre özellikleri

Tür:DateTime
Default value:No start time
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

GetCounterSet
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

-Summary

Bu cmdlet'in tek tek sayaç verileri örnekleri almak yerine içeri aktarılan verilerin özetini aldığını gösterir.

Parametre özellikleri

Tür:SwitchParameter
Default value:False
Joker karakterleri destekler:False
DontShow:False

Parametre kümeleri

SummarySet
Position:Named
Zorunlu:False
İşlem hattından gelen değer:False
Özellik adına göre işlem hattından gelen değer:False
Kalan bağımsız değişkenlerden elde edilen değer:False

CommonParameters

Bu cmdlet yaygın parametreleri destekler: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction ve -WarningVariable. Daha fazla bilgi için bkz. about_CommonParameters.

Girişler

String

Performans sayacı günlük yollarını bu cmdlet'e yöneltebilirsiniz.

Çıkışlar

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

Bu cmdlet, Microsoft.PowerShell.Commands.GetCounter.PerformanceCounterSampleSetdöndürür. ListSet parametresini kullanırsanız, bu cmdlet Microsoft.PowerShell.Commands.GetCounter.CounterSet nesnesini döndürür. Özeti parametresini kullanırsanız, bu cmdlet bir Microsoft.PowerShell.Commands.GetCounter.CounterFileInfo nesnesi döndürür.

Notlar

  • Bu cmdlet'in ComputerName parametresi yok. Ancak, bilgisayar Windows PowerShell uzaktan iletişim için yapılandırılmışsa, uzak bir bilgisayarda Invoke-Command komutu çalıştırmak için Import-Counter cmdlet'ini kullanabilirsiniz.