System.Diagnostics 命名空间

提供可用于与系统进程、事件日志和性能计数器交互的类。

Activity

表示具有要用于日志记录的上下文的操作。

ActivityListener

允许侦听启动和停止活动事件,并有机会决定为采样方案创建活动。

ActivitySource

提供用于创建和启动 Activity 对象的 API,以及注册 ActivityListener 对象以侦听 Activity 事件。

ActivityTagsCollection

ActivityTagsCollection 是用于存储跟踪标记的集合类。

此集合将用于类,如 ActivityEventActivityLink

此集合的行为如下:

  • 根据集合项的添加方式对集合项进行排序。
  • 不允许重复具有相同键的项。
  • 使用索引器在集合中存储项时:
    • 如果项具有以前存在于集合中的键并且值 null,则将从集合中删除与键匹配的集合项。
    • 如果项具有以前存在于集合中的键且该值未 null,则新项值将替换存储在集合中的旧值。
    • 否则,该项将添加到集合中。
  • 如果项不存在具有相同键,则 Add 方法会将新项添加到集合中。 否则,它将引发异常。
BooleanSwitch

提供一个简单的开/关开关,用于控制调试和跟踪输出。

ConditionalAttribute

向编译器指示,除非定义了指定的条件编译符号,否则应忽略方法调用或属性。

ConsoleTraceListener

将跟踪或调试输出定向到标准输出或标准错误流。

CorrelationManager

关联属于逻辑事务的一部分的跟踪。

CounterCreationData

定义自定义计数器的计数器类型、名称和帮助字符串。

CounterCreationDataCollection

提供 CounterCreationData 对象的强类型集合。

CounterSampleCalculator

提供一组用于解释性能计数器数据的实用工具函数。

DataReceivedEventArgs

OutputDataReceivedErrorDataReceived 事件提供数据。

Debug

提供一组有助于调试代码的方法和属性。

DebuggableAttribute

修改运行时实时调试的代码生成(JIT)。 无法继承此类。

Debugger

启用与调试器的通信。 无法继承此类。

DebuggerBrowsableAttribute

确定是否以及如何在调试器变量窗口中显示成员。 无法继承此类。

DebuggerDisableUserUnhandledExceptionsAttribute

如果附加支持 BreakForUserUnhandledException(Exception) API 的 .NET 调试器,则除非调用 BreakForUserUnhandledException(Exception),否则当使用此属性的方法捕获异常时,调试器不会中断用户未经处理的异常。

DebuggerDisplayAttribute

确定类或字段在调试器变量窗口中的显示方式。

DebuggerHiddenAttribute

指定 DebuggerHiddenAttribute。 无法继承此类。

DebuggerNonUserCodeAttribute

标识不属于应用程序用户代码的类型或成员。

DebuggerStepperBoundaryAttribute

指示属性后面的代码将在运行(而不是步骤、模式)中执行。

DebuggerStepThroughAttribute

指示调试器逐步执行代码,而不是单步执行代码。 无法继承此类。

DebuggerTypeProxyAttribute

指定类型的显示代理。

DebuggerVisualizerAttribute

指定类型具有可视化工具。 无法继承此类。

DefaultTraceListener

提供用于跟踪的默认输出方法和行为。

DelimitedListTraceListener

将跟踪或调试输出定向到文本编写器(如流编写器)或流(如文件流)。

DiagnosticListener

提供抽象 DiagnosticSource 类的实现,该类表示源向其发送其信息(事件)的命名位置。

DiagnosticListenerExtensions

提供可用于与系统进程、事件日志和性能计数器交互的类。

DiagnosticMethodInfo

表示有关方法的诊断信息。 此类提供的信息类似于信息

MethodBase 提供,但用于日志记录和跟踪目的。

DiagnosticsConfigurationHandler

处理配置文件的诊断部分。

DiagnosticSource

一个抽象类,允许对代码进行检测,以便对丰富的数据有效负载进行生产时日志记录,以便在所检测的进程中使用。

DistributedContextPropagator

DistributedContextPropagator 的实现确定在遍历网络时如何编码和解码分布式上下文信息。 可以通过支持字符串键值对的任何网络协议传输编码。 例如,使用 HTTP 时,每个键值对都是 HTTP 标头。 DistributedContextPropagator 将值作为字符串键值对注入到运营商中并从中提取值。

EntryWrittenEventArgs

提供 EntryWritten 事件的数据。

EventInstance

表示事件日志条目的语言中性信息。

EventLog

提供与 Windows 事件日志的交互。

EventLogEntry

封装事件日志中的单个记录。 无法继承此类。

EventLogEntryCollection

定义 EventLogEntry 实例集合的大小和枚举器。

EventLogInstaller

允许安装和配置应用程序在运行时读取或写入的事件日志。

EventLogPermission

控制事件日志记录的代码访问权限。

EventLogPermissionAttribute

允许声明性权限检查事件日志记录。

EventLogPermissionEntry

定义为 EventLog设置的代码访问安全权限的最小单位。

EventLogPermissionEntryCollection

包含 EventLogPermissionEntry 对象的强类型集合。

EventLogTraceListener

提供一个简单的侦听器,用于将跟踪或调试输出定向到 EventLog

EventSchemaTraceListener

将端到端事件的跟踪或调试输出定向到 XML 编码的符合架构的日志文件。

EventSourceCreationData

表示用于在本地计算机或远程计算机上创建事件日志源的配置设置。

EventTypeFilter

指示侦听器是否应基于事件类型进行跟踪。

FileVersionInfo

提供磁盘上物理文件的版本信息。

InitializingSwitchEventArgs

提供 Switch.Initializing 事件的数据。

InitializingTraceSourceEventArgs

提供 TraceSource.Initializing 事件的数据。

InstanceData

保存与性能计数器示例关联的实例数据。

InstanceDataCollection

提供 InstanceData 对象的强类型集合。

InstanceDataCollectionCollection

提供 InstanceDataCollection 对象的强类型集合。

MonitoringDescriptionAttribute

指定属性或事件的说明。

PerformanceCounter

表示 Windows NT 性能计数器组件。

PerformanceCounterCategory

表示一个性能对象,该对象定义性能计数器的类别。

PerformanceCounterInstaller

指定 PerformanceCounter 组件的安装程序。

PerformanceCounterManager

使用性能计数器时,为系统加载 performance.dll 准备性能数据。

PerformanceCounterPermission

允许控制 PerformanceCounter的代码访问权限。

PerformanceCounterPermissionAttribute

允许声明性性能计数器权限检查。

PerformanceCounterPermissionEntry

定义为 PerformanceCounter设置的代码访问安全权限的最小单位。

PerformanceCounterPermissionEntryCollection

包含 PerformanceCounterPermissionEntry 对象的强类型集合。

PresentationTraceSources

提供专门针对 Windows Presentation Foundation (WPF) 应用程序的调试跟踪支持。

Process

提供对本地和远程进程的访问,使你能够启动和停止本地系统进程。

ProcessModule

表示加载到特定进程的 .dll 或 .exe 文件。

ProcessModuleCollection

提供 ProcessModule 对象的强类型集合。

ProcessStartInfo

指定启动进程时使用的一组值。

ProcessThread

表示操作系统进程线程。

ProcessThreadCollection

提供 ProcessThread 对象的强类型集合。

SourceFilter

指示侦听器是否应基于跟踪源跟踪消息。

SourceSwitch

提供多级开关,用于控制跟踪和调试输出,而无需重新编译代码。

StackFrame

提供有关 StackFrame的信息,该 StackFrame表示当前线程的调用堆栈上的函数调用。

StackFrameExtensions

StackFrame 类提供扩展方法,该类表示当前线程的调用堆栈上的函数调用。

StackTrace

表示堆栈跟踪,它是一个或多个堆栈帧的有序集合。

StackTraceHiddenAttribute

使用 StackTraceHidden 特性化的类型和方法将从 StackTrace.ToString() 和 Exception.StackTrace 中显示的堆栈跟踪文本中省略

Stopwatch

提供一组可用于准确测量已用时间的方法和属性。

Switch

提供用于创建新的调试和跟踪开关的抽象基类。

SwitchAttribute

标识程序集、类或成员中使用的开关。

SwitchLevelAttribute

标识开关的级别类型。

TextWriterTraceListener

将跟踪或调试输出定向到 TextWriterStream,例如 FileStream

Trace

提供一组方法和属性,可帮助你跟踪代码的执行。 无法继承此类。

TraceConfiguration

提供可用于与系统进程、事件日志和性能计数器交互的类。

TraceEventCache

提供特定于线程和进程的跟踪事件数据。

TraceFilter

提供跟踪筛选器实现的基类。

TraceListener

为监视跟踪和调试输出的侦听器提供 abstract 基类。

TraceListenerCollection

提供 TraceListener 对象的线程安全列表。

TraceSource

提供一组方法和属性,使应用程序能够跟踪代码的执行并将跟踪消息与其源相关联。

TraceSwitch

提供多级开关,用于控制跟踪和调试输出,而无需重新编译代码。

UnescapedXmlDiagnosticData

为用户提供的跟踪数据的日志记录提供未转义的 XML 数据。

UnreachableException

当程序执行被认为无法访问的指令时引发的异常。

XmlWriterTraceListener

将跟踪或调试输出作为 XML 编码的数据定向到 TextWriterStream,例如 FileStream

结构

Activity.Enumerator<T>

枚举存储在 Activity 对象上的数据。

ActivityChangedEventArgs

提供 CurrentChanged 事件的数据。

ActivityContext

符合 W3C TraceContext 规范的表示形式。 它包含两个标识符:TraceId 和 SpanId,以及一组常见的 TraceFlags 和特定于系统的 TraceState 值。

ActivityCreationOptions<T>

封装发送到活动侦听器的所有信息,以决定创建活动实例及其状态。

可能的泛型类型参数是 ActivityContextString

ActivityEvent

表示包含名称和时间戳的事件,以及标记的可选列表。

ActivityLink

活动可以链接到因果相关的零个或多个活动上下文实例。

活动链接可以指向单个跟踪或跨不同跟踪的活动上下文。

活动链接可用于表示由多个发起活动启动的活动(每个操作表示批处理中正在处理的单个传入项)的批处理操作。

ActivitySpanId

表示基于 W3C 标准格式化的 SpanId

ActivityTagsCollection.Enumerator

枚举 ActivityTagsCollection的元素。

ActivityTraceId

表示其格式基于 W3C 标准的 TraceId

CounterSample

定义一个结构,用于保存性能计数器的原始数据。

Debug.AssertInterpolatedStringHandler

Assert(Boolean) 提供一个内插字符串处理程序,该处理程序仅在断言失败时执行格式设置。

Debug.WriteIfInterpolatedStringHandler

WriteIf(Boolean, String)WriteLineIf(Boolean, Object) 提供一个内插字符串处理程序,该处理程序仅在条件适用时执行格式设置。

TagList

表示可由索引访问的标记列表。 提供用于搜索、排序和操作列表的方法。

TagList.Enumerator

用于遍历标记列表集合的枚举器。

接口

ICollectData

为系统在使用性能计数器时加载的性能 DLL 准备性能数据。

枚举

ActivityIdFormat

指定 Id 属性的格式。

ActivityKind

描述活动、其父项和跟踪中的子级之间的关系。

ActivitySamplingResult

ActivityListener 使用的枚举值,用于指示要为相关 Activity收集的数据量。 请求更多数据会导致更高的性能开销。

ActivityStatusCode

定义活动的状态代码,该代码指示已检测操作的状态。

ActivityTraceFlags

指定由与活动关联的 W3C 标准定义的标志。

DebuggableAttribute.DebuggingModes

指定实时 (JIT) 编译器的调试模式。

DebuggerBrowsableState

提供调试器的显示说明。

EventLogEntryType

指定事件日志条目的事件类型。

EventLogPermissionAccess

定义 EventLog 权限类使用的访问级别。

OverflowAction

指定如何处理已达到最大文件大小的事件日志中的条目。

PerformanceCounterCategoryType

指示性能计数器类别是否可以具有多个实例。

PerformanceCounterInstanceLifetime

指定性能计数器实例的生存期。

PerformanceCounterPermissionAccess

定义 PerformanceCounter 权限类使用的访问级别。

PerformanceCounterType

指定直接映射到本机类型的性能计数器类型。

PresentationTraceLevel

描述要跟踪特定对象的详细信息级别。

ProcessPriorityClass

指示系统与进程关联的优先级。 此值与进程的每个线程的优先级值一起确定每个线程的基本优先级级别。

ProcessWindowStyle

指定当系统启动进程时,新窗口应如何显示。

SourceLevels

指定由源开关和事件类型筛选器筛选的跟踪消息级别。

ThreadPriorityLevel

指定线程的优先级。

ThreadState

指定线程的当前执行状态。

ThreadWaitReason

指定线程正在等待的原因。

TraceEventType

标识导致跟踪的事件的类型。

TraceLevel

指定要为 DebugTraceTraceSwitch 类输出的消息。

TraceLogRetentionOption

指定将用于 EventSchemaTraceListener 日志的文件结构。

TraceOptions

指定要写入跟踪输出的跟踪数据选项。

委托

DataReceivedEventHandler

表示将处理 ProcessOutputDataReceived 事件或 ErrorDataReceived 事件的方法。

DistributedContextPropagator.PropagatorGetterCallback

表示在传播器的提取方法中使用的回调方法。 调用回调以查找命名字段的值。

DistributedContextPropagator.PropagatorSetterCallback

表示在传播器注入方法中使用的回调方法。 调用此回调以设置命名字段的值。 传播器可以多次调用它,以便设置多个字段。

EntryWrittenEventHandler

表示将处理 EventLogEntryWritten 事件的方法。

ExceptionRecorder

提供可用于与系统进程、事件日志和性能计数器交互的类。

SampleActivity<T>

定义采样过程中使用的 ActivityListener 回调签名的委托。

注解

  • EventLog 组件提供写入事件日志、读取事件日志条目以及创建和删除网络上事件日志和事件源的功能。 EntryWrittenEventHandler 提供了异步与事件日志进行交互的方法。 支持类提供对更详细控制的访问权限,包括:权限限制、指定事件日志类型(控制使用事件日志条目写入的默认数据类型),以及循环访问事件日志条目集合。 有关这些任务的详细信息,请参阅 EventLogPermissionEventLogEntryTypeEventLogEntryCollection 类。

  • Process 类提供的功能用于监视整个网络的系统进程,以及启动和停止本地系统进程。 除了检索正在运行的进程列表(通过指定计算机、进程名称或进程 ID),或者查看当前有权访问处理器的进程的信息,还可以通过 Process 类本身获取进程线程和模块的详细信息,以及通过与 ProcessThreadProcessModule 类进行交互。 使用 ProcessStartInfo 类,可以指定用于启动新进程的各种元素,例如输入、输出和错误流、工作目录以及命令行谓词和参数。 这些选项可让你对进程的行为进行精细控制。 其他相关类允许你指定窗口样式、进程和线程优先级,并与线程和模块的集合进行交互。

  • 使用 PerformanceCounter 类可以监视系统性能,而 PerformanceCounterCategory 类提供了一种创建新的自定义计数器和类别的方法。 可以写入本地自定义计数器,并从本地和远程计数器(系统以及自定义)读取。 可以使用 PerformanceCounter 类对计数器进行采样,并使用 CounterSample 类计算连续性能计数器样本的结果。 使用 CounterCreationData 类,可以在类别中创建多个计数器并指定其类型。 与性能计数器组件关联的其他类提供对计数器集合、计数器权限和计数器类型的访问。

System.Diagnostics 命名空间还提供类,可用于调试应用程序并跟踪代码的执行。 有关详细信息,请参阅 TraceDebug 类。