Trace-Command
Nakonfiguruje a spustí trasování zadaného výrazu nebo příkazu.
Syntaxe
Trace-Command
[-Name] <String[]>
[-Expression] <ScriptBlock>
[[-Option] <PSTraceSourceOptions>]
[-InputObject <PSObject>]
[-ListenerOption <TraceOptions>]
[-FilePath <String>]
[-Force]
[-Debugger]
[-PSHost]
[<CommonParameters>]
Trace-Command
[-Name] <String[]>
[-Command] <String>
[[-Option] <PSTraceSourceOptions>]
[-InputObject <PSObject>]
[-ArgumentList <Object[]>]
[-ListenerOption <TraceOptions>]
[-FilePath <String>]
[-Force]
[-Debugger]
[-PSHost]
[<CommonParameters>]
Description
Rutina Trace-Command nakonfiguruje a spustí trasování zadaného výrazu nebo příkazu. Funguje jako Set-TraceSource s tím rozdílem, že se vztahuje pouze na zadaný příkaz.
Příklady
Příklad 1: Trasování zpracování metadat, vazby parametrů a výrazu
PS C:\> Trace-Command -Name metadata,parameterbinding,cmdlet -Expression {Get-Process Notepad} -PSHost
Tento příkaz spustí trasování zpracování metadat, vazby parametrů a vytváření rutin a zničení výrazu Get-Process Notepad
.
Pomocí parametru Name určuje zdroje trasování, parametr Expression k zadání příkazu a parametr PSHost k odeslání výstupu do konzoly.
Vzhledem k tomu, že nezadá žádné možnosti trasování nebo možnosti naslouchacího procesu, příkaz použije výchozí nastavení -All pro možnosti trasování a Žádné pro možnosti naslouchacího procesu.
Příklad 2: Trasování akcí operací ParameterBinding
PS C:\> $A = "i*"
PS C:\> Trace-Command ParameterBinding {Get-Alias $Input} -PSHost -InputObject $A
Tyto příkazy trasují akce operací ParameterBinding windows PowerShellu, zatímco zpracovává výraz Get-Alias, který přijímá vstup z kanálu.
V Trace-Command, InputObject parametr předává objekt výrazu, který se zpracovává během trasování.
První příkaz uloží řetězec "i*" do proměnné $A. Druhý příkaz používá rutinu Trace-Command se zdrojem trasování ParameterBinding. Parametr PSHost odešle výstup do konzoly.
Zpracovávaný výraz je Get-Alias $Input
, kde $Input proměnná je přidružena k parametru InputObject.
Parametr InputObject předá proměnnou $A výrazu.
Příkaz, který se zpracovává během trasování, je Get-Alias -InputObject $A" or "$A | Get-Alias
.
Parametry
-ArgumentList
Určuje parametry a hodnoty parametrů pro trasovaný příkaz. Alias pro ArgumentList je Args. Tato funkce je zvlášť užitečná pro ladění dynamických parametrů.
Typ: | Object[] |
Aliasy: | Args |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Command
Určuje příkaz, který se zpracovává během trasování.
Typ: | String |
Position: | 1 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Debugger
Označuje, že rutina odešle výstup trasování do ladicího programu. Výstup můžete zobrazit v libovolném ladicím programu pro režim uživatele nebo v režimu jádra nebo v sadě Visual Studio. Tento parametr také vybere výchozí naslouchací proces trasování.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Expression
Určuje výraz, který se zpracovává během trasování. Uzavřete výraz do složených závorek ({}).
Typ: | ScriptBlock |
Position: | 1 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-FilePath
Určuje soubor, do kterého rutina odesílá výstup trasování. Tento parametr také vybere naslouchací proces trasování souboru.
Typ: | String |
Aliasy: | PSPath |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Force
Vynutí spuštění příkazu bez výzvy k potvrzení uživatele. Používá se s parametrem FilePath. I při použití parametru Force nemůže rutina přepsat omezení zabezpečení.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-InputObject
Určuje vstup do výrazu, který se zpracovává během trasování.
Můžete zadat proměnnou, která představuje vstup, který výraz přijímá, nebo předat objekt přes kanál.
Typ: | PSObject |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | True |
Přijmout zástupné znaky: | False |
-ListenerOption
Určuje volitelná data pro předponu každé zprávy trasování ve výstupu. Přijatelné hodnoty pro tento parametr jsou:
- Žádný
- LogicalOperationStack
- DateTime
- Časová značka
- Id procesu
- ThreadId
- Acka volání
Výchozí hodnota není žádná.
Pokud chcete zadat více možností, oddělte je čárkami, ale bez mezer a uzavřete je do uvozovek, například "ProcessID,ThreadID".
Typ: | TraceOptions |
Přípustné hodnoty: | None, LogicalOperationStack, DateTime, Timestamp, ProcessId, ThreadId, Callstack |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Name
Určuje pole komponent Windows PowerShellu, které jsou trasovány.
Zadejte název zdroje trasování jednotlivých komponent.
Jsou povoleny zástupné cardy.
Chcete-li najít zdroje trasování v počítači, zadejte Get-TraceSource
.
Typ: | String[] |
Position: | 0 |
Default value: | None |
Vyžadováno: | True |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-Option
Určuje typ událostí, které jsou trasovány. Přijatelné hodnoty pro tento parametr jsou:
- Žádný
- Konstruktor
- Zničit
- Finalizátor
- Metoda
- Vlastnost
- Deleguje
- Dění
- Výjimka
- Zamknout
- Chyba
- Chyby
- Varování
- Užvaněný
- WriteLine
- Data
- Rozsah
- ExecutionFlow
- Tvrdit
- Všichni
Vše je výchozí.
Následující hodnoty jsou kombinace jiných hodnot:
- ExecutionFlow: (konstruktor, Dispose, Finalizer, Method, Delegates, Events a Scope)
- Data: (Konstruktor, Dispose, Finalizer, Property, Verbose a WriteLine)
- Chyby: (chyba a výjimka).
Pokud chcete zadat více možností, oddělte je čárkami, ale bez mezer a uzavřete je do uvozovek, například "Konstruktor,Dispose".
Typ: | PSTraceSourceOptions |
Přípustné hodnoty: | None, Constructor, Dispose, Finalizer, Method, Property, Delegates, Events, Exception, Lock, Error, Errors, Warning, Verbose, WriteLine, Data, Scope, ExecutionFlow, Assert, All |
Position: | 2 |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
-PSHost
Označuje, že rutina odešle výstup trasování hostiteli Windows PowerShellu. Tento parametr také vybere naslouchací proces trasování PSHost.
Typ: | SwitchParameter |
Position: | Named |
Default value: | None |
Vyžadováno: | False |
Přijmout vstup kanálu: | False |
Přijmout zástupné znaky: | False |
Vstupy
Objekty, které představují vstup do výrazu, lze Trace-Command .
Výstupy
Vrátí trasování příkazů v ladicím streamu.
Poznámky
Trasování je metoda, kterou vývojáři používají k ladění a upřesňování programů. Při trasování program generuje podrobné zprávy o jednotlivých krocích jeho interního zpracování.
Rutiny trasování Prostředí Windows PowerShell jsou navržené tak, aby pomohly vývojářům windows PowerShellu, ale jsou dostupné všem uživatelům. Umožňují vám monitorovat téměř všechny aspekty funkčnosti prostředí.
Chcete-li najít součásti prostředí Windows PowerShell, které jsou povoleny pro trasování, zadejte
Get-Help Get-TraceSource
.Zdroj trasování je součástí každé komponenty Windows PowerShellu, která spravuje trasování a generuje zprávy trasování pro danou komponentu. Pokud chcete trasovat komponentu, identifikujete její zdroj trasování.
Naslouchací proces trasování obdrží výstup trasování a zobrazí ho uživateli. Můžete se rozhodnout odeslat data trasování do ladicího programu v uživatelském režimu nebo režimu jádra, do hostitele nebo konzoly, do souboru nebo do vlastního naslouchacího procesu odvozeného z System.Diagnostics.TraceListener třídy.
Když použijete sadu parametrů commandSet, Windows PowerShell zpracuje příkaz stejně, jako by se zpracovával v kanálu. Například zjišťování příkazů se u každého příchozího objektu neopakuje.
Názvy Name, Expression, Optiona Command parametry jsou volitelné. Pokud vynecháte názvy parametrů, musí se hodnoty nepojmenovaných parametrů zobrazovat v tomto pořadí: Název, Výraz, možnost nebo Název, Příkaz, Možnost. Pokud zahrnete názvy parametrů, můžou se parametry zobrazit v libovolném pořadí.