Sdílet prostřednictvím


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

PSObject

Objekty, které představují vstup do výrazu, lze Trace-Command .

Výstupy

PSObject

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í.