Exemple 7 : Personnalisation du préfixe de message de trace
Chaque message de trace commence par un préfixe de message de trace composé de données sur le message de trace. Le format du préfixe de message de trace est stocké dans la variable d’environnement %TRACE_FORMAT_PREFIX%. En modifiant la valeur de la variable d’environnement, vous pouvez personnaliser le préfixe du message de trace pour afficher les données dont vous avez besoin sur le message de trace dans le format qui vous est le plus utile. Les variables dans le préfixe de message de trace par défaut et toutes les variables que vous pouvez utiliser dans un préfixe de message de trace sont décrites dans la rubrique Préfixe de message de trace.
L’affichage suivant montre le préfixe de message de trace par défaut. Les messages de trace ont été générés par Tracedrv, l’exemple de pilote activé pour la trace dans le Kit de pilotes Windows (WDK).
[0]0AF4.0C64::07/25/2003-14:55:39.998 [tracedrv]IOCTL = 1
[0]0AF4.0C64::07/25/2003-14:55:39.998 [tracedrv]Hello, 1 Hi
[0]0AF4.0C64::07/25/2003-14:55:39.998 [tracedrv]Hello, 2 Hi
...
Le format du préfixe par défaut est le suivant.
[%9!d!]%8!04X!.%3!04X!::%4!s! [%1!s!]
qui représente les données suivantes :
[CPUNumber]ProcessID.ThreadID::SystemTime [MessageGUIDFriendlyName]
où MessageGUIDFriendlyName est, par défaut, le nom du répertoire dans lequel le fournisseur de trace a été créé.
Pour créer un préfixe de message de trace, utilisez la commande set pour réinitialiser la valeur de la variable d’environnement %TRACE_FORMAT_PREFIX%. Par exemple,
set TRACE_FORMAT_PREFIX=%2!s!: %!FUNC!: %8!04x!.%3!04x!: %4!s!:
Cette commande définit le préfixe de message de trace au format suivant :
SourceFile_LineNumber: FunctionName: ProcessID.ThreadID: SystemTime
Par conséquent, la sortie Tracefmt utilise le nouveau préfixe de message de trace, comme illustré dans l’affichage suivant :
tracedrv_c258: TracedrvDispatchDeviceControl: 0af4.0c64: 07/25/2003-13:55:39.998: IOCTL = 1
tracedrv_c264: TracedrvDispatchDeviceControl: 0af4.0c64: 07/25/2003-13:55:39.998: Hello, 1 Hi
tracedrv_c264: TracedrvDispatchDeviceControl: 0af4.0c64: 07/25/2003-13:55:39.998: Hello, 2 Hi
tracedrv_c264: TracedrvDispatchDeviceControl: 0af4.0c64: 07/25/2003-13:55:39.998: Hello, 3 Hi
...
Note Si vous définissez le préfixe de trace dans un fichier de commandes ou de commandes, où le symbole de pourcentage représente une variable pour un paramètre de ligne de commande, utilisez deux symboles de pourcentage consécutifs pour les variables de préfixe. Par exemple, pour inclure l’heure système dans le préfixe, tapez %%4.