Trace-Command
Configureert en start een tracering van de opgegeven expressie of opdracht.
Syntax
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
De cmdlet Trace-Command configureert en start een tracering van de opgegeven expressie of opdracht. Het werkt net als Set-TraceSource, behalve dat het alleen van toepassing is op de opgegeven opdracht.
Voorbeelden
Voorbeeld 1: verwerking van traceringsmetagegevens, parameterbinding en een expressie
PS C:\> Trace-Command -Name metadata,parameterbinding,cmdlet -Expression {Get-Process Notepad} -PSHost
Met deze opdracht wordt een tracering gestart van metagegevensverwerking, parameterbinding en het maken en vernietigen van de expressie van cmdlets Get-Process Notepad
.
De parameter Name wordt gebruikt om de traceringsbronnen op te geven, de expressieparameter om de opdracht op te geven en de parameter PSHost om de uitvoer naar de console te verzenden.
Omdat er geen traceringsopties of listeneropties worden opgegeven, gebruikt de opdracht de standaardwaarden: Alle voor de traceringsopties en Geen voor de listener-opties.
Voorbeeld 2: De acties van ParameterBinding-bewerkingen traceren
PS C:\> $A = "i*"
PS C:\> Trace-Command ParameterBinding {Get-Alias $Input} -PSHost -InputObject $A
Deze opdrachten traceren de acties van de ParameterBinding-bewerkingen van Windows PowerShell terwijl er een Get-Alias-expressie wordt verwerkt die invoer uit de pijplijn opneemt.
In Trace-Command geeft de parameter InputObject een object door aan de expressie die tijdens de tracering wordt verwerkt.
Met de eerste opdracht wordt de tekenreeks 'i*' opgeslagen in de variabele $A. De tweede opdracht maakt gebruik van de cmdlet Trace-Command met de traceringsbron ParameterBinding. De parameter PSHost verzendt de uitvoer naar de console.
De expressie die wordt verwerkt, is Get-Alias $Input
, waarbij de variabele $Input is gekoppeld aan de parameter InputObject .
De parameter InputObject geeft de variabele $A door aan de expressie.
De opdracht die tijdens de tracering wordt verwerkt, is Get-Alias -InputObject $A" or "$A | Get-Alias
in feite .
Parameters
-ArgumentList
Hiermee geeft u de parameters en parameterwaarden voor de opdracht die wordt getraceerd. De alias voor ArgumentList is Args. Deze functie is vooral handig voor het opsporen van fouten in dynamische parameters.
Type: | Object[] |
Aliases: | Args |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Command
Hiermee geeft u een opdracht die wordt verwerkt tijdens de tracering.
Type: | String |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Debugger
Geeft aan dat de cmdlet de traceringsuitvoer naar het foutopsporingsprogramma verzendt. U kunt de uitvoer weergeven in elk foutopsporingsprogramma voor gebruikersmodus of kernelmodus of in Visual Studio. Deze parameter selecteert ook de standaard traceringslistener.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Expression
Hiermee geeft u de expressie die wordt verwerkt tijdens de tracering. Plaats de expressie tussen accolades ({}).
Type: | ScriptBlock |
Position: | 1 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-FilePath
Hiermee geeft u een bestand op waarnaar de cmdlet de traceringsuitvoer verzendt. Deze parameter selecteert ook de listener voor bestandstracering.
Type: | String |
Aliases: | PSPath |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Force
Hiermee dwingt u de opdracht uit te voeren zonder om bevestiging van de gebruiker te vragen. Wordt gebruikt met de parameter FilePath . Zelfs als u de parameter Force gebruikt, kan de cmdlet de beveiligingsbeperkingen niet negeren.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InputObject
Hiermee geeft u invoer op voor de expressie die wordt verwerkt tijdens de tracering.
U kunt een variabele invoeren die de invoer vertegenwoordigt die de expressie accepteert, of een object doorgeven via de pijplijn.
Type: | PSObject |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ListenerOption
Hiermee geeft u optionele gegevens op voor het voorvoegsel van elk traceringsbericht in de uitvoer. De aanvaardbare waarden voor deze parameter zijn:
- Geen
- LogicalOperationStack
- DateTime
- Tijdstempel
- ProcessId
- ThreadId
- Callstack
Geen is de standaardwaarde.
Als u meerdere opties wilt opgeven, scheidt u deze met komma's, maar zonder spaties, en plaatst u deze tussen aanhalingstekens, zoals 'ProcessID,ThreadID'.
Type: | TraceOptions |
Accepted values: | None, LogicalOperationStack, DateTime, Timestamp, ProcessId, ThreadId, Callstack |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
Hiermee geeft u een matrix van Windows PowerShell onderdelen die worden getraceerd.
Voer de naam in van de traceringsbron van elk onderdeel.
Jokertekens zijn toegestaan.
Als u de traceringsbronnen op uw computer wilt zoeken, typt u Get-TraceSource
.
Type: | String[] |
Position: | 0 |
Default value: | None |
Required: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Option
Hiermee geeft u het type gebeurtenissen op dat wordt getraceerd. De aanvaardbare waarden voor deze parameter zijn:
- Geen
- Constructor
- Wegdoen
- Finalizer
- Methode
- Eigenschap
- Gedelegeerden
- gebeurtenis
- Uitzondering
- Vergrendelen
- Fout
- Fouten
- Waarschuwing
- Uitgebreid
- WriteLine
- Gegevens
- Bereik
- ExecutionFlow
- Assert
- Alles
Alles is de standaardwaarde.
De volgende waarden zijn combinaties van andere waarden:
- ExecutionFlow: (Constructor, Dispose, Finalizer, Method, Delegates, Events en Scope)
- Gegevens: (Constructor, Dispose, Finalizer, Property, Verbose en WriteLine)
- Fouten: (Fout en uitzondering).
Als u meerdere opties wilt opgeven, scheidt u deze met komma's, maar zonder spaties, en plaatst u deze tussen aanhalingstekens, zoals 'Constructor,Dispose'.
Type: | PSTraceSourceOptions |
Accepted values: | 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 |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-PSHost
Geeft aan dat de cmdlet de traceringsuitvoer verzendt naar de Windows PowerShell host. Met deze parameter wordt ook de PSHost-traceringslistener geselecteerd.
Type: | SwitchParameter |
Position: | Named |
Default value: | None |
Required: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
Invoerwaarden
U kunt objecten die de invoer voor de expressie vertegenwoordigen doorspeken naar Trace-Command.
Uitvoerwaarden
Retourneert de opdrachttracering in de foutopsporingsstroom.
Notities
Tracering is een methode die ontwikkelaars gebruiken om fouten in programma's op te sporen en te verfijnen. Bij het traceren genereert het programma gedetailleerde berichten over elke stap in de interne verwerking.
De cmdlets voor Windows PowerShell tracering zijn ontworpen om Windows PowerShell ontwikkelaars te helpen, maar ze zijn beschikbaar voor alle gebruikers. Hiermee kunt u bijna elk aspect van de functionaliteit van de shell bewaken.
Als u de Windows PowerShell onderdelen wilt zoeken die zijn ingeschakeld voor tracering, typt u
Get-Help Get-TraceSource
.Een traceringsbron is het deel van elk Windows PowerShell onderdeel dat tracering beheert en traceringsberichten voor het onderdeel genereert. Als u een onderdeel wilt traceren, identificeert u de traceringsbron.
Een traceringslistener ontvangt de uitvoer van de tracering en geeft deze weer aan de gebruiker. U kunt ervoor kiezen om de traceringsgegevens te verzenden naar een foutopsporingsprogramma in de gebruikersmodus of kernelmodus, naar de host of console, naar een bestand of naar een aangepaste listener die is afgeleid van de klasse System.Diagnostics.TraceListener .
Wanneer u de parameterset commandSet gebruikt, verwerkt Windows PowerShell de opdracht op dezelfde wijze als deze in een pijplijn wordt verwerkt. De opdrachtdetectie wordt bijvoorbeeld niet herhaald voor elk binnenkomend object.
De namen van de parameters Naam, Expressie, Optie en Opdracht zijn optioneel. Als u de parameternamen weglaat, moeten de naamloze parameterwaarden in deze volgorde worden weergegeven: Naam, Expressie, Optie of Naam, Opdracht, Optie. Als u de parameternamen opneemt, kunnen de parameters in elke volgorde worden weergegeven.