Partager via


Comment inclure le numéro de ligne source dans le préfixe de message de trace

WPP enregistre automatiquement les données relatives à chaque message de trace, dont une grande partie n’est pas affichée par défaut. Ces données incluent le nom de la fonction, le nom du fichier, le numéro de ligne source, le nom du composant, le nom du sous-composant et le niveau de trace du message de trace.

Pour afficher ces informations dans le préfixe de message de suivi qui précède chaque message de trace, ajoutez les variables de préfixe prédéfinies à la variable d’environnement %TRACE_FORMAT_PREFIX% . Tracefmt et d’autres consommateurs de trace utilisent %TRACE_FORMAT_PREFIX% lors de la mise en forme des messages de suivi.

Par exemple, pour ajouter le nom du composant, le nom de fonction, le nom de fichier et le numéro de ligne au préfixe de message de trace, ajoutez les variables suivantes à la valeur %TRACE_FORMAT_PREFIX% :

Variable Description
%! COMPNAME ! Ajoute le nom du composant.
%! FUNC! Ajoute le nom de la fonction.
%2 Ajoute le nom du fichier source et le numéro de ligne de l’instruction trace.

La variable %2 retourne la chaîne suivante :

filename_NNN

où le point (.) dans le nom de fichier est remplacé par un trait de soulignement (_) et NNN est le numéro de ligne.

L’exemple d’instruction SET suivant ajoute le % ! COMPNAME, % ! FUNC! et %2 variables à la valeur par défaut %TRACE_FORMAT_PREFIX %. Le sous-paramètre !s ! spécifie que la valeur de %2 est mise en forme sous forme de chaîne. Les variables ajoutées sont affichées en gras.

set TRACE\_FORMAT\_PREFIX="\[%9!d!\]%8!04X!.%3!04X!::%4!s! \[%1!s!\](**%!COMPNAME!**:**%!FUNC!**:**%2**!s!)"

Le préfixe résultant a le format suivant. Les nouveaux éléments sont affichés entre parenthèses.

[UCNumber] ProcessID. ThreadID ::SystemTime [MessageGUIDFriendlyName](ComponentName :FunctionName :Filename_LineNumber)

Pour obtenir un exemple détaillé, consultez Exemple 7 : Personnalisation du préfixe de message de trace. Pour obtenir la liste de toutes les variables prédéfinies qui peuvent apparaître dans le préfixe de message de trace, consultez Préfixe de message de trace.