Condividi tramite


Set-TraceSource

Configura, avvia e arresta una traccia dei componenti di PowerShell.

Sintassi

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

Descrizione

Il Set-TraceSource cmdlet configura, avvia e arresta una traccia di un componente di PowerShell. È possibile usarlo per specificare i componenti da tracciare e la destinazione dell'output della traccia.

Esempio

Esempio 1: Tracciare il componente ParameterBinding

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

Questo comando avvia la traccia per il componente ParameterBinding di PowerShell. Usa il parametro Name per specificare l'origine di traccia, il parametro Option per selezionare gli ExecutionFlow eventi di traccia e il parametro PSHost per selezionare il listener host di PowerShell, che invia l'output alla console. Il parametro ListenerOption aggiunge i ProcessID valori e TimeStamp al prefisso del messaggio di traccia.

Esempio 2: Arrestare una traccia

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

Questo comando arresta la traccia del componente ParameterBinding di PowerShell. Usa il parametro Name per identificare il componente che è stato tracciato e il parametro RemoveListener per identificare il listener di traccia.

Parametri

-Debugger

Indica che il cmdlet invia l'output di traccia al debugger. È possibile visualizzare l'output in qualsiasi debugger in modalità utente o kernel oppure in Microsoft Visual Studio. Questo parametro seleziona anche il listener di traccia predefinito.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-FilePath

Specifica un file a cui questo cmdlet invia l'output di traccia. Questo parametro seleziona anche il listener di traccia dei file. Se si usa questo parametro per avviare la traccia, usare il parametro RemoveFileListener per arrestare la traccia.

Tipo:String
Alias:PSPath
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Force

Indica che il cmdlet sovrascrive un file di sola lettura. Usare con il parametro FilePath .

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-ListenerOption

Specifica i dati facoltativi per il prefisso di ogni messaggio di traccia nell'output. I valori validi per questo parametro sono:

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

None è l'impostazione predefinita.

Questi valori sono definiti come enumerazione basata su flag. È possibile combinare più valori per impostare più flag usando questo parametro. I valori possono essere passati al parametro ListenerOption come matrice di valori o come stringa delimitata da virgole di tali valori. Il cmdlet combina i valori usando un'operazione binary-OR. Il passaggio di valori come matrice è l'opzione più semplice e consente anche di usare il completamento tramite tabulazione sui valori.

Tipo:TraceOptions
Valori accettati:None, LogicalOperationStack, DateTime, Timestamp, ProcessId, ThreadId, Callstack
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-Name

Specifica quali componenti vengono tracciati. Immettere il nome dell'origine di traccia di ciascun componente. I caratteri jolly sono consentiti.

Tipo:String[]
Posizione:0
Valore predefinito:None
Necessario:True
Accettare l'input della pipeline:True
Accettare caratteri jolly:True

-Option

Specifica il tipo di eventi tracciati. I valori validi per questo parametro sono:

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

None è l'impostazione predefinita.

I valori seguenti sono combinazioni di altri valori:

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

Questi valori sono definiti come enumerazione basata su flag. È possibile combinare più valori per impostare più flag usando questo parametro. I valori possono essere passati al parametro Option come matrice di valori o come stringa delimitata da virgole di tali valori. Il cmdlet combina i valori usando un'operazione binary-OR. Il passaggio di valori come matrice è l'opzione più semplice e consente anche di usare il completamento tramite tabulazione sui valori.

Tipo:PSTraceSourceOptions
Valori accettati:None, Constructor, Dispose, Finalizer, Method, Property, Delegates, Events, Exception, Lock, Error, Errors, Warning, Verbose, WriteLine, Data, Scope, ExecutionFlow, Assert, All
Posizione:1
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:True
Accettare caratteri jolly:False

-PassThru

Restituisce un oggetto che rappresenta l'elemento in uso. Per impostazione predefinita, il cmdlet non genera alcun output.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-PSHost

Indica che questo cmdlet invia l'output di traccia all'host di PowerShell. Questo parametro seleziona anche il listener di traccia PSHost.

Tipo:SwitchParameter
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-RemoveFileListener

Arresta la traccia rimuovendo il listener di traccia di file associato al file specificato. Immettere il percorso e il nome del file di output di traccia.

Tipo:String[]
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

-RemoveListener

Arresta la traccia rimuovendo il listener di traccia.

Usare i valori seguenti con RemoveListener:

  • Per rimuovere PSHost (console), digitare Host.
  • Per rimuovere Debugger, digitare Debug.
  • Per rimuovere tutti i listener di traccia, digitare *.

Per rimuovere il listener di traccia del file, usare il parametro RemoveFileListener .

Tipo:String[]
Posizione:Named
Valore predefinito:None
Necessario:False
Accettare l'input della pipeline:False
Accettare caratteri jolly:False

Input

String

È possibile inviare tramite pipe una stringa contenente un nome a questo cmdlet.

Output

None

Per impostazione predefinita, questo cmdlet non restituisce alcun output.

PSTraceSource

Quando si utilizza il parametro PassThru , questo cmdlet restituisce un oggetto PSTraceSource che rappresenta la sessione di traccia.

Note

  • La funzionalità di traccia è un metodo usato dagli sviluppatori per eseguire il debug dei programmi e ottimizzarli. Durante la traccia, il programma genera messaggi dettagliati su ogni passaggio dell'elaborazione interna.

    I cmdlet di traccia di PowerShell sono progettati per aiutare gli sviluppatori di PowerShell, ma sono disponibili per tutti gli utenti. Consentono di monitorare quasi ogni aspetto della funzionalità di PowerShell.

    Un'origine di traccia è la parte di ogni componente di PowerShell che gestisce la traccia e genera messaggi di traccia per il componente. Per tracciare un componente, identificarne l'origine di traccia.

    Un listener di traccia riceve l'output della traccia e lo visualizza all'utente. È possibile scegliere di inviare i dati di traccia a un debugger in modalità utente o in modalità kernel, alla console, a un file o a un listener personalizzato derivato dalla classe System.Diagnostics.TraceListener .

  • Per avviare una traccia, usare il parametro Name per specificare un'origine di traccia e i parametri FilePath, Debugger o PSHost per specificare un listener (una destinazione per l'output). Usare il parametro Options per determinare i tipi di eventi tracciati e il parametro ListenerOption per configurare l'output di traccia.

  • Per modificare la configurazione di una traccia, immettere un Set-TraceSource comando come si desidera avviare una traccia. PowerShell riconosce che l'origine di traccia è già in corso di traccia. Arresta la traccia, aggiunge la nuova configurazione e quindi avvia o riavvia la traccia.

  • Per arrestare una traccia, usare il parametro RemoveListener . Per arrestare una traccia che usa il listener di file (una traccia avviata usando il parametro FilePath ), usare il parametro RemoveFileListener . Quando si rimuove il listener, la traccia viene arrestata.

  • Per determinare quali componenti possono essere tracciati, usare Get-TraceSource. Le origini di traccia per ogni modulo vengono caricate automaticamente quando il componente è in uso e vengono visualizzate nell'output di Get-TraceSource.