Udostępnij za pomocą


Set-TraceSource

Konfiguruje, uruchamia i zatrzymuje ślad składników programu PowerShell.

Składnia

optionsSet (Domyślna)

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

removeAllListenersSet

Set-TraceSource
    [-Name] <String[]>
    [-RemoveListener <String[]>]
    [<CommonParameters>]

removeFileListenersSet

Set-TraceSource
    [-Name] <String[]>
    [-RemoveFileListener <String[]>]
    [<CommonParameters>]

Opis

Polecenie cmdlet Set-TraceSource konfiguruje, uruchamia i zatrzymuje ślad składnika programu PowerShell. Można go użyć do określenia, które składniki będą śledzone i gdzie są wysyłane dane wyjściowe śledzenia.

Przykłady

Przykład 1. Śledzenie składnika ParameterBinding

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

To polecenie uruchamia śledzenie składnika ParameterBinding programu PowerShell. Używa parametru Name do określenia źródła śledzenia, parametru Option do wybrania zdarzeń śledzenia ExecutionFlow oraz parametru PSHost, aby wybrać odbiornik hosta programu PowerShell, który wysyła dane wyjściowe do konsoli. Parametr ListenerOption dodaje wartości ProcessId i TimeStamp do prefiksu komunikatu śledzenia.

Przykład 2. Zatrzymanie śledzenia

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

To polecenie zatrzymuje ślad składnika ParameterBinding programu PowerShell. Używa parametru Name, aby zidentyfikować składnik, który był śledzony, oraz parametr RemoveListener w celu zidentyfikowania odbiornika śledzenia.

Parametry

-Debugger

Wskazuje, że polecenie cmdlet wysyła dane wyjściowe śledzenia do debugera. Dane wyjściowe można wyświetlić w dowolnym debugerze trybu użytkownika lub w trybie jądra lub w programie Microsoft Visual Studio. Ten parametr wybiera również domyślny odbiornik śledzenia.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

optionsSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-FilePath

Określa plik, do którego to polecenie cmdlet wysyła dane wyjściowe śledzenia. Ten parametr wybiera również odbiornik śledzenia plików. Jeśli użyjesz tego parametru do uruchomienia śledzenia, użyj parametru RemoveFileListener, aby zatrzymać śledzenie.

Właściwości parametru

Typ:String
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False
Aliasy:PSPath, Ścieżka

Zestawy parametrów

optionsSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Force

Wskazuje, że polecenie cmdlet zastępuje plik tylko do odczytu. Użyj parametru FilePath.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

optionsSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-ListenerOption

Określa opcjonalne dane do prefiksu każdego komunikatu śledzenia w danych wyjściowych. Dopuszczalne wartości tego parametru to:

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

None jest wartością domyślną.

Te wartości są definiowane jako wyliczenie oparte na flagach. Możesz połączyć wiele wartości ze sobą, aby ustawić wiele flag przy użyciu tego parametru. Wartości można przekazać do parametru ListenerOption jako tablicy wartości lub jako ciąg rozdzielany przecinkami tych wartości. Polecenie cmdlet połączy wartości przy użyciu operacji binary-OR. Przekazywanie wartości jako tablicy jest najprostszą opcją i umożliwia skorzystanie z funkcji automatycznego uzupełniania dla wartości tablicy.

Właściwości parametru

Typ:TraceOptions
Domyślna wartość:None
Dopuszczalne wartości:None, LogicalOperationStack, DateTime, Timestamp, ProcessId, ThreadId, Callstack
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

optionsSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-Name

Określa, które składniki są śledzone. Wprowadź nazwę źródła śledzenia każdego składnika. Symbole wieloznaczne są dozwolone.

Właściwości parametru

Typ:

String[]

Domyślna wartość:None
Obsługuje symbole wieloznaczne:True
DontShow:False

Zestawy parametrów

(All)
Position:0
Obowiązkowy:True
Wartość z potoku:True
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False

-Option

Określa typ śledzonych zdarzeń. Dopuszczalne wartości tego parametru to:

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

None jest wartością domyślną.

Następujące wartości to kombinacje innych wartości:

  • ExecutionFlow: Constructor, , FinalizerDispose, Method, Delegates, , EventsScope
  • Data: Constructor, , FinalizerDispose, Property, , , VerboseWriteLine
  • Errors: Error, Exception

Te wartości są definiowane jako wyliczenie oparte na flagach. Możesz połączyć wiele wartości ze sobą, aby ustawić wiele flag przy użyciu tego parametru. Wartości można przekazać do parametru Option jako tablicy wartości lub jako ciąg rozdzielany przecinkami tych wartości. Polecenie cmdlet połączy wartości przy użyciu operacji binary-OR. Przekazywanie wartości jako tablicy jest najprostszą opcją i umożliwia skorzystanie z funkcji automatycznego uzupełniania dla wartości tablicy.

Właściwości parametru

Typ:PSTraceSourceOptions
Domyślna wartość:None
Dopuszczalne wartości:None, Constructor, Dispose, Finalizer, Method, Property, Delegates, Events, Exception, Lock, Error, Errors, Warning, Verbose, WriteLine, Data, Scope, ExecutionFlow, Assert, All
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

optionsSet
Position:1
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:True
Wartość z pozostałych argumentów:False

-PassThru

Zwraca obiekt reprezentujący element, z którym pracujesz. Domyślnie to polecenie cmdlet nie generuje żadnych danych wyjściowych.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

optionsSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-PSHost

Wskazuje, że to polecenie cmdlet wysyła dane wyjściowe śledzenia do hosta programu PowerShell. Ten parametr wybiera również odbiornik śledzenia PSHost.

Właściwości parametru

Typ:SwitchParameter
Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

optionsSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-RemoveFileListener

Zatrzymuje śledzenie przez usunięcie odbiornika śledzenia pliku skojarzonego z określonym plikiem. Wprowadź ścieżkę i nazwę pliku wyjściowego śledzenia.

Właściwości parametru

Typ:

String[]

Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

removeFileListenersSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

-RemoveListener

Zatrzymuje śledzenie przez usunięcie odbiornika śledzenia.

Użyj następujących wartości z RemoveListener:

  • Aby usunąć program PSHost (konsola), wpisz Host.
  • Aby usunąć debuger, wpisz Debug.
  • Aby usunąć wszystkie odbiorniki śledzenia, wpisz *.

Aby usunąć odbiornik śledzenia plików, użyj parametru RemoveFileListener.

Właściwości parametru

Typ:

String[]

Domyślna wartość:None
Obsługuje symbole wieloznaczne:False
DontShow:False

Zestawy parametrów

removeAllListenersSet
Position:Named
Obowiązkowy:False
Wartość z potoku:False
Wartość z potoku według nazwy właściwości:False
Wartość z pozostałych argumentów:False

CommonParameters

To polecenie cmdlet obsługuje typowe parametry: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction i -WarningVariable. Aby uzyskać więcej informacji, zobacz about_CommonParameters.

Dane wejściowe

String

Możesz potokować ciąg zawierający nazwę tego polecenia cmdlet.

Dane wyjściowe

None

Domyślnie to polecenie cmdlet nie zwraca żadnych danych wyjściowych.

PSTraceSource

Jeśli używasz parametru PassThru, to polecenie cmdlet zwraca obiekt PSTraceSource reprezentujący sesję śledzenia.

Uwagi

  • Śledzenie to metoda używana przez deweloperów do debugowania i uściślinia programów. Podczas śledzenia program generuje szczegółowe komunikaty dotyczące poszczególnych kroków przetwarzania wewnętrznego.

    Polecenia cmdlet śledzenia programu PowerShell są przeznaczone do pomocy deweloperom programu PowerShell, ale są dostępne dla wszystkich użytkowników. Umożliwiają one monitorowanie niemal każdego aspektu funkcjonalności programu PowerShell.

    Źródło śledzenia jest częścią każdego składnika programu PowerShell, który zarządza śledzeniem i generuje komunikaty śledzenia dla składnika. Aby prześledzić składnik, należy zidentyfikować jego źródło śledzenia.

    Odbiornik śledzenia odbiera dane wyjściowe śledzenia i wyświetla go użytkownikowi. Możesz wybrać opcję wysyłania danych śledzenia do debugera trybu użytkownika lub debugera trybu jądra, do konsoli, do pliku lub do niestandardowego odbiornika pochodzącego z klasy System.Diagnostics.TraceListener.

  • Aby rozpocząć śledzenie, użyj parametru nazwa , aby określić źródło śledzenia i FilePath, Debuggerlub parametrów PSHost w celu określenia odbiornika (miejsca docelowego dla danych wyjściowych). Użyj parametru Options, aby określić typy śledzonych zdarzeń oraz parametr ListenerOption w celu skonfigurowania danych wyjściowych śledzenia.

  • Aby zmienić konfigurację śledzenia, wprowadź polecenie Set-TraceSource, aby rozpocząć śledzenie. Program PowerShell rozpoznaje, że źródło śledzenia jest już śledzone. Zatrzymuje ślad, dodaje nową konfigurację i uruchamia lub ponownie uruchamia ślad.

  • Aby zatrzymać śledzenie, użyj parametru RemoveListener. Aby zatrzymać śledzenie korzystające z odbiornika plików (ślad rozpoczęty przy użyciu parametru filePath ), użyj parametru RemoveFileListener. Po usunięciu odbiornika ślad zostanie zatrzymany.

  • Aby określić, które składniki można śledzić, użyj polecenia Get-TraceSource. Źródła śledzenia dla każdego modułu są ładowane automatycznie, gdy składnik jest używany, i są one wyświetlane w danych wyjściowych Get-TraceSource.