System.Diagnostics 命名空间
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
提供可用于与系统进程、事件日志和性能计数器交互的类。
类
Activity |
表示具有要用于日志记录的上下文的操作。 |
ActivityListener |
允许侦听启动和停止活动事件,并有机会决定为采样方案创建活动。 |
ActivitySource |
提供用于创建和启动 Activity 对象的 API,以及注册 ActivityListener 对象以侦听 Activity 事件。 |
ActivityTagsCollection |
ActivityTagsCollection 是用于存储跟踪标记的集合类。 此集合将用于类,如 ActivityEvent 和 ActivityLink。 此集合的行为如下:
|
BooleanSwitch |
提供一个简单的开/关开关,用于控制调试和跟踪输出。 |
ConditionalAttribute |
向编译器指示,除非定义了指定的条件编译符号,否则应忽略方法调用或属性。 |
ConsoleTraceListener |
将跟踪或调试输出定向到标准输出或标准错误流。 |
CorrelationManager |
关联属于逻辑事务的一部分的跟踪。 |
CounterCreationData |
定义自定义计数器的计数器类型、名称和帮助字符串。 |
CounterCreationDataCollection |
提供 CounterCreationData 对象的强类型集合。 |
CounterSampleCalculator |
提供一组用于解释性能计数器数据的实用工具函数。 |
DataReceivedEventArgs |
为 OutputDataReceived 和 ErrorDataReceived 事件提供数据。 |
Debug |
提供一组有助于调试代码的方法和属性。 |
DebuggableAttribute |
修改运行时实时调试的代码生成(JIT)。 无法继承此类。 |
Debugger |
启用与调试器的通信。 无法继承此类。 |
DebuggerBrowsableAttribute |
确定是否以及如何在调试器变量窗口中显示成员。 无法继承此类。 |
DebuggerDisableUserUnhandledExceptionsAttribute |
提供可用于与系统进程、事件日志和性能计数器交互的类。 |
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 |
将跟踪或调试输出定向到 TextWriter 或 Stream,例如 FileStream。 |
Trace |
提供一组方法和属性,可帮助你跟踪代码的执行。 无法继承此类。 |
TraceConfiguration |
提供可用于与系统进程、事件日志和性能计数器交互的类。 |
TraceEventCache |
提供特定于线程和进程的跟踪事件数据。 |
TraceFilter |
提供跟踪筛选器实现的基类。 |
TraceListener |
为监视跟踪和调试输出的侦听器提供 |
TraceListenerCollection |
提供 TraceListener 对象的线程安全列表。 |
TraceSource |
提供一组方法和属性,使应用程序能够跟踪代码的执行并将跟踪消息与其源相关联。 |
TraceSwitch |
提供多级开关,用于控制跟踪和调试输出,而无需重新编译代码。 |
UnescapedXmlDiagnosticData |
为用户提供的跟踪数据的日志记录提供未转义的 XML 数据。 |
UnreachableException |
当程序执行被认为无法访问的指令时引发的异常。 |
XmlWriterTraceListener |
将跟踪或调试输出作为 XML 编码的数据定向到 TextWriter 或 Stream,例如 FileStream。 |
结构
Activity.Enumerator<T> |
枚举存储在 Activity 对象上的数据。 |
ActivityChangedEventArgs |
提供 CurrentChanged 事件的数据。 |
ActivityContext |
符合 W3C TraceContext 规范的表示形式。 它包含两个标识符:TraceId 和 SpanId,以及一组常见的 TraceFlags 和特定于系统的 TraceState 值。 |
ActivityCreationOptions<T> |
封装发送到活动侦听器的所有信息,以决定创建活动实例及其状态。 可能的泛型类型参数是 ActivityContext 或 String。 |
ActivityEvent |
表示包含名称和时间戳的事件,以及标记的可选列表。 |
ActivityLink |
活动可以链接到因果相关的零个或多个活动上下文实例。 活动链接可以指向单个跟踪或跨不同跟踪的活动上下文。 活动链接可用于表示由多个发起活动启动的活动(每个操作表示批处理中正在处理的单个传入项)的批处理操作。 |
ActivitySpanId |
表示基于 W3C 标准格式化的 SpanId。 |
ActivityTagsCollection.Enumerator |
枚举 |
ActivityTraceId |
表示其格式基于 W3C 标准的 TraceId。 |
CounterSample |
定义一个结构,用于保存性能计数器的原始数据。 |
Debug.AssertInterpolatedStringHandler |
为 Assert(Boolean) 提供一个内插字符串处理程序,该处理程序仅在断言失败时执行格式设置。 |
Debug.WriteIfInterpolatedStringHandler |
为 WriteIf(Boolean, String) 和 WriteLineIf(Boolean, Object) 提供一个内插字符串处理程序,该处理程序仅在条件适用时执行格式设置。 |
TagList |
表示可由索引访问的标记列表。 提供用于搜索、排序和操作列表的方法。 |
TagList.Enumerator |
用于遍历标记列表集合的枚举器。 |
接口
ICollectData |
为系统在使用性能计数器时加载的性能 DLL 准备性能数据。 |
枚举
委托
DataReceivedEventHandler |
表示将处理 Process的 OutputDataReceived 事件或 ErrorDataReceived 事件的方法。 |
DistributedContextPropagator.PropagatorGetterCallback |
表示在传播器的提取方法中使用的回调方法。 调用回调以查找命名字段的值。 |
DistributedContextPropagator.PropagatorSetterCallback |
表示在传播器注入方法中使用的回调方法。 调用此回调以设置命名字段的值。 传播器可以多次调用它,以便设置多个字段。 |
EntryWrittenEventHandler |
表示将处理 EventLog的 EntryWritten 事件的方法。 |
ExceptionRecorder |
提供可用于与系统进程、事件日志和性能计数器交互的类。 |
SampleActivity<T> |
定义采样过程中使用的 ActivityListener 回调签名的委托。 |
注解
EventLog 组件提供写入事件日志、读取事件日志条目以及创建和删除网络上事件日志和事件源的功能。 EntryWrittenEventHandler 提供了异步与事件日志进行交互的方法。 支持类提供对更详细控制的访问权限,包括:权限限制、指定事件日志类型(控制使用事件日志条目写入的默认数据类型),以及循环访问事件日志条目集合。 有关这些任务的详细信息,请参阅 EventLogPermission、EventLogEntryType和 EventLogEntryCollection 类。
Process 类提供的功能用于监视整个网络的系统进程,以及启动和停止本地系统进程。 除了检索正在运行的进程列表(通过指定计算机、进程名称或进程 ID),或者查看当前有权访问处理器的进程的信息,还可以通过 Process 类本身获取进程线程和模块的详细信息,以及通过与 ProcessThread 和 ProcessModule 类进行交互。 使用 ProcessStartInfo 类,可以指定用于启动新进程的各种元素,例如输入、输出和错误流、工作目录以及命令行谓词和参数。 这些选项可让你对进程的行为进行精细控制。 其他相关类允许你指定窗口样式、进程和线程优先级,并与线程和模块的集合进行交互。
使用 PerformanceCounter 类可以监视系统性能,而 PerformanceCounterCategory 类提供了一种创建新的自定义计数器和类别的方法。 可以写入本地自定义计数器,并从本地和远程计数器(系统以及自定义)读取。 可以使用 PerformanceCounter 类对计数器进行采样,并使用 CounterSample 类计算连续性能计数器样本的结果。 使用 CounterCreationData 类,可以在类别中创建多个计数器并指定其类型。 与性能计数器组件关联的其他类提供对计数器集合、计数器权限和计数器类型的访问。
System.Diagnostics 命名空间还提供类,可用于调试应用程序并跟踪代码的执行。 有关详细信息,请参阅 Trace 和 Debug 类。