次の方法で共有


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

説明

Set-TraceSource コマンドレットは、PowerShell コンポーネントのトレースを構成、開始、および停止します。 これを使用して、トレースするコンポーネントと、トレース出力の送信先を指定できます。

例 1: ParameterBinding コンポーネントをトレースする

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

このコマンドは、PowerShell の ParameterBinding コンポーネントのトレースを開始します。 Name パラメーターを使用してトレース ソースを指定し、Option パラメーターを使用してExecutionFlowトレース イベントを選択し、PSHost パラメーターを使用して PowerShell ホスト リスナーを選択し、出力をコンソールに送信します。 ListenerOption パラメーターは、トレース メッセージ プレフィックスにProcessIDTimeStampの値を追加します。

例 2: トレースを停止する

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

このコマンドは、PowerShell の ParameterBinding コンポーネントのトレースを停止します。 Name パラメーターを使用して、トレース対象のコンポーネントを識別し、RemoveListener パラメーターを使用してトレース リスナーを識別します。

パラメーター

-Debugger

コマンドレットがデバッガーにトレース出力を送信することを示します。 ユーザー モードまたはカーネル モードのデバッガー、あるいは Microsoft Visual Studio で出力を表示することができます。 このパラメーターは、既定のトレース リスナーも選択します。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-FilePath

このコマンドレットがトレース出力を送信するファイルを指定します。 このパラメーターは、ファイル トレース リスナーも選択します。 このパラメーターを使用してトレースを開始する場合は、 RemoveFileListener パラメーターを使用してトレースを停止します。

型:String
Aliases:PSPath, Path
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Force

コマンドレットが読み取り専用ファイルを上書きすることを示します。 FilePath パラメーターと共に使用します。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-ListenerOption

出力内の各トレース メッセージのプレフィックスに省略可能なデータを指定します。 このパラメーターの有効値は、次のとおりです。

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

None は既定値です。

これらの値は、フラグ ベースの列挙体として定義されます。 このパラメーターを使用して、複数の値を組み合わせて複数のフラグを設定できます。 値は、 ListenerOption パラメーターに値の配列として、またはそれらの値のコンマ区切り文字列として渡すことができます。 コマンドレットは、バイナリ OR 操作を使用して値を結合します。 配列として値を渡すことは最も簡単なオプションであり、値にタブ補完を使用することもできます。

型:TraceOptions
指定可能な値:None, LogicalOperationStack, DateTime, Timestamp, ProcessId, ThreadId, Callstack
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-Name

トレースするコンポーネントを指定します。 各コンポーネントのトレース ソースの名前を入力します。 ワイルドカードを使用できます。

型:String[]
配置:0
規定値: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

All は既定値です。

次の値はその他の値の組み合わせです。

  • ExecutionFlow: ConstructorDisposeFinalizerMethodDelegatesEventsScope
  • Data: ConstructorDisposeFinalizerPropertyVerboseWriteLine
  • Errors: ErrorException

これらの値は、フラグ ベースの列挙体として定義されます。 このパラメーターを使用して、複数の値を組み合わせて複数のフラグを設定できます。 値は、 Option パラメーターに値の配列として、またはそれらの値のコンマ区切り文字列として渡すことができます。 コマンドレットは、バイナリ OR 操作を使用して値を結合します。 配列として値を渡すことは最も簡単なオプションであり、値にタブ補完を使用することもできます。

型:PSTraceSourceOptions
指定可能な値:None, Constructor, Dispose, Finalizer, Method, Property, Delegates, Events, Exception, Lock, Error, Errors, Warning, Verbose, WriteLine, Data, Scope, ExecutionFlow, Assert, All
配置:1
規定値:None
必須:False
パイプライン入力を受け取る:True
ワイルドカード文字を受け取る:False

-PassThru

作業中の項目を表すオブジェクトを返します。 既定では、このコマンドレットによる出力はありません。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-PSHost

このコマンドレットがトレース出力を PowerShell ホストに送信することを示します。 このパラメーターは、PSHost トレース リスナーも選択します。

型:SwitchParameter
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-RemoveFileListener

指定したファイルに関連付けられているファイル トレース リスナーを削除することで、トレースを停止します。 トレース出力ファイルのパスとファイル名を入力します。

型:String[]
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

-RemoveListener

トレース リスナーを削除することで、トレースを停止します。

RemoveListener で次の値を使用します。

  • PSHost (コンソール) を削除するには、「 Host」と入力します。
  • デバッガーを削除するには、「 Debug」と入力します。
  • すべてのトレース リスナーを削除するには、「 *」と入力します。

ファイル トレース リスナーを削除するには、 RemoveFileListener パラメーターを使用します。

型:String[]
配置:Named
規定値:None
必須:False
パイプライン入力を受け取る:False
ワイルドカード文字を受け取る:False

入力

String

名前を含む文字列をこのコマンドレットにパイプできます。

出力

None

既定では、このコマンドレットは出力を返しません。

PSTraceSource

PassThru パラメーターを使用すると、このコマンドレットはトレース セッションを表すPSTraceSource オブジェクトを返します。

メモ

  • トレースは、開発者がプログラムをデバッグし、調整するために使用するメソッドです。 トレース時に、プログラムは、内部処理の各手順について詳細なメッセージを生成します。

    PowerShell トレース コマンドレットは、PowerShell 開発者を支援するように設計されていますが、すべてのユーザーが使用できます。 PowerShell の機能のほぼすべての側面を監視できます。

    トレース ソースは、トレースを管理し、コンポーネントのトレース メッセージを生成する各 PowerShell コンポーネントの一部です。 コンポーネントをトレースするには、トレース ソースを特定します。

    トレース リスナーは、トレースの出力を受け取り、ユーザーに表示します。 トレース データは、ユーザー モードデバッガーまたはカーネル モード デバッガー、コンソール、ファイル、または System.Diagnostics.TraceListener クラスから派生したカスタム リスナーに送信できます。

  • トレースを開始するには、 Name パラメーターを使用して、トレース ソースと、 FilePathDebugger、または PSHost パラメーターを指定してリスナー (出力の宛先) を指定します。 トレースされるイベントの種類を決定するには Options パラメーターを使用し、トレース出力を構成するには ListenerOption パラメーターを使用します。

  • トレースの構成を変更するには、トレースを開始する場合と同様に、 Set-TraceSource コマンドを入力します。 PowerShell は、トレース ソースが既にトレースされていることを認識します。 トレースを停止し、新しい構成を追加して、トレースを開始または再開します。

  • トレースを停止するには、 RemoveListener パラメーターを使用します。 ファイル リスナーを使用するトレース ( FilePath パラメーターを使用して開始されたトレース) を停止するには、 RemoveFileListener パラメーターを使用します。 リスナーを削除すると、トレースは停止します。

  • トレース可能なコンポーネントを判別するには、Get TraceSource を使用します。 各モジュールのトレース ソースは、コンポーネントが使用中のときに自動的に読み込まれ、 Get-TraceSourceの出力に表示されます。