Partager via


Trace-Command

Configure et démarre une trace de l’expression ou de la commande spécifiée.

Syntaxe

expressionSet (Par défaut)

Trace-Command
    [-Name] <String[]>
    [-Expression] <ScriptBlock>
    [[-Option] <PSTraceSourceOptions>]
    [-InputObject <PSObject>]
    [-ListenerOption <TraceOptions>]
    [-FilePath <String>]
    [-Force]
    [-Debugger]
    [-PSHost]
    [<CommonParameters>]

commandSet

Trace-Command
    [-Name] <String[]>
    [-Command] <String>
    [[-Option] <PSTraceSourceOptions>]
    [-InputObject <PSObject>]
    [-ArgumentList <Object[]>]
    [-ListenerOption <TraceOptions>]
    [-FilePath <String>]
    [-Force]
    [-Debugger]
    [-PSHost]
    [<CommonParameters>]

Description

L’applet de commande trace-command configure et démarre une trace de l’expression ou de la commande spécifiée. Elle fonctionne comme Set-TraceSource, sauf qu’elle s’applique uniquement à la commande spécifiée.

Exemples

Exemple 1 : Suivi du traitement des métadonnées, de la liaison de paramètres et d’une expression

PS C:\> Trace-Command -Name metadata,parameterbinding,cmdlet -Expression {Get-Process Notepad} -PSHost

Cette commande démarre une trace du traitement des métadonnées, de la liaison de paramètres et de la création et de la destruction de l’expression Get-Process Notepad. Il utilise le paramètre Name pour spécifier les sources de trace, le paramètre Expression pour spécifier la commande et le paramètre PSHost pour envoyer la sortie à la console. Étant donné qu’elle ne spécifie pas d’options de suivi ou d’écouteur, la commande utilise les options de suivi par défaut :-All pour les options de suivi et None pour les options d’écouteur.

Exemple 2 : Suivre les actions des opérations ParameterBinding

PS C:\> $A = "i*"
PS C:\> Trace-Command ParameterBinding {Get-Alias $Input} -PSHost -InputObject $A

Ces commandes tracent les actions des opérations ParameterBinding de Windows PowerShell pendant qu’elles traitent une expression Get-Alias qui prend l’entrée du pipeline.

Dans Trace-Command, le paramètre InputObject transmet un objet à l’expression en cours de traitement pendant la trace.

La première commande stocke la chaîne « i* » dans la variable $A. La deuxième commande utilise l’applet de commande Trace-Command avec la source de trace ParameterBinding. Le paramètre PSHost envoie la sortie à la console.

L’expression en cours de traitement est Get-Alias $Input, où la variable $Input est associée au paramètre InputObject. Le paramètre InputObject transmet la variable $A à l’expression. En effet, la commande en cours de traitement pendant la trace est Get-Alias -InputObject $A" or "$A | Get-Alias.

Paramètres

-ArgumentList

Spécifie les paramètres et les valeurs de paramètre de la commande en cours de suivi. L’alias de ArgumentList est . Cette fonctionnalité est particulièrement utile pour le débogage des paramètres dynamiques.

Propriétés du paramètre

Type:

Object[]

Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False
Alias:Args

Jeux de paramètres

commandSet
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Command

Spécifie une commande en cours de traitement pendant la trace.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

commandSet
Position:1
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Debugger

Indique que l’applet de commande envoie la sortie de trace au débogueur. Vous pouvez afficher la sortie dans n’importe quel débogueur en mode utilisateur ou en mode noyau ou dans Visual Studio. Ce paramètre sélectionne également l’écouteur de trace par défaut.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Expression

Spécifie l’expression en cours de traitement pendant la trace. Placez l’expression dans des accolades ({}).

Propriétés du paramètre

Type:ScriptBlock
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

expressionSet
Position:1
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-FilePath

Spécifie un fichier auquel l’applet de commande envoie la sortie de trace. Ce paramètre sélectionne également l’écouteur de trace de fichier.

Propriétés du paramètre

Type:String
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False
Alias:PSPath

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Force

Force l’exécution de la commande sans demander la confirmation de l’utilisateur. Utilisé avec le paramètre FilePath. Même en utilisant le paramètre Force, l’applet de commande ne peut pas contourner les restrictions de sécurité.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-InputObject

Spécifie l’entrée de l’expression en cours de traitement pendant la trace.

Vous pouvez entrer une variable qui représente l’entrée que l’expression accepte ou transmettre un objet via le pipeline.

Propriétés du paramètre

Type:PSObject
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:True
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-ListenerOption

Spécifie les données facultatives au préfixe de chaque message de trace dans la sortie. Les valeurs acceptables pour ce paramètre sont les suivantes :

  • Aucun
  • LogicalOperationStack
  • Date et heure
  • Timestamp
  • ProcessId
  • ThreadId
  • Pile d’appels

Aucun n’est la valeur par défaut.

Pour spécifier plusieurs options, séparez-les par des virgules, mais sans espaces, puis placez-les entre guillemets, tels que « ProcessID, ThreadID ».

Propriétés du paramètre

Type:TraceOptions
Valeur par défaut:None
Valeurs acceptées:None, LogicalOperationStack, DateTime, Timestamp, ProcessId, ThreadId, Callstack
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Name

Spécifie un tableau de composants Windows PowerShell qui sont suivis. Entrez le nom de la source de trace de chaque composant. Les caractères génériques sont autorisés. Pour rechercher les sources de trace sur votre ordinateur, tapez Get-TraceSource.

Propriétés du paramètre

Type:

String[]

Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:0
Obligatoire:True
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-Option

Spécifie le type d’événements suivis. Les valeurs acceptables pour ce paramètre sont les suivantes :

  • Aucun
  • Constructeur
  • Se débarrasser de
  • Finaliseur
  • Méthode
  • Propriété
  • Délégués
  • Événements
  • Cas d'exception
  • Verrouillage
  • Erreur
  • Erreurs
  • Avertissement
  • Verbeux
  • WriteLine
  • Données
  • Étendue
  • Flux d’exécution
  • Assert
  • Tous

« All » est la valeur par défaut.

Les valeurs suivantes sont des combinaisons d’autres valeurs :

  • ExecutionFlow : (Constructeur, Dispose, Finaliser, Méthode, Délégués, Événements et Étendue)
  • Données : (Constructeur, Dispose, Finaliser, Property, Verbose et WriteLine)
  • Erreurs : (Erreur et exception).

Pour spécifier plusieurs options, séparez-les par des virgules, mais sans espaces, puis placez-les entre guillemets, tels que « Constructeur, Dispose ».

Propriétés du paramètre

Type:PSTraceSourceOptions
Valeur par défaut:None
Valeurs acceptées:None, Constructor, Dispose, Finalizer, Method, Property, Delegates, Events, Exception, Lock, Error, Errors, Warning, Verbose, WriteLine, Data, Scope, ExecutionFlow, Assert, All
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:2
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

-PSHost

Indique que l’applet de commande envoie la sortie de trace à l’hôte Windows PowerShell. Ce paramètre sélectionne également l’écouteur de trace PSHost.

Propriétés du paramètre

Type:SwitchParameter
Valeur par défaut:None
Prend en charge les caractères génériques:False
DontShow:False

Jeux de paramètres

(All)
Position:Named
Obligatoire:False
Valeur du pipeline:False
Valeur du pipeline par nom de propriété:False
Valeur des arguments restants:False

CommonParameters

Cette applet de commande prend en charge les paramètres courants : -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction et -WarningVariable. Pour plus d’informations, consultez about_CommonParameters.

Entrées

PSObject

Vous pouvez diriger des objets qui représentent une entrée vers l’expression pour Trace-Command .

Sorties

PSObject

Retourne la trace de commande dans le flux de débogage.

Notes

  • Le suivi est une méthode que les développeurs utilisent pour déboguer et affiner les programmes. Lors du suivi, le programme génère des messages détaillés sur chaque étape de son traitement interne.

  • Les applets de commande de suivi Windows PowerShell sont conçues pour aider les développeurs Windows PowerShell, mais ils sont disponibles pour tous les utilisateurs. Ils vous permettent de surveiller presque tous les aspects des fonctionnalités de l’interpréteur de commandes.

  • Pour rechercher les composants Windows PowerShell activés pour le suivi, tapez Get-Help Get-TraceSource.

    Une source de trace fait partie de chaque composant Windows PowerShell qui gère le suivi et génère des messages de suivi pour le composant. Pour tracer un composant, vous identifiez sa source de trace.

    Un écouteur de trace reçoit la sortie de la trace et l’affiche à l’utilisateur. Vous pouvez choisir d’envoyer les données de trace à un débogueur en mode utilisateur ou en mode noyau, à l’hôte ou à la console, à un fichier ou à un écouteur personnalisé dérivé de la classe System.Diagnostics.TraceListener.

  • Lorsque vous utilisez le jeu de paramètres commandSet, Windows PowerShell traite la commande comme elle serait traitée dans un pipeline. Par exemple, la découverte de commandes n’est pas répétée pour chaque objet entrant.

  • Les noms desnom de ,d’expression , optionet paramètres de de commande sont facultatifs. Si vous omettez les noms de paramètres, les valeurs de paramètre non nommées doivent apparaître dans cet ordre : Nom, Expression, Option ou Nom, Commande, Option. Si vous incluez les noms de paramètres, les paramètres peuvent apparaître dans n’importe quel ordre.