Set-TraceSource
Konfiguruje, uruchamia i zatrzymuje ślad składników programu PowerShell.
Składnia
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>]
Opis
Polecenie Set-TraceSource
cmdlet 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 Opcja do wybrania ExecutionFlow
zdarzeń śledzenia i parametru PSHost do wybrania odbiornika hosta programu PowerShell, który wysyła dane wyjściowe do konsoli. Parametr ListenerOption dodaje ProcessID
wartości 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 do identyfikowania składnika, który był śledzony, oraz parametru 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.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | 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żywasz tego parametru do uruchomienia śledzenia, użyj parametru RemoveFileListener , aby zatrzymać śledzenie.
Typ: | String |
Aliasy: | PSPath |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Force
Wskazuje, że polecenie cmdlet zastępuje plik tylko do odczytu. Użyj z parametrem FilePath .
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | 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
Wartość domyślna to None
.
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 tablicę 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ą, a także umożliwia użycie uzupełniania tabulatorów na wartościach.
Typ: | TraceOptions |
Dopuszczalne wartości: | None, LogicalOperationStack, DateTime, Timestamp, ProcessId, ThreadId, Callstack |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-Name
Określa, które składniki są śledzone. Wprowadź nazwę źródła śledzenia każdego składnika. Dozwolone są symbole wieloznaczne.
Typ: | String[] |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | True |
-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
Wartość domyślna to None
.
Następujące wartości to kombinacje innych wartości:
ExecutionFlow
:Constructor
, ,Finalizer
Dispose
,Method
,Delegates
, ,Events
Scope
Data
:Constructor
, ,Finalizer
Dispose
,Property
, , ,Verbose
WriteLine
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 tablicę 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ą, a także umożliwia użycie uzupełniania tabulatorów na wartościach.
Typ: | PSTraceSourceOptions |
Dopuszczalne wartości: | None, Constructor, Dispose, Finalizer, Method, Property, Delegates, Events, Exception, Lock, Error, Errors, Warning, Verbose, WriteLine, Data, Scope, ExecutionFlow, Assert, All |
Position: | 1 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-PassThru
Zwraca obiekt reprezentujący element, z którym pracujesz. Domyślnie to polecenie cmdlet nie generuje żadnych danych wyjściowych.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | 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.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-RemoveFileListener
Zatrzymuje śledzenie przez usunięcie odbiornika śledzenia pliku skojarzonego z określonym plikiem. Wprowadź ścieżkę i nazwę pliku wyjściowego śledzenia.
Typ: | String[] |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-RemoveListener
Zatrzymuje śledzenie przez usunięcie odbiornika śledzenia.
Użyj następujących wartości z elementem RemoveListener:
- Aby usunąć psHost (konsolę), wpisz
Host
. - Aby usunąć debuger, wpisz
Debug
. - Aby usunąć wszystkie odbiorniki śledzenia, wpisz
*
.
Aby usunąć odbiornik śledzenia plików, użyj parametru RemoveFileListener .
Typ: | String[] |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
Dane wejściowe
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.
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 Name , aby określić źródło śledzenia oraz parametry FilePath, Debugger lub PSHost w celu określenia odbiornika (miejsca docelowego dla danych wyjściowych). Użyj parametru Opcje , aby określić typy śledzenia zdarzeń i parametr ListenerOption w celu skonfigurowania danych wyjściowych śledzenia.
Aby zmienić konfigurację śledzenia, wprowadź
Set-TraceSource
polecenie , 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ą wyświetlane w danych wyjściowych polecenia
Get-TraceSource
.