Import-Counter
성능 카운터 로그 파일을 가져오고 로그의 각 카운터 샘플을 나타내는 개체를 만듭니다.
구문
GetCounterSet (기본값)
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은 성능 카운터 로그 파일에서 성능 카운터 데이터를 가져오고 파일의 각 카운터 샘플에 대한 개체를 만듭니다.
PerformanceCounterSampleSet 개체는 성능 카운터 데이터를 수집할 때 Get-Counter 반환하는 개체와 동일합니다.
쉼표로 구분된 값(.csv), 탭으로 구분된 값(.tsv) 및 이진 성능 로그(.blg) 성능 로그 파일에서 데이터를 가져올 수 있습니다.
.blg 파일을 사용하는 경우 각 명령에서 최대 32개의 파일을 가져올 수 있습니다.
Import-Counter 매개 변수를 사용하여 가져오는 데이터를 필터링할 수 있습니다.
이 기능을 사용하면 Get-Counter 및 Export-Counter cmdlet과 함께 Windows PowerShell 내에서 성능 카운터 데이터를 수집, 내보내기, 가져오기, 결합, 필터링, 조작 및 다시 내보낼 수 있습니다.
예제
예제 1: 파일에서 모든 카운터 데이터 가져오기
$data = Import-Counter -Path ProcessorData.csv
이 명령은 ProcessorData.csv 파일의 모든 카운터 데이터를 $data 변수로 가져옵니다.
예제 2: 파일에서 특정 카운터 데이터 가져오기
$i = Import-Counter -Path "ProcessorData.blg" -Counter "\\SERVER01\Processor(_Total)\Interrupts/sec"
이 명령은 파일의 ProcessorData.blg 카운터 데이터만 $i 변수로 가져옵니다.
예제 3: 성능 카운터에서 데이터를 선택한 다음 파일로 내보냅니다.
이 예제에서는 성능 카운터 로그 파일(.blg)에서 데이터를 선택한 다음 선택한 데이터를 .csv 파일로 내보내는 방법을 보여 줍니다. 처음 네 명령은 파일에서 카운터 경로를 가져와서 $data변수에 저장합니다. 마지막 두 명령은 선택한 데이터를 가져온 다음 선택한 데이터만 내보냅니다.
$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
첫 번째 명령은 Import-Counter 사용하여 ProcessorData.blg 파일에서 모든 성능 카운터 데이터를 가져옵니다. 이 명령은 데이터를 $data 변수에 저장합니다.
두 번째 명령은 $data 변수에 카운터 경로를 표시합니다. 명령 출력에 표시된 표시를 가져오기 위해 이 예제에서는 Format-Table cmdlet을 사용하여 $data 변수에서 첫 번째 카운터의 카운터 경로를 테이블 형식으로 지정합니다.
세 번째 명령은 Interrupts/sec 끝나는 카운터 경로를 가져오고 $intCtrs 변수에 경로를 저장합니다.
Where-Object cmdlet을 사용하여 카운터 경로와 ForEach-Object cmdlet을 필터링하여 선택한 각 경로 개체의 Path 속성 값만 가져옵니다.
네 번째 명령은 선택한 카운터 경로를 $intCtrs 변수에 표시합니다.
다섯 번째 명령은 Import-Counter cmdlet을 사용하여 데이터를 가져옵니다.
$intCtrs 변수를 Counter 매개 변수의 값으로 사용하여 $intCtrs카운터 경로에 대한 데이터만 가져옵니다.
여섯 번째 명령은 Export-Counter cmdlet을 사용하여 데이터를 Interrupts.csv 파일로 내보냅니다.
예제 4: 가져온 카운터 집합 그룹에 모든 카운터 경로 표시
이 예제에서는 가져온 카운터 집합 그룹의 모든 카운터 경로를 표시하는 방법을 보여 줍니다.
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
첫 번째 명령은 cmdlet의 Import-Counter 매개 변수를 사용하여 카운터 데이터 파일에 표시되는 모든 카운터 집합을 가져옵니다.
두 번째 명령은 목록 집합에서 모든 카운터 경로를 가져옵니다.
예제 5: 다양한 타임스탬프에서 카운터 데이터 가져오기
이 예제에서는 명령에 지정된 끝 범위 시작 사이에 타임스탬프가 있는 카운터 데이터만 가져옵니다.
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
첫 번째 명령은 테이블의 ProcessorData.blg 파일에 있는 모든 데이터의 타임스탬프를 나열합니다.
두 번째 명령은 $start 및 $end 변수에 특정 타임스탬프를 저장합니다. 문자열은 DateTime 개체로 캐스팅됩니다.
세 번째 명령은 Import-Counter cmdlet을 사용하여 시작 시간과 종료 시간(포함) 사이에 타임스탬프가 있는 카운터 데이터만 가져옵니다. 이 명령은 StartTime 및 Import-Counter 매개 변수를 사용하여 범위를 지정합니다.
예제 6: 성능 카운터 로그 파일에서 지정된 수의 가장 오래된 샘플 가져오기
이 예제에서는 성능 카운터 로그 파일에서 가장 오래된 샘플 5개와 최신 샘플 5개를 가져오는 방법을 보여 줍니다.
Import-Counter -Path "Disk.blg" -MaxSamples 5
(Import-Counter -Path Disk.blg)[-1 .. -5]
첫 번째 명령은 Import-Counter cmdlet을 사용하여 Disk.blg 파일에서 첫 번째(가장 오래된) 5개의 샘플을 가져옵니다. 이 명령은 MaxSamples 매개 변수를 사용하여 가져오기를 5개의 카운터 샘플로 제한합니다.
두 번째 명령은 배열 표기법과 Windows PowerShell 범위 연산자(..)를 사용하여 파일에서 마지막 5개의 카운터 샘플을 가져옵니다. 다음은 5가지 최신 샘플입니다.
예제 7: 파일에서 카운터 데이터 요약 가져오기
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
이 명령은 cmdlet의 Import-Counter 매개 변수를 사용하여 Memory.blg 파일의 카운터 데이터에 대한 요약을 가져옵니다.
예제 8: 성능 카운터 로그 파일 업데이트
이 예제에서는 성능 카운터 로그 파일을 업데이트합니다.
$counters = Import-Counter OldData.blg -ListSet * | ForEach-Object {$_.PathsWithInstances}
Get-Counter -Counter $Counters -MaxSamples 20 | Export-Counter C:\Logs\NewData.blg
첫 번째 명령은 Import-Counter 매개 변수를 사용하여 기존 카운터 로그 파일인 OldData.blg카운터를 가져옵니다. 이 명령은 파이프라인 연산자(|)를 사용하여 각 개체의 ForEach-Object 속성 값만 가져오는 명령에 데이터를 보냅니다.
두 번째 명령은 $counters 변수의 카운터에 대한 업데이트된 데이터를 가져옵니다.
Get-Counter cmdlet을 사용하여 현재 샘플을 가져오고 결과를 NewData.blg 파일로 내보냅니다.
예제 9: 여러 파일에서 성능 로그 데이터를 가져온 다음 저장
$counters = "D:\test\pdata.blg", "D:\samples\netlog.blg" | Import-Counter
이 명령은 두 로그에서 성능 로그 데이터를 가져오고 데이터를 $counters 변수에 저장합니다. 이 명령은 파이프라인 연산자를 사용하여 지정된 경로에서 데이터를 가져오는 Import-Counter로 성능 로그 경로를 보냅니다.
각 경로는 따옴표로 묶이고 경로는 쉼표로 서로 구분됩니다.
매개 변수
-Counter
문자열 배열로 성능 카운터를 지정합니다. 기본적으로 Import-Counter 입력 파일의 모든 카운터에서 모든 데이터를 가져옵니다. 하나 이상의 카운터 경로를 입력합니다. 와일드카드는 경로의 인스턴스 부분에서 허용됩니다.
각 카운터 경로의 형식은 다음과 같습니다. 경로에 ComputerName 값이 필요합니다. 예를 들면 다음과 같습니다.
\\<ComputerName>\<CounterSet>(<Instance>)\<CounterName>
다음은 그 예입니다.
\\Server01\Processor(2)\% User Time\\Server01\Processor(*)\% Processor Time
매개 변수 속성
| 형식: | String[] |
| Default value: | All counter |
| 와일드카드 지원: | True |
| DontShow: | False |
매개 변수 집합
GetCounterSet
| Position: | Named |
| 필수: | False |
| 파이프라인의 값: | False |
| 속성 이름별 파이프라인의 값: | False |
| 나머지 인수의 값: | False |
-EndTime
이 cmdlet이 StartTime 및 이 매개 변수 타임스탬프 간에 카운터 데이터를 가져오는 종료 날짜 및 시간을 지정합니다.
cmdlet에서 만든 개체와 같은 Get-Date 개체를 입력합니다. 기본적으로 Import-CounterPath 매개 변수로 지정된 파일의 모든 카운터 데이터를 가져옵니다.
매개 변수 속성
| 형식: | DateTime |
| Default value: | No end time |
| 와일드카드 지원: | False |
| DontShow: | False |
매개 변수 집합
GetCounterSet
| Position: | Named |
| 필수: | False |
| 파이프라인의 값: | False |
| 속성 이름별 파이프라인의 값: | False |
| 나머지 인수의 값: | False |
-ListSet
내보낸 파일에 표시되는 성능 카운터 집합을 지정합니다. 이 매개 변수를 사용하는 명령은 데이터를 가져오지 않습니다.
하나 이상의 카운터 집합 이름을 입력합니다. 와일드카드가 허용됩니다. 파일의 모든 카운터 집합을 얻으려면 Import-Counter -ListSet *입력합니다.
매개 변수 속성
| 형식: | String[] |
| Default value: | None |
| 와일드카드 지원: | True |
| DontShow: | False |
매개 변수 집합
ListSetSet
| Position: | Named |
| 필수: | True |
| 파이프라인의 값: | False |
| 속성 이름별 파이프라인의 값: | False |
| 나머지 인수의 값: | False |
-MaxSamples
가져올 각 카운터의 최대 샘플 수를 지정합니다. 기본적으로 Get-CounterPath 매개 변수로 지정된 파일의 모든 데이터를 가져옵니다.
매개 변수 속성
| 형식: | Int64 |
| Default value: | No maximum |
| 와일드카드 지원: | False |
| DontShow: | False |
매개 변수 집합
GetCounterSet
| Position: | Named |
| 필수: | False |
| 파이프라인의 값: | False |
| 속성 이름별 파이프라인의 값: | False |
| 나머지 인수의 값: | False |
-Path
가져올 파일의 파일 경로를 지정합니다. 이 매개 변수는 필수입니다.
.csv cmdlet을 사용하여 내보낸 .tsv, .blg또는 Export-Counter 파일의 경로 및 파일 이름을 입력합니다.
.csv 또는 .tsv 파일 하나만 지정할 수 있지만 각 명령에서 여러 .blg 파일(최대 32개)을 지정할 수 있습니다. 파일 경로 문자열(따옴표)을 Import-Counter파이프할 수도 있습니다.
매개 변수 속성
| 형식: | String[] |
| Default value: | None |
| 와일드카드 지원: | True |
| DontShow: | False |
| 별칭: | PSPath |
매개 변수 집합
(All)
| Position: | 1 |
| 필수: | True |
| 파이프라인의 값: | True |
| 속성 이름별 파이프라인의 값: | True |
| 나머지 인수의 값: | False |
-StartTime
이 cmdlet이 카운터 데이터를 가져오는 시작 날짜 및 시간을 지정합니다.
cmdlet에서 만든 개체와 같은 Get-Date 개체를 입력합니다. 기본적으로 Import-CounterPath 매개 변수로 지정된 파일의 모든 카운터 데이터를 가져옵니다.
매개 변수 속성
| 형식: | DateTime |
| Default value: | No start time |
| 와일드카드 지원: | False |
| DontShow: | False |
매개 변수 집합
GetCounterSet
| Position: | Named |
| 필수: | False |
| 파이프라인의 값: | False |
| 속성 이름별 파이프라인의 값: | False |
| 나머지 인수의 값: | False |
-Summary
이 cmdlet은 개별 카운터 데이터 샘플을 가져오는 대신 가져온 데이터의 요약을 가져옵니다.
매개 변수 속성
| 형식: | SwitchParameter |
| Default value: | False |
| 와일드카드 지원: | False |
| DontShow: | False |
매개 변수 집합
SummarySet
| Position: | Named |
| 필수: | False |
| 파이프라인의 값: | False |
| 속성 이름별 파이프라인의 값: | False |
| 나머지 인수의 값: | False |
CommonParameters
이 cmdlet은 일반적인 매개 변수인 -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction 및 -WarningVariable 매개 변수를 지원합니다. 자세한 내용은 about_CommonParameters를 참조하세요.
입력
String
성능 카운터 로그 경로를 이 cmdlet으로 파이프할 수 있습니다.
출력
Microsoft.PowerShell.Commands.GetCounter.PerformanceCounterSampleSet, Microsoft.PowerShell.Commands.GetCounter.CounterSet, Microsoft.PowerShell.Commands.GetCounter.CounterFileInfo
이 cmdlet은 Microsoft.PowerShell.Commands.GetCounter.PerformanceCounterSampleSet
참고
- 이 cmdlet에는 ComputerName 매개 변수가 없습니다. 그러나 컴퓨터가 Windows PowerShell 원격에 대해 구성된 경우
Invoke-Commandcmdlet을 사용하여 원격 컴퓨터에서Import-Counter명령을 실행할 수 있습니다.