System.Diagnostics Espacio de nombres

Proporciona clases que permiten interactuar con procesos del sistema, registros de eventos y contadores de rendimiento.

Clases

Nombre Description
Activity

Representa una operación con contexto que se usará para el registro.

ActivityListener

Permite detectar los eventos de inicio y detención de la actividad y decidir si crear una actividad en escenarios de muestreo.

ActivitySource

Proporciona API para crear e iniciar Activity objetos y registrar ActivityListener objetos para escuchar los Activity eventos.

ActivitySourceOptions

Opciones para crear un ActivitySource.

ActivityTagsCollection

ActivityTagsCollection es una clase de colección que se usa para almacenar etiquetas de seguimiento.

Esta colección se usará con clases como ActivityEvent y ActivityLink.

Esta colección se comporta de la siguiente manera:

  • Los elementos de la colección se ordenarán en función de cómo se agreguen.
  • No se permite la duplicación de elementos con la misma clave.
  • Al usar el indexador para almacenar un elemento en la colección:
    • Si el elemento tiene una clave que existía anteriormente en la colección y el valor es null, el elemento de colección que coincide con la clave se quitará de la colección.
    • Si el elemento tiene una clave que existía anteriormente en la colección y el valor no nulles , el nuevo valor del elemento reemplazará el valor anterior almacenado en la colección.
    • De lo contrario, el elemento se agregará a la colección.
  • El método Add agregará un elemento nuevo a la colección si todavía no existe un elemento con la misma clave. De lo contrario, se producirá una excepción.
BooleanSwitch

Proporciona un sencillo interruptor de activación/desactivación que controla la salida de depuración y rastreo.

ConditionalAttribute

Indica a los compiladores que se debe omitir una llamada al método o un atributo a menos que se defina un símbolo de compilación condicional especificado.

ConsoleTraceListener

Dirige la salida de rastreo o depuración a la salida estándar o al flujo de error estándar.

CorrelationManager

Correlaciona las trazas que forman parte de una transacción lógica.

CounterCreationData

Define el tipo de contador, el nombre y la cadena de ayuda de un contador personalizado.

CounterCreationDataCollection

Proporciona una colección fuertemente tipada de CounterCreationData objetos.

CounterSampleCalculator

Proporciona un conjunto de funciones de utilidad para interpretar los datos del contador de rendimiento.

DataReceivedEventArgs

Proporciona datos para los eventos OutputDataReceived y ErrorDataReceived.

Debug

Proporciona un conjunto de métodos y propiedades que ayudan a depurar el código.

DebuggableAttribute

Modifica la generación de código para la depuración Just-In-Time (JIT) en tiempo de ejecución. Esta clase no puede heredarse.

Debugger

Permite la comunicación con un depurador. Esta clase no puede heredarse.

DebuggerBrowsableAttribute

Determina si un miembro se muestra en las ventanas de variables del depurador y cómo se muestra. Esta clase no puede heredarse.

DebuggerDisableUserUnhandledExceptionsAttribute

Si se adjunta un depurador de .NET que admite la API de BreakForUserUnhandledException(Exception), el depurador no interrumpirá las excepciones no controladas por el usuario cuando un método detecte la excepción con este atributo, a menos que se llame a BreakForUserUnhandledException(Exception).

DebuggerDisplayAttribute

Determina cómo se muestran una clase o un campo en las ventanas de variables del depurador.

DebuggerHiddenAttribute

Especifica el DebuggerHiddenAttribute. Esta clase no puede heredarse.

DebuggerNonUserCodeAttribute

Identifica un tipo o un miembro que no forman parte del código de usuario de una aplicación.

DebuggerStepperBoundaryAttribute

Indica que el código después del atributo debe ejecutarse en modo de ejecución y no en modo paso a paso.

DebuggerStepThroughAttribute

Indica al depurador que avance por el código paso a paso en lugar de entrar en él. Esta clase no puede heredarse.

DebuggerTypeProxyAttribute

Especifica el proxy de presentación para un tipo.

DebuggerVisualizerAttribute

Especifica que el tipo tiene un visualizador. Esta clase no puede heredarse.

DefaultTraceListener

Proporciona los métodos de salida predeterminados y el comportamiento para el seguimiento.

DelimitedListTraceListener

Dirige los resultados de traza o de depuración a un escritor de texto, como un escritor de secuencias, o a una secuencia, como una secuencia de archivo.

DiagnosticListener

Proporciona una implementación de la clase abstracta DiagnosticSource que representa un lugar con nombre al que un origen envía su información (eventos).

DiagnosticListenerExtensions

Proporciona clases que permiten interactuar con procesos del sistema, registros de eventos y contadores de rendimiento.

DiagnosticMethodInfo

Representa información de diagnóstico sobre un método. La información proporcionada por esta clase es similar a la información

proporcionado por MethodBase , pero está diseñado para fines de registro y seguimiento.

DiagnosticsConfigurationHandler

Controla la sección de diagnóstico de los archivos de configuración.

DiagnosticSource

Clase abstracta que permite instrumentar código para registrar, durante la ejecución en producción, cargas útiles de datos enriquecidas para su consumo dentro del proceso instrumentado.

DistributedContextPropagator

Una implementación de DistributedContextPropagator determina si y cómo se codifica y descodifica la información de contexto distribuida a medida que atraviesa la red. La codificación se puede transportar mediante cualquier protocolo de red que admita pares clave-valor de cadena. Por ejemplo, cuando se usa HTTP, cada par clave-valor es un encabezado HTTP. DistributedContextPropagator inserta valores en y extrae valores de operadores como pares clave-valor de cadena.

EntryWrittenEventArgs

Proporciona datos para el evento EntryWritten.

EventInstance

Representa información independiente del idioma para una entrada del registro de eventos.

EventLog

Proporciona interacción con los registros de eventos de Windows.

EventLogEntry

Encapsula un único registro en el registro de eventos. Esta clase no puede heredarse.

EventLogEntryCollection

Define el tamaño y los enumeradores para una colección de EventLogEntry instancias.

EventLogInstaller

Permite instalar y configurar un registro de eventos en el que la aplicación lee o escribe cuando se ejecuta.

EventLogPermission

Controla los permisos de acceso de código para el registro de eventos.

EventLogPermissionAttribute

Permite comprobaciones de permisos declarativos para el registro de eventos.

EventLogPermissionEntry

Define la unidad más pequeña de un permiso de seguridad de acceso de código establecido para .EventLog

EventLogPermissionEntryCollection

Contiene una colección fuertemente tipada de EventLogPermissionEntry objetos.

EventLogTraceListener

Proporciona un agente de escucha simple que dirige la salida de seguimiento o depuración a .EventLog

EventSchemaTraceListener

Dirige la salida de seguimiento o depuración de eventos de un extremo a otro a un archivo de registro codificado con XML y compatible con el esquema.

EventSourceCreationData

Representa las opciones de configuración usadas para crear un origen de registro de eventos en el equipo local o en un equipo remoto.

EventTypeFilter

Indica si un agente de escucha debe realizar un seguimiento en función del tipo de evento.

FileVersionInfo

Proporciona información de versión para un archivo físico en el disco.

InitializingSwitchEventArgs

Proporciona datos para el evento Switch.Initializing .

InitializingTraceSourceEventArgs

Proporciona datos para el evento TraceSource.Initializing .

InstanceData

Contiene datos de instancia asociados a un ejemplo de contador de rendimiento.

InstanceDataCollection

Proporciona una colección fuertemente tipada de InstanceData objetos.

InstanceDataCollectionCollection

Proporciona una colección fuertemente tipada de InstanceDataCollection objetos.

MonitoringDescriptionAttribute

Especifica una descripción para una propiedad o evento.

PerformanceCounter

Representa un componente de contador de rendimiento nt de Windows.

PerformanceCounterCategory

Representa un objeto de rendimiento, que define una categoría de contadores de rendimiento.

PerformanceCounterInstaller

Especifica un instalador para el PerformanceCounter componente.

PerformanceCounterManager

Prepara los datos de rendimiento para el performance.dll el sistema se carga al trabajar con contadores de rendimiento.

PerformanceCounterPermission

Permite el control de los permisos de acceso de código para PerformanceCounter.

PerformanceCounterPermissionAttribute

Permite comprobaciones de permisos de contador de rendimiento declarativos.

PerformanceCounterPermissionEntry

Define la unidad más pequeña de un permiso de seguridad de acceso de código establecido para .PerformanceCounter

PerformanceCounterPermissionEntryCollection

Contiene una colección fuertemente tipada de PerformanceCounterPermissionEntry objetos.

PresentationTraceSources

Proporciona compatibilidad con el seguimiento de depuración destinada específicamente a aplicaciones de Windows Presentation Foundation (WPF).

Process

Proporciona acceso a procesos locales y remotos y le permite iniciar y detener los procesos del sistema local.

ProcessExitStatus

Proporciona clases que permiten interactuar con procesos del sistema, registros de eventos y contadores de rendimiento.

ProcessModule

Representa un archivo .dll o .exe que se carga en un proceso determinado.

ProcessModuleCollection

Proporciona una colección fuertemente tipada de ProcessModule objetos.

ProcessStartInfo

Especifica un conjunto de valores que se usa cuando se inicia un proceso.

ProcessTextOutput

Proporciona clases que permiten interactuar con procesos del sistema, registros de eventos y contadores de rendimiento.

ProcessThread

Representa un subproceso del sistema operativo.

ProcessThreadCollection

Proporciona una colección fuertemente tipada de ProcessThread objetos.

SourceFilter

Indica si un agente de escucha debe realizar el seguimiento de un mensaje basándose en el origen de un seguimiento.

SourceSwitch

Proporciona un conmutador multinivel para controlar el trazado y la salida de depuración sin recompilar el código.

StackFrame

Proporciona información sobre un StackFrameobjeto , que representa una llamada de función en la pila de llamadas para el subproceso actual.

StackFrameExtensions

Proporciona métodos de extensión para la StackFrame clase , que representa una llamada de función en la pila de llamadas para el subproceso actual.

StackTrace

Representa una traza de pila, que es una colección ordenada de uno o más marcos de la pila.

StackTraceHiddenAttribute

Los tipos y métodos a los que se haya aplicado el atributo StackTraceHidden se omitirán del texto de la traza de la pila que aparece en StackTrace.ToString() y Exception.StackTrace.

Stopwatch

Proporciona un conjunto de métodos y propiedades que puede usar para medir el tiempo transcurrido con precisión.

Switch

Proporciona una clase base abstracta para crear nuevos conmutadores de depuración y seguimiento.

SwitchAttribute

Identifica un modificador usado en un ensamblado, una clase o un miembro.

SwitchLevelAttribute

Identifica el tipo de nivel correspondiente a un interruptor.

TextWriterTraceListener

Dirige la salida de seguimiento o depuración a o TextWriter a , Streamcomo FileStream.

Trace

Proporciona un conjunto de métodos y propiedades que ayudan a realizar un seguimiento del código. Esta clase no puede heredarse.

TraceConfiguration

Proporciona métodos para registrar y configurar las opciones de seguimiento de los archivos de configuración a TraceSource y las clases relacionadas.

TraceEventCache

Proporciona datos de eventos de seguimiento específicos de un subproceso y un proceso.

TraceFilter

Proporciona la clase base para las implementaciones de filtro de seguimiento.

TraceListener

Proporciona la abstract clase base para los agentes de escucha que supervisan la salida de seguimiento y depuración.

TraceListenerCollection

Proporciona una lista segura para subprocesos de TraceListener objetos.

TraceSource

Proporciona un conjunto de métodos y propiedades que permiten a las aplicaciones realizar un seguimiento de la ejecución del código y asociar mensajes de seguimiento a su origen.

TraceSwitch

Proporciona un conmutador multinivel para controlar el trazado y la salida de depuración sin recompilar el código.

UnescapedXmlDiagnosticData

Proporciona datos XML sin escape para el registro de datos de seguimiento proporcionados por el usuario.

UnreachableException

La excepción que se lanza cuando el programa ejecuta una instrucción que se consideraba inalcanzable.

XmlWriterTraceListener

Dirige la salida de seguimiento o depuración como datos codificados con XML a o TextWriter a , Streamcomo .FileStream

Estructuras

Nombre Description
Activity.Enumerator<T>

Enumera los datos almacenados en un Activity objeto .

ActivityChangedEventArgs

Proporciona datos para el evento CurrentChanged.

ActivityContext

Representación que se ajusta a la especificación TraceContext de W3C. Contiene dos identificadores: TraceId y SpanId, junto con un conjunto de valores TraceFlags comunes y TraceState específicos del sistema.

ActivityCreationOptions<T>

Encapsula toda la información que se envía al agente de escucha de actividad para tomar decisiones sobre la creación de la instancia de actividad, así como su estado.

Los posibles parámetros de tipo genérico son ActivityContext o String.

ActivityEvent

Representa un evento que contiene un nombre y una marca de tiempo, así como una lista opcional de etiquetas.

ActivityLink

Las actividades pueden estar vinculadas a cero o más instancias de contexto de actividad que están relacionadas causalmente.

Los vínculos de actividad pueden apuntar a contextos de actividad dentro de un único seguimiento o a través de diferentes seguimientos.

Los vínculos de actividad se pueden usar para representar operaciones por lotes en las que se inició una actividad mediante varias actividades iniciadas, cada una de las cuales representa un único elemento entrante que se está procesando en el lote.

ActivitySpanId

Representa un SpanId formato basado en un estándar W3C.

ActivityTagsCollection.Enumerator

Enumera los elementos de un ActivityTagsCollectionobjeto .

ActivityTraceId

Representa un TraceId cuyo formato se basa en un estándar W3C.

CounterSample

Define una estructura que contiene los datos sin procesar de un contador de rendimiento.

Debug.AssertInterpolatedStringHandler

Proporciona un controlador de cadenas interpolado para Assert(Boolean) que solo realice el formato si se produce un error en la aserción.

Debug.WriteIfInterpolatedStringHandler

Proporciona un controlador de cadenas interpolado para WriteIf(Boolean, String) y WriteLineIf(Boolean, Object) que solo realiza el formato si se aplica la condición.

ProcessOutputLine

Proporciona clases que permiten interactuar con procesos del sistema, registros de eventos y contadores de rendimiento.

TagList

Representa una lista de etiquetas a las que puede acceder el índice. Proporciona métodos para buscar, ordenar y manipular listas.

TagList.Enumerator

Enumerador para recorrer una colección de listas de etiquetas.

Interfaces

Nombre Description
ICollectData

Prepara los datos de rendimiento para el archivo DLL de rendimiento que el sistema carga al trabajar con contadores de rendimiento.

Enumeraciones

Nombre Description
ActivityIdFormat

Especifica el formato de la propiedad Id.

ActivityKind

Describe la relación entre la actividad, sus elementos primarios y sus elementos secundarios en un seguimiento.

ActivitySamplingResult

Valores de enumeración usados por ActivityListener para indicar la cantidad de datos que se van a recopilar para el Activityrelacionado. La solicitud de más datos provoca una mayor sobrecarga de rendimiento.

ActivityStatusCode

Defina el código de estado de la actividad que indica el estado de la operación instrumentada.

ActivityTraceFlags

Especifica marcas definidas por el estándar W3C que están asociados a una actividad.

DebuggableAttribute.DebuggingModes

Especifica el modo de depuración para el compilador Just-In-Time (JIT).

DebuggerBrowsableState

Proporciona instrucciones para mostrar para el depurador.

EventLogEntryType

Especifica el tipo de evento de una entrada de registro de eventos.

EventLogPermissionAccess

Define los niveles de acceso utilizados por EventLog clases de permisos.

OverflowAction

Especifica cómo controlar las entradas de un registro de eventos que ha alcanzado su tamaño máximo de archivo.

PerformanceCounterCategoryType

Indica si la categoría del contador de rendimiento puede tener varias instancias.

PerformanceCounterInstanceLifetime

Especifica la duración de una instancia de contador de rendimiento.

PerformanceCounterPermissionAccess

Define los niveles de acceso utilizados por PerformanceCounter clases de permisos.

PerformanceCounterType

Especifica los tipos de contador de rendimiento que se asignan directamente a los tipos nativos.

PresentationTraceLevel

Describe el nivel de detalle para realizar un seguimiento de un objeto determinado.

ProcessPriorityClass

Indica la prioridad que el sistema asocia a un proceso. Este valor, junto con el valor de prioridad de cada subproceso del proceso, determina el nivel de prioridad base de cada subproceso.

ProcessWindowStyle

Se especificó cómo debería aparecer una nueva ventana cuando el sistema inicia un proceso.

SourceLevels

Especifica los niveles de mensajes de seguimiento filtrados por el modificador de origen y el filtro de tipo de evento.

ThreadPriorityLevel

Especifica el nivel de prioridad de un subproceso.

ThreadState

Especifica el estado de ejecución actual del subproceso.

ThreadWaitReason

Especifica el motivo por el que un subproceso está esperando.

TraceEventType

Identifica el tipo de evento que ha causado el seguimiento.

TraceLevel

Especifica los mensajes que se van a generar para las clases Debug, Trace y TraceSwitch.

TraceLogRetentionOption

Especifica la estructura de archivos que se usará para el registro de EventSchemaTraceListener.

TraceOptions

Especifica las opciones de datos de seguimiento que se van a escribir en la salida del seguimiento.

Delegados

Nombre Description
DataReceivedEventHandler

Representa el método que controlará el OutputDataReceived evento o ErrorDataReceived evento de .Process

DistributedContextPropagator.PropagatorGetterCallback

Representa el método de devolución de llamada que se usa en los métodos de extracción de propagadores. La devolución de llamada se invoca para buscar el valor de un campo con nombre.

DistributedContextPropagator.PropagatorSetterCallback

Representa el método de devolución de llamada que se usa en los métodos de inserción de propagadores. Esta devolución de llamada se invoca para establecer el valor de un campo con nombre. Los propagadores pueden invocarlo varias veces para establecer varios campos.

EntryWrittenEventHandler

Representa el método que controlará el EntryWritten evento de un EventLog.

ExceptionRecorder

Define la devolución de llamada que se va a usar en ActivityListener para recibir notificaciones cuando se agregan excepciones a Activity.

SampleActivity<T>

Delegado que define la firma de las ActivityListener devoluciones de llamada usadas en el proceso de muestreo.

Comentarios

  • El EventLog componente proporciona funcionalidad para escribir en registros de eventos, leer entradas del registro de eventos y crear y eliminar registros de eventos y orígenes de eventos en la red. EntryWrittenEventHandler proporciona una manera de interactuar con los registros de eventos de forma asincrónica. Las clases auxiliares proporcionan acceso a un control más detallado, incluidas las restricciones de permisos, la capacidad de especificar tipos de registro de eventos (que controlan el tipo de datos predeterminados que se escriben con una entrada del registro de eventos) y recorrer en iteración las colecciones de entradas del registro de eventos. Para obtener más información sobre estas tareas, vea las EventLogPermissionclases , EventLogEntryTypey EventLogEntryCollection .

  • La Process clase proporciona funcionalidad para supervisar los procesos del sistema a través de la red y para iniciar y detener los procesos del sistema local. Además de recuperar listas de procesos en ejecución (especificando el equipo, el nombre del proceso o el identificador de proceso) o viendo información sobre el proceso que actualmente tiene acceso al procesador, puede obtener conocimientos detallados sobre los subprocesos de proceso y módulos tanto a través de la propia clase como mediante la Process interacción con las ProcessThread clases y ProcessModule . La ProcessStartInfo clase permite especificar una variedad de elementos con los que iniciar un nuevo proceso, como flujos de entrada, salida y errores, directorios de trabajo y verbos y argumentos de línea de comandos. Esto le proporciona un control preciso sobre el comportamiento de los procesos. Otras clases relacionadas permiten especificar los estilos de ventana, las prioridades de procesos y subprocesos e interactuar con colecciones de subprocesos y módulos.

  • La PerformanceCounter clase permite supervisar el rendimiento del sistema, mientras que la PerformanceCounterCategory clase proporciona una manera de crear nuevos contadores y categorías personalizados. Puede escribir en contadores personalizados locales y leer de contadores tanto locales como remotos (del sistema y personalizados). Puede muestrear contadores mediante la PerformanceCounter clase y calcular los resultados de ejemplos de contadores de rendimiento sucesivos mediante la CounterSample clase . La CounterCreationData clase permite crear varios contadores en una categoría y especificar sus tipos. Otras clases asociadas al componente de contadores de rendimiento proporcionan acceso a colecciones de contadores, permisos de contador y tipos de contadores.

El System.Diagnostics espacio de nombres también proporciona clases que permiten depurar la aplicación y realizar un seguimiento de la ejecución del código. Para obtener más información, consulte las clases Trace y Debug.