다음을 통해 공유


Set-TraceSource

PowerShell 구성 요소의 추적을 구성, 시작 및 중지합니다.

구문

Set-TraceSource
   [-Name] <String[]>
   [[-Option] <PSTraceSourceOptions>]
   [-ListenerOption <TraceOptions>]
   [-FilePath <String>]
   [-Force]
   [-Debugger]
   [-PSHost]
   [-PassThru]
   [<CommonParameters>]
Set-TraceSource
   [-Name] <String[]>
   [-RemoveListener <String[]>]
   [<CommonParameters>]
Set-TraceSource
   [-Name] <String[]>
   [-RemoveFileListener <String[]>]
   [<CommonParameters>]

Description

cmdlet은 Set-TraceSource PowerShell 구성 요소의 추적을 구성, 시작 및 중지합니다. 이를 사용하여 추적할 구성 요소와 추적 출력이 전송되는 위치를 지정할 수 있습니다.

예제

예제 1: ParameterBinding 구성 요소 추적

Set-TraceSource -Name "ParameterBinding" -Option ExecutionFlow -PSHost -ListenerOption "ProcessId,TimeStamp"

이 명령은 PowerShell의 ParameterBinding 구성 요소에 대한 추적을 시작합니다. Name 매개 변수를 사용하여 추적 원본을 지정하고, Option 매개 변수를 사용하여 추적 이벤트를 선택하고ExecutionFlow, PSHost 매개 변수를 사용하여 출력을 콘솔로 보내는 PowerShell 호스트 수신기를 선택합니다. ListenerOption 매개 변수는 추적 메시지 접두사에 값과 TimeStamp 값을 추가 ProcessID 합니다.

예제 2: 추적 중지

Set-TraceSource -Name "ParameterBinding" -RemoveListener "Host"

이 명령은 PowerShell의 ParameterBinding 구성 요소 추적을 중지합니다. Name 매개 변수를 사용하여 추적 중인 구성 요소를 식별하고 RemoveListener 매개 변수를 사용하여 추적 수신기를 식별합니다.

매개 변수

-Debugger

cmdlet이 추적 출력을 디버거로 보내도록 나타냅니다. 모든 사용자 모드 또는 커널 모드 디버거 또는 Microsoft Visual Studio에서 출력을 볼 수 있습니다. 이 매개 변수는 기본 추적 수신기도 선택합니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-FilePath

이 cmdlet이 추적 출력을 보내는 파일을 지정합니다. 이 매개 변수는 파일 추적 수신기도 선택합니다. 이 매개 변수를 사용하여 추적을 시작하는 경우 RemoveFileListener 매개 변수를 사용하여 추적을 중지합니다.

형식:String
별칭:PSPath
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Force

cmdlet이 읽기 전용 파일을 덮어쓰고 있음을 나타냅니다. FilePath 매개 변수와 함께 사용합니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-ListenerOption

출력에 있는 각 추적 메시지의 접두사에 대한 선택적 데이터를 지정합니다. 이 매개 변수에 허용되는 값은 다음과 같습니다.

  • None
  • LogicalOperationStack
  • DateTime
  • Timestamp
  • ProcessId
  • ThreadId
  • Callstack

기본값은 None입니다.

이러한 값은 플래그 기반 열거형으로 정의됩니다. 이 매개 변수를 사용하여 여러 값을 결합하여 여러 플래그를 설정할 수 있습니다. 값은 값 배열 또는 해당 값의 쉼표로 구분된 문자열로 ListenerOption 매개 변수에 전달될 수 있습니다. cmdlet은 이진 OR 연산을 사용하여 값을 결합합니다. 값을 배열로 전달하는 것이 가장 간단한 옵션이며 값에 대한 탭 완성을 사용할 수도 있습니다.

형식:TraceOptions
허용되는 값:None, LogicalOperationStack, DateTime, Timestamp, ProcessId, ThreadId, Callstack
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-Name

추적할 구성 요소를 지정합니다. 각 구성 요소의 추적 원본 이름을 입력합니다. 와일드카드가 허용됩니다.

형식:String[]
Position:0
Default value:None
필수:True
파이프라인 입력 허용:True
와일드카드 문자 허용:True

-Option

추적되는 이벤트의 형식을 지정합니다. 이 매개 변수에 허용되는 값은 다음과 같습니다.

  • None
  • Constructor
  • Dispose
  • Finalizer
  • Method
  • Property
  • Delegates
  • Events
  • Exception
  • Lock
  • Error
  • Errors
  • Warning
  • Verbose
  • WriteLine
  • Data
  • Scope
  • ExecutionFlow
  • Assert
  • All

기본값은 None입니다.

다음 값은 다른 값의 조합입니다.

  • ExecutionFlow: Constructor,Dispose, , MethodFinalizer, Delegates, EventsScope
  • Data: Constructor, Dispose, Finalizer, Property, VerboseWriteLine
  • Errors: Error, Exception

이러한 값은 플래그 기반 열거형으로 정의됩니다. 이 매개 변수를 사용하여 여러 값을 결합하여 여러 플래그를 설정할 수 있습니다. 값은 값 배열 또는 해당 값의 쉼표로 구분된 문자열로 Option 매개 변수에 전달할 수 있습니다. cmdlet은 이진 OR 연산을 사용하여 값을 결합합니다. 값을 배열로 전달하는 것이 가장 간단한 옵션이며 값에 대한 탭 완성을 사용할 수도 있습니다.

형식:PSTraceSourceOptions
허용되는 값:None, Constructor, Dispose, Finalizer, Method, Property, Delegates, Events, Exception, Lock, Error, Errors, Warning, Verbose, WriteLine, Data, Scope, ExecutionFlow, Assert, All
Position:1
Default value:None
필수:False
파이프라인 입력 허용:True
와일드카드 문자 허용:False

-PassThru

작업 중인 항목을 나타내는 개체를 반환합니다. 기본적으로 이 cmdlet은 출력을 생성하지 않습니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-PSHost

이 cmdlet이 추적 출력을 PowerShell 호스트로 보내도록 나타냅니다. 이 매개 변수는 PSHost 추적 수신기도 선택합니다.

형식:SwitchParameter
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-RemoveFileListener

지정된 파일과 연결된 파일 추적 수신기를 제거하여 추적을 중지합니다. 추적 출력 파일의 경로 및 파일 이름을 입력합니다.

형식:String[]
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

-RemoveListener

추적 수신기를 제거하여 추적을 중지합니다.

RemoveListener에서 다음 값을 사용합니다.

  • PSHost(콘솔)를 제거하려면 .를 입력합니다 Host.
  • 디버거를 제거하려면 .를 입력합니다 Debug.
  • 모든 추적 수신기를 제거하려면 .를 입력합니다 *.

파일 추적 수신기를 제거하려면 RemoveFileListener 매개 변수를 사용합니다.

형식:String[]
Position:Named
Default value:None
필수:False
파이프라인 입력 허용:False
와일드카드 문자 허용:False

입력

String

이름이 포함된 문자열을 이 cmdlet으로 파이프할 수 있습니다.

출력

None

기본적으로 이 cmdlet은 출력을 반환하지 않습니다.

PSTraceSource

PassThru 매개 변수를 사용하는 경우 이 cmdlet은 추적 세션을 나타내는 PSTraceSource 개체를 반환합니다.

참고

  • 추적은 개발자가 프로그램을 디버그하고 구체화하는 데 사용하는 방법입니다. 추적하면 프로그램에서 내부 프로세스의 각 단계에 대한 세부 메시지를 생성합니다.

    PowerShell 추적 cmdlet은 PowerShell 개발자를 지원하도록 설계되었지만 모든 사용자가 사용할 수 있습니다. PowerShell 기능의 거의 모든 측면을 모니터링할 수 있습니다.

    추적 원본은 추적을 관리하고 구성 요소에 대한 추적 메시지를 생성하는 각 PowerShell 구성 요소의 일부입니다. 구성 요소를 추적하려면 해당 추적 원본을 식별합니다.

    추적 수신기는 추적의 출력을 받아 사용자에게 표시합니다. 추적 데이터를 사용자 모드 또는 커널 모드 디버거, 콘솔, 파일 또는 System.Diagnostics.TraceListener 클래스에서 파생된 사용자 지정 수신기로 보내도록 선택할 수 있습니다.

  • 추적을 시작하려면 Name 매개 변수를 사용하여 추적 원본과 FilePath, 디버거 또는 PSHost 매개 변수를 지정하여 수신기(출력 대상)를 지정합니다. Options 매개 변수를 사용하여 추적되는 이벤트 형식을 확인하고 ListenerOption 매개 변수를 사용하여 추적 출력을 구성합니다.

  • 추적의 구성을 변경하려면 추적을 Set-TraceSource 시작하는 것처럼 명령을 입력합니다. PowerShell은 추적 원본이 이미 추적되고 있음을 인식합니다. 그다음 추적을 중지하고 새 구성을 추가한 다음 추적을 시작하거나 다시 시작합니다.

  • 추적을 중지하려면 RemoveListener 매개 변수를 사용합니다. 파일 수신기(FilePath 매개 변수를 사용하여 시작된 추적)를 사용하는 추적을 중지하려면 RemoveFileListener 매개 변수를 사용합니다. 수신기를 제거하면 추적이 중지됩니다.

  • 추적할 수 있는 구성 요소를 확인하려면 Get-TraceSource를 사용합니다. 각 모듈의 추적 원본은 구성 요소가 사용 중일 때 자동으로 로드되고 출력에 Get-TraceSource표시됩니다.