System.Diagnostics Espace de noms

Fournit des classes qui vous permettent d’interagir avec les processus système, les journaux d’événements et les compteurs de performances.

Classes

Activity

Représente une opération avec le contexte à utiliser pour la journalisation.

ActivityListener

Permet d’écouter les événements de démarrage et d’arrêt de l’activité et donne la possibilité de décider de créer une activité pour les scénarios d’échantillonnage.

ActivitySource

Fournit des API pour créer et démarrer des objets Activity et inscrire des objets ActivityListener pour écouter les événements Activity.

ActivityTagsCollection

ActivityTagsCollection est une classe de collection utilisée pour stocker les balises de suivi.

Cette collection sera utilisée avec des classes telles que ActivityEvent et ActivityLink.

Cette collection se comporte comme suit :

  • Les éléments de collection sont classés en fonction de la façon dont ils sont ajoutés.
  • N’autorisez pas la duplication d’éléments avec la même clé.
  • Lorsque vous utilisez l’indexeur pour stocker un élément dans la collection :
    • Si l’élément a une clé qui existait précédemment dans la collection et que la valeur est null, l’élément de collection correspondant à la clé est supprimé de la collection.
    • Si l’élément a une clé qui existait précédemment dans la collection et que la valeur n’est pas null, la nouvelle valeur d’élément remplace l’ancienne valeur stockée dans la collection.
    • Sinon, l’élément sera ajouté à la collection.
  • Ajouter une méthode ajoute un nouvel élément à la collection si un élément n’existe pas déjà avec la même clé. Sinon, elle lève une exception.
BooleanSwitch

Fournit un commutateur simple activé/désactivé qui contrôle le débogage et la sortie de suivi.

ConditionalAttribute

Indique aux compilateurs qu’un appel de méthode ou un attribut doit être ignoré, sauf si un symbole de compilation conditionnelle spécifié est défini.

ConsoleTraceListener

Dirige le suivi ou le débogage de la sortie vers la sortie standard ou le flux d’erreur standard.

CorrelationManager

Met en corrélation les traces qui font partie d’une transaction logique.

CounterCreationData

Définit le type, le nom et la chaîne d’aide d’un compteur personnalisé.

CounterCreationDataCollection

Fournit une collection fortement typée d’objets CounterCreationData.

CounterSampleCalculator

Fournit un ensemble de fonctions utilitaires pour interpréter les données de compteur de performances.

DataReceivedEventArgs

Fournit des données pour les événements OutputDataReceived et ErrorDataReceived.

Debug

Fournit un ensemble de méthodes et de propriétés qui aident à déboguer votre code.

DebuggableAttribute

Modifie la génération de code pour le débogage juste-à-temps (JIT) du runtime. Cette classe ne peut pas être héritée.

Debugger

Active la communication avec un débogueur. Cette classe ne peut pas être héritée.

DebuggerBrowsableAttribute

Détermine si et comment un membre est affiché dans les fenêtres de variables du débogueur. Cette classe ne peut pas être héritée.

DebuggerDisableUserUnhandledExceptionsAttribute

Si un débogueur .NET est attaché qui prend en charge l’API BreakForUserUnhandledException(Exception), le débogueur ne s’arrête pas sur les exceptions non gérées par l’utilisateur lorsque l’exception est interceptée par une méthode avec cet attribut, sauf si BreakForUserUnhandledException(Exception) est appelée.

DebuggerDisplayAttribute

Détermine le mode d’affichage d’une classe ou d’un champ dans les fenêtres de variables du débogueur.

DebuggerHiddenAttribute

Spécifie le DebuggerHiddenAttribute. Cette classe ne peut pas être héritée.

DebuggerNonUserCodeAttribute

Identifie un type ou un membre qui ne fait pas partie du code utilisateur d’une application.

DebuggerStepperBoundaryAttribute

Indique que le code suivant l’attribut doit être exécuté en cours d’exécution, et non pas en mode étape.

DebuggerStepThroughAttribute

Indique au débogueur de parcourir le code au lieu d’effectuer un pas à pas dans le code. Cette classe ne peut pas être héritée.

DebuggerTypeProxyAttribute

Spécifie le proxy d’affichage d’un type.

DebuggerVisualizerAttribute

Spécifie que le type a un visualiseur. Cette classe ne peut pas être héritée.

DefaultTraceListener

Fournit les méthodes de sortie et le comportement par défaut pour le suivi.

DelimitedListTraceListener

Dirige le suivi ou le débogage de sortie vers un enregistreur de texte, tel qu’un enregistreur de flux ou vers un flux, tel qu’un flux de fichiers.

DiagnosticListener

Fournit une implémentation de la classe DiagnosticSource abstraite qui représente un emplacement nommé auquel une source envoie ses informations (événements).

DiagnosticListenerExtensions

Fournit des classes qui vous permettent d’interagir avec les processus système, les journaux d’événements et les compteurs de performances.

DiagnosticMethodInfo

Représente des informations de diagnostic sur une méthode. Les informations fournies par cette classe sont similaires aux informations

fourni par MethodBase, mais il est destiné à des fins de journalisation et de suivi.

DiagnosticsConfigurationHandler

Gère la section diagnostics des fichiers de configuration.

DiagnosticSource

Classe abstraite qui permet au code d’être instrumenté pour la journalisation au moment de la production de charges utiles de données enrichies pour la consommation dans le processus instrumenté.

DistributedContextPropagator

Une implémentation de DistributedContextPropagator détermine si et comment les informations de contexte distribuées sont encodées et décodées lorsqu’elles transitent par le réseau. L’encodage peut être transporté sur n’importe quel protocole réseau qui prend en charge les paires clé-valeur de chaîne. Par exemple, lors de l’utilisation de HTTP, chaque paire clé-valeur est un en-tête HTTP. DistributedContextPropagator injecte des valeurs dans et extrait des valeurs des opérateurs en tant que paires clé-valeur de chaîne.

EntryWrittenEventArgs

Fournit des données pour l’événement EntryWritten.

EventInstance

Représente des informations neutres en langage pour une entrée de journal des événements.

EventLog

Fournit une interaction avec les journaux des événements Windows.

EventLogEntry

Encapsule un enregistrement unique dans le journal des événements. Cette classe ne peut pas être héritée.

EventLogEntryCollection

Définit la taille et les énumérateurs pour une collection d’instances EventLogEntry.

EventLogInstaller

Vous permet d’installer et de configurer un journal des événements dans lequel votre application lit ou écrit quand elle est en cours d’exécution.

EventLogPermission

Contrôle les autorisations d’accès au code pour la journalisation des événements.

EventLogPermissionAttribute

Autorise les vérifications d’autorisation déclaratives pour la journalisation des événements.

EventLogPermissionEntry

Définit la plus petite unité d’une autorisation de sécurité d’accès au code définie pour un EventLog.

EventLogPermissionEntryCollection

Contient une collection fortement typée d’objets EventLogPermissionEntry.

EventLogTraceListener

Fournit un écouteur simple qui dirige le suivi ou le débogage de sortie vers un EventLog.

EventSchemaTraceListener

Dirige le suivi ou le débogage de sortie d’événements de bout en bout vers un fichier journal conforme au schéma xml.

EventSourceCreationData

Représente les paramètres de configuration utilisés pour créer une source du journal des événements sur l’ordinateur local ou un ordinateur distant.

EventTypeFilter

Indique si un écouteur doit suivre en fonction du type d’événement.

FileVersionInfo

Fournit des informations de version pour un fichier physique sur le disque.

InitializingSwitchEventArgs

Fournit des données pour l’événement Switch.Initializing.

InitializingTraceSourceEventArgs

Fournit des données pour l’événement TraceSource.Initializing.

InstanceData

Contient les données d’instance associées à un exemple de compteur de performances.

InstanceDataCollection

Fournit une collection fortement typée d’objets InstanceData.

InstanceDataCollectionCollection

Fournit une collection fortement typée d’objets InstanceDataCollection.

MonitoringDescriptionAttribute

Spécifie une description pour une propriété ou un événement.

PerformanceCounter

Représente un composant de compteur de performances Windows NT.

PerformanceCounterCategory

Représente un objet de performances, qui définit une catégorie de compteurs de performances.

PerformanceCounterInstaller

Spécifie un programme d’installation pour le composant PerformanceCounter.

PerformanceCounterManager

Prépare les données de performances de l'performance.dll le système se charge lors de l’utilisation des compteurs de performances.

PerformanceCounterPermission

Autorise le contrôle des autorisations d’accès au code pour PerformanceCounter.

PerformanceCounterPermissionAttribute

Autorise les vérifications d’autorisation de compteur de performances déclaratives.

PerformanceCounterPermissionEntry

Définit la plus petite unité d’une autorisation de sécurité d’accès au code définie pour un PerformanceCounter.

PerformanceCounterPermissionEntryCollection

Contient une collection fortement typée d’objets PerformanceCounterPermissionEntry.

PresentationTraceSources

Fournit la prise en charge du traçage de débogage spécifiquement ciblée pour les applications WPF (Windows Presentation Foundation).

Process

Fournit l’accès aux processus locaux et distants et vous permet de démarrer et d’arrêter les processus système locaux.

ProcessModule

Représente un fichier .dll ou .exe chargé dans un processus particulier.

ProcessModuleCollection

Fournit une collection fortement typée d’objets ProcessModule.

ProcessStartInfo

Spécifie un ensemble de valeurs utilisées lors du démarrage d’un processus.

ProcessThread

Représente un thread de processus de système d’exploitation.

ProcessThreadCollection

Fournit une collection fortement typée d’objets ProcessThread.

SourceFilter

Indique si un écouteur doit suivre un message en fonction de la source d’une trace.

SourceSwitch

Fournit un commutateur à plusieurs niveaux pour contrôler le suivi et la sortie de débogage sans recompiler votre code.

StackFrame

Fournit des informations sur un StackFrame, qui représente un appel de fonction sur la pile des appels pour le thread actuel.

StackFrameExtensions

Fournit des méthodes d’extension pour la classe StackFrame, qui représente un appel de fonction sur la pile des appels pour le thread actuel.

StackTrace

Représente une trace de pile, qui est une collection ordonnée d’une ou plusieurs trames de pile.

StackTraceHiddenAttribute

Les types et méthodes attribués avec StackTraceHidden sont omis à partir du texte de trace de pile affiché dans StackTrace.ToString() et Exception.StackTrace

Stopwatch

Fournit un ensemble de méthodes et de propriétés que vous pouvez utiliser pour mesurer avec précision le temps écoulé.

Switch

Fournit une classe de base abstraite pour créer de nouveaux commutateurs de débogage et de suivi.

SwitchAttribute

Identifie un commutateur utilisé dans un assembly, une classe ou un membre.

SwitchLevelAttribute

Identifie le type de niveau d’un commutateur.

TextWriterTraceListener

Dirige le suivi ou le débogage de sortie vers un TextWriter ou vers un Stream, tel que FileStream.

Trace

Fournit un ensemble de méthodes et de propriétés qui vous aident à suivre l’exécution de votre code. Cette classe ne peut pas être héritée.

TraceConfiguration

Fournit des classes qui vous permettent d’interagir avec les processus système, les journaux d’événements et les compteurs de performances.

TraceEventCache

Fournit des données d’événement de trace spécifiques à un thread et à un processus.

TraceFilter

Fournit la classe de base pour les implémentations de filtre de trace.

TraceListener

Fournit la classe de base abstract pour les écouteurs qui surveillent la sortie de trace et de débogage.

TraceListenerCollection

Fournit une liste thread-safe d’objets TraceListener.

TraceSource

Fournit un ensemble de méthodes et de propriétés qui permettent aux applications de suivre l’exécution du code et d’associer des messages de trace à leur source.

TraceSwitch

Fournit un commutateur à plusieurs niveaux pour contrôler le suivi et la sortie de débogage sans recompiler votre code.

UnescapedXmlDiagnosticData

Fournit des données XML non boucées pour la journalisation des données de trace fournies par l’utilisateur.

UnreachableException

Exception levée lorsque le programme exécute une instruction qui était considérée comme inaccessible.

XmlWriterTraceListener

Dirige le suivi ou le débogage de sortie en tant que données encodées XML vers un TextWriter ou vers un Stream, tel qu’un FileStream.

Structures

Activity.Enumerator<T>

Énumère les données stockées sur un objet Activity.

ActivityChangedEventArgs

Fournit des données pour l’événement CurrentChanged.

ActivityContext

Représentation conforme à la spécification W3C TraceContext. Il contient deux identificateurs : un TraceId et un SpanId, ainsi qu’un ensemble de valeurs TraceFlags et TraceState spécifiques au système.

ActivityCreationOptions<T>

Encapsule toutes les informations envoyées à l’écouteur d’activité, pour prendre des décisions sur la création de l’instance d’activité, ainsi que son état.

Les paramètres de type générique possibles sont ActivityContext ou String.

ActivityEvent

Représente un événement contenant un nom et un horodatage, ainsi qu’une liste facultative de balises.

ActivityLink

Les activités peuvent être liées à zéro ou plusieurs instances de contexte d’activité qui sont liées de manière causale.

Les liens d’activité peuvent pointer vers des contextes d’activité à l’intérieur d’une seule trace ou entre différentes traces.

Les liens d’activité peuvent être utilisés pour représenter les opérations par lots où une activité a été lancée par plusieurs activités de lancement, chacune représentant un seul élément entrant en cours de traitement dans le lot.

ActivitySpanId

Représente une SpanId mise en forme basée sur une norme W3C.

ActivityTagsCollection.Enumerator

Énumère les éléments d’une ActivityTagsCollection.

ActivityTraceId

Représente un TraceId dont le format est basé sur une norme W3C.

CounterSample

Définit une structure qui contient les données brutes d’un compteur de performances.

Debug.AssertInterpolatedStringHandler

Fournit un gestionnaire de chaînes interpolé pour Assert(Boolean) qui effectue uniquement la mise en forme si l’assertion échoue.

Debug.WriteIfInterpolatedStringHandler

Fournit un gestionnaire de chaînes interpolé pour WriteIf(Boolean, String) et WriteLineIf(Boolean, Object) qui effectue uniquement la mise en forme si la condition s’applique.

TagList

Représente une liste de balises accessibles par index. Fournit des méthodes pour rechercher, trier et manipuler des listes.

TagList.Enumerator

Énumérateur pour parcourir une collection de listes de balises.

Interfaces

ICollectData

Prépare les données de performances pour la DLL de performances que le système charge lors de l’utilisation des compteurs de performances.

Énumérations

ActivityIdFormat

Spécifie le format de la propriété Id.

ActivityKind

Décrit la relation entre l’activité, ses parents et ses enfants dans une trace.

ActivitySamplingResult

Valeurs d’énumération utilisées par ActivityListener pour indiquer la quantité de données à collecter pour la Activityassociée. La demande de données supplémentaires entraîne une surcharge de performances accrue.

ActivityStatusCode

Définissez le code d’état de l’activité qui indique l’état de l’opération instrumentée.

ActivityTraceFlags

Spécifie les indicateurs définis par la norme W3C associées à une activité.

DebuggableAttribute.DebuggingModes

Spécifie le mode de débogage pour le compilateur juste-à-temps (JIT).

DebuggerBrowsableState

Fournit des instructions d’affichage pour le débogueur.

EventLogEntryType

Spécifie le type d’événement d’une entrée de journal des événements.

EventLogPermissionAccess

Définit les niveaux d’accès utilisés par EventLog classes d’autorisation.

OverflowAction

Spécifie comment gérer les entrées dans un journal des événements ayant atteint sa taille de fichier maximale.

PerformanceCounterCategoryType

Indique si la catégorie de compteur de performances peut avoir plusieurs instances.

PerformanceCounterInstanceLifetime

Spécifie la durée de vie d’une instance de compteur de performances.

PerformanceCounterPermissionAccess

Définit les niveaux d’accès utilisés par PerformanceCounter classes d’autorisation.

PerformanceCounterType

Spécifie les types de compteurs de performances qui mappent directement aux types natifs.

PresentationTraceLevel

Décrit le niveau de détail à suivre sur un objet particulier.

ProcessPriorityClass

Indique la priorité que le système associe à un processus. Cette valeur, ainsi que la valeur de priorité de chaque thread du processus, détermine le niveau de priorité de base de chaque thread.

ProcessWindowStyle

Spécifie la façon dont une nouvelle fenêtre doit apparaître lorsque le système démarre un processus.

SourceLevels

Spécifie les niveaux des messages de trace filtrés par le commutateur source et le filtre de type d’événement.

ThreadPriorityLevel

Spécifie le niveau de priorité d’un thread.

ThreadState

Spécifie l’état d’exécution actuel du thread.

ThreadWaitReason

Spécifie la raison pour laquelle un thread attend.

TraceEventType

Identifie le type d’événement qui a provoqué la trace.

TraceLevel

Spécifie les messages à générer pour les classes Debug, Trace et TraceSwitch.

TraceLogRetentionOption

Spécifie la structure de fichiers qui sera utilisée pour le journal EventSchemaTraceListener.

TraceOptions

Spécifie les options de données de trace à écrire dans la sortie de trace.

Délégués

DataReceivedEventHandler

Représente la méthode qui gère l’événement OutputDataReceived ou l’événement ErrorDataReceived d’un Process.

DistributedContextPropagator.PropagatorGetterCallback

Représente la méthode de rappel utilisée dans les méthodes d’extraction des propagateurs. Le rappel est appelé pour rechercher la valeur d’un champ nommé.

DistributedContextPropagator.PropagatorSetterCallback

Représente la méthode de rappel utilisée dans les méthodes d’injection des propagateurs. Ce rappel est appelé pour définir la valeur d’un champ nommé. Les propageurs peuvent l’appeler plusieurs fois pour définir plusieurs champs.

EntryWrittenEventHandler

Représente la méthode qui gère l’événement EntryWritten d’un EventLog.

ExceptionRecorder

Fournit des classes qui vous permettent d’interagir avec les processus système, les journaux d’événements et les compteurs de performances.

SampleActivity<T>

Délégué qui définit la signature des rappels ActivityListener utilisés dans le processus d’échantillonnage.

Remarques

  • Le composant EventLog fournit des fonctionnalités permettant d’écrire dans les journaux des événements, de lire les entrées du journal des événements et de créer et supprimer des journaux d’événements et des sources d’événements sur le réseau. Le EntryWrittenEventHandler permet d’interagir de manière asynchrone avec les journaux d’événements. Les classes de prise en charge fournissent un accès à un contrôle plus détaillé, notamment les restrictions d’autorisation, la possibilité de spécifier des types de journaux d’événements (qui contrôlent le type de données par défaut écrites avec une entrée de journal des événements) et effectuent une itération via des collections d’entrées du journal des événements. Pour plus d’informations sur ces tâches, consultez les classes EventLogPermission, EventLogEntryTypeet EventLogEntryCollection.

  • La classe Process fournit des fonctionnalités permettant de surveiller les processus système sur le réseau et de démarrer et d’arrêter les processus système locaux. En plus de récupérer des listes de processus en cours d’exécution (en spécifiant l’ordinateur, le nom du processus ou l’ID de processus) ou en affichant des informations sur le processus qui a actuellement accès au processeur, vous pouvez obtenir des connaissances détaillées des threads de processus et des modules par le biais de la classe Process elle-même, et en interagissant avec les classes ProcessThread et ProcessModule. La classe ProcessStartInfo vous permet de spécifier divers éléments avec lesquels démarrer un nouveau processus, comme les flux d’entrée, de sortie et d’erreur, les répertoires de travail et les verbes et arguments de ligne de commande. Celles-ci vous donnent un contrôle précis sur le comportement de vos processus. D’autres classes associées vous permettent de spécifier des styles de fenêtre, des priorités de processus et de threads, et d’interagir avec des collections de threads et de modules.

  • La classe PerformanceCounter vous permet de surveiller les performances du système, tandis que la classe PerformanceCounterCategory permet de créer de nouveaux compteurs et catégories personnalisés. Vous pouvez écrire dans des compteurs personnalisés locaux et lire à partir de compteurs locaux et distants (système et personnalisé). Vous pouvez échantillonner des compteurs à l’aide de la classe PerformanceCounter et calculer les résultats à partir d’exemples de compteurs de performances successifs à l’aide de la classe CounterSample. La classe CounterCreationData vous permet de créer plusieurs compteurs dans une catégorie et de spécifier leurs types. D’autres classes associées au composant compteur de performances fournissent l’accès aux collections de compteurs, d’autorisations de compteur et de types de compteurs.

L’espace de noms System.Diagnostics fournit également des classes qui vous permettent de déboguer votre application et de suivre l’exécution de votre code. Pour plus d’informations, consultez les classes Trace et Debug.