Trace Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Fournit un ensemble de méthodes et de propriétés qui vous permettent de tracer l'exécution de votre code. Cette classe ne peut pas être héritée.
public ref class Trace sealed
public sealed class Trace
type Trace = class
Public NotInheritable Class Trace
- Héritage
-
Trace
Exemples
L’exemple suivant utilise Trace pour indiquer le début et la fin de l’exécution d’un programme. L’exemple utilise également les méthodes et Trace.Unindent les Trace.Indent méthodes pour distinguer la sortie de suivi. Pour obtenir un exemple plus complet de l’utilisation de , consultez Guide pratique pour ajouter des instructions deTrace trace au code d’application.
// Specify /d:TRACE when compiling.
using System;
using System.Diagnostics;
class Test
{
static void Main()
{
Trace.Listeners.Add(new TextWriterTraceListener(Console.Out));
Trace.AutoFlush = true;
Trace.Indent();
Trace.WriteLine("Entering Main");
Console.WriteLine("Hello World.");
Trace.WriteLine("Exiting Main");
Trace.Unindent();
}
}
' Specify /d:TRACE=True when compiling.
Imports System.Diagnostics
Class Test
Shared Sub Main()
Trace.Listeners.Add(New TextWriterTraceListener(Console.Out))
Trace.AutoFlush = True
Trace.Indent()
Trace.WriteLine("Entering Main")
Console.WriteLine("Hello World.")
Trace.WriteLine("Exiting Main")
Trace.Unindent()
End Sub
End Class
Remarques
Vous pouvez utiliser les propriétés et méthodes de la Trace classe pour instrumenter les builds de mise en production. L’instrumentation vous permet de surveiller l’intégrité de votre application s’exécutant dans des paramètres réels. Le suivi vous aide à isoler les problèmes et à les résoudre sans déranger un système en cours d’exécution.
Cette classe fournit des méthodes pour afficher une Assert boîte de dialogue et émettre une assertion qui sera toujours Fail. Cette classe fournit des méthodes d’écriture dans les variantes suivantes :
Les BooleanSwitch classes et TraceSwitch les classes fournissent des moyens de contrôler dynamiquement la sortie de suivi. Dans .NET applications Framework, vous pouvez modifier les valeurs de ces commutateurs sans recompiler votre application. Pour plus d’informations sur l’utilisation du fichier de configuration pour définir un commutateur dans une application .NET Framework, consultez la classe Switch et How to : Create, Initialize et Configure Trace Switch.
Vous pouvez personnaliser la cible de la sortie de suivi en ajoutant TraceListener ou en supprimant des instances de la Listeners collection. La Listeners collection est partagée à la fois par les classes et par l’ajout DebugTrace d’un écouteur de trace à l’une ou l’autre classe ajoute l’écouteur aux deux. Par défaut, la sortie de trace est émise à l’aide de la DefaultTraceListener classe.
Note
L’ajout d’un écouteur de trace à la Listeners collection peut entraîner la levée d’une exception lors du suivi, si une ressource utilisée par l’écouteur de suivi n’est pas disponible. Les conditions et l’exception levée dépendent de l’écouteur de trace et ne peuvent pas être énumérées dans cette rubrique. Il peut être utile de placer des appels aux Trace méthodes dans try/catch des blocs pour détecter et gérer les exceptions des écouteurs de trace.
Note
Si vous ajoutez des écouteurs de suivi à du code partiellement approuvé, vous obtiendrez une SecurityException exception, car l’ajout d’écouteurs de suivi nécessite UnmanagedCode une autorisation. Pour suivre du code partiellement approuvé qui s’exécute dans un bac à sable dans Visual Studio, n’ajoutez pas d’écouteurs de trace. Au lieu de cela, affichez les messages et Debug les Trace messages dans la fenêtre Sortie.
La Trace classe fournit des propriétés pour obtenir ou définir le niveau et Indent le IndentSizeniveau , et s’il faut AutoFlush le faire après chaque écriture.
Dans les applications .NET Framework, vous pouvez définir les AutoFlush et IndentSize pour Trace en modifiant le fichier de configuration correspondant au nom de votre application. Le fichier de configuration doit être mis en forme comme dans l’exemple suivant :
<configuration>
<system.diagnostics>
<trace autoflush="false" indentsize="3" />
</system.diagnostics>
</configuration>
L’attribut ConditionalAttribute est appliqué aux méthodes de Trace. Les compilateurs qui prennent en charge ConditionalAttribute l’ignorer les appels à ces méthodes, sauf s’ils TRACE sont définis comme symbole de compilation conditionnelle. Reportez-vous à la documentation d’un compilateur pour déterminer si ConditionalAttribute elle est prise en charge et la syntaxe permettant de définir un symbole de compilation conditionnelle.
Note
Dans Visual Studio projets, par défaut, le symbole de compilation conditionnelle DEBUG est défini pour les builds de débogage, et le symbole TRACE est défini pour les builds de débogage et de mise en production.
Pour définir le TRACE symbole de compilation conditionnelle en C#, ajoutez l’option /d:TRACE à la ligne de commande du compilateur lorsque vous compilez votre code à l’aide d’une ligne de commande ou ajoutez-y #define TRACE en haut de votre fichier. Dans Visual Basic, ajoutez l’option /d:TRACE=True à la ligne de commande du compilateur ou ajoutez-y #Const TRACE=True .
ConditionalAttribute n’est pas pris en charge par le compilateur C++. Pour fournir des fonctionnalités équivalentes, vous devez placer des appels aux méthodes d’un Trace#if defined(TRACE) ... #endif bloc et ajouter l’option /DTRACE à la ligne de commande du compilateur ou ajouter #define TRACE au fichier.
Propriétés
| Nom | Description |
|---|---|
| AutoFlush |
Obtient ou définit si Flush() elle doit être appelée après Listeners chaque écriture. |
| CorrelationManager |
Obtient le gestionnaire de corrélation pour le thread de cette trace. |
| IndentLevel |
Obtient ou définit le niveau de retrait. |
| IndentSize |
Obtient ou définit le nombre d’espaces dans un retrait. |
| Listeners |
Obtient la collection d’écouteurs qui surveillent la sortie de trace. |
| UseGlobalLock |
Obtient ou définit une valeur indiquant si le verrou global doit être utilisé. |
Méthodes
| Nom | Description |
|---|---|
| Assert(Boolean, String, String) |
Recherche une condition ; si la condition est |
| Assert(Boolean, String) |
Recherche une condition ; si la condition est |
| Assert(Boolean) |
Recherche une condition ; si la condition est |
| Close() |
Vide la mémoire tampon de sortie, puis ferme le Listeners. |
| Equals(Object) |
Détermine si l’objet spécifié est égal à l’objet actuel. (Hérité de Object) |
| Fail(String, String) |
Émet un message d’erreur et un message d’erreur détaillé. |
| Fail(String) |
Émet le message d’erreur spécifié. |
| Flush() |
Vide la mémoire tampon de sortie et provoque l’écriture des données mises en mémoire tampon dans le Listeners. |
| GetHashCode() |
Sert de fonction de hachage par défaut. (Hérité de Object) |
| GetType() |
Obtient la Type de l’instance actuelle. (Hérité de Object) |
| Indent() |
Augmente le courant IndentLevel d’un. |
| MemberwiseClone() |
Crée une copie superficielle du Objectactuel. (Hérité de Object) |
| Refresh() |
Actualise les données de configuration de trace. |
| ToString() |
Retourne une chaîne qui représente l’objet actuel. (Hérité de Object) |
| TraceError(String, Object[]) |
Écrit un message d’erreur dans les écouteurs de trace dans la collection à l’aide Listeners du tableau d’objets spécifié et des informations de mise en forme. |
| TraceError(String) |
Écrit un message d’erreur dans les écouteurs de trace dans la collection à l’aide Listeners du message spécifié. |
| TraceInformation(String, Object[]) |
Écrit un message d’information dans les écouteurs de trace de la collection à l’aide du Listeners tableau d’objets spécifié et des informations de mise en forme. |
| TraceInformation(String) |
Écrit un message d’information dans les écouteurs de trace de la collection à l’aide Listeners du message spécifié. |
| TraceWarning(String, Object[]) |
Écrit un message d’avertissement dans les écouteurs de trace dans la collection à l’aide Listeners du tableau d’objets spécifié et des informations de mise en forme. |
| TraceWarning(String) |
Écrit un message d’avertissement dans les écouteurs de trace dans la collection à l’aide Listeners du message spécifié. |
| Unindent() |
Diminue le courant IndentLevel d’un. |
| Write(Object, String) |
Écrit un nom de catégorie et la valeur de la méthode ToString() de l’objet dans les écouteurs de trace de la collection Listeners. |
| Write(Object) |
Écrit la valeur de la méthode ToString() de l’objet dans les écouteurs de trace dans la collection Listeners. |
| Write(String, String) |
Écrit un nom de catégorie et un message dans les écouteurs de trace dans la Listeners collection. |
| Write(String) |
Écrit un message dans les écouteurs de trace dans la Listeners collection. |
| WriteIf(Boolean, Object, String) |
Écrit un nom de catégorie et la valeur de la méthode de ToString() l’objet dans les écouteurs de trace de la Listeners collection si une condition est |
| WriteIf(Boolean, Object) |
Écrit la valeur de la méthode de ToString() l’objet dans les écouteurs de trace de la Listeners collection si une condition est |
| WriteIf(Boolean, String, String) |
Écrit un nom de catégorie et un message dans les écouteurs de trace dans la Listeners collection si une condition est |
| WriteIf(Boolean, String) |
Écrit un message dans les écouteurs de trace dans la Listeners collection si une condition est |
| WriteLine(Object, String) |
Écrit un nom de catégorie et la valeur de la méthode ToString() de l’objet dans les écouteurs de trace de la collection Listeners. |
| WriteLine(Object) |
Écrit la valeur de la méthode ToString() de l’objet dans les écouteurs de trace dans la collection Listeners. |
| WriteLine(String, String) |
Écrit un nom de catégorie et un message dans les écouteurs de trace dans la collection Listeners. |
| WriteLine(String) |
Écrit un message dans les écouteurs de trace dans la Listeners collection. |
| WriteLineIf(Boolean, Object, String) |
Écrit un nom de catégorie et la valeur de la méthode de ToString() l’objet dans les écouteurs de trace de la Listeners collection si une condition est |
| WriteLineIf(Boolean, Object) |
Écrit la valeur de la méthode de ToString() l’objet dans les écouteurs de trace de la Listeners collection si une condition est |
| WriteLineIf(Boolean, String, String) |
Écrit un nom de catégorie et un message dans les écouteurs de trace dans la Listeners collection si une condition est |
| WriteLineIf(Boolean, String) |
Écrit un message dans les écouteurs de trace dans la Listeners collection si une condition est |
S’applique à
Cohérence de thread
Ce type est thread safe.