Поделиться через


System.Diagnostics Пространство имен

Предоставляет классы, позволяющие взаимодействовать с системными процессами, журналами событий и счетчиками производительности.

Классы

Activity

Представляет операцию с контекстом для ведения журнала.

ActivityListener

Позволяет прослушивать события начала и остановки действий и дает возможность решить создание действия для сценариев выборки.

ActivitySource

Предоставляет API для создания и запуска объектов Activity и регистрации ActivityListener объектов для прослушивания событий Activity.

ActivityTagsCollection

ActivityTagsCollection — это класс коллекции, используемый для хранения тегов трассировки.

Эта коллекция будет использоваться с такими классами, как ActivityEvent и ActivityLink.

Эта коллекция ведет себя следующим образом:

  • Элементы коллекции будут упорядочены в соответствии с способом их добавления.
  • Не разрешайте дублирование элементов с одним ключом.
  • При использовании индексатора для хранения элемента в коллекции:
    • Если элемент имеет ключ, который ранее существовал в коллекции, и значение null, элемент коллекции, соответствующий ключу, будет удален из коллекции.
    • Если элемент имеет ключ, который ранее существовал в коллекции, и значение не null, новое значение элемента заменит старое значение, хранящееся в коллекции.
    • В противном случае элемент будет добавлен в коллекцию.
  • Метод добавления добавит новый элемент в коллекцию, если элемент еще не существует с тем же ключом. В противном случае это приведет к возникновению исключения.
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, представляющей вызов функции в стеке вызовов для текущего потока.

StackFrameExtensions

Предоставляет методы расширения для класса StackFrame, который представляет вызов функции в стеке вызовов для текущего потока.

StackTrace

Представляет трассировку стека, которая является упорядоченной коллекцией одного или нескольких кадров стека.

StackTraceHiddenAttribute

Типы и методы, атрибуты с помощью StackTraceHidden, будут опущены из текста трассировки стека, показанного в StackTrace.ToString() и Exception.StackTrace

Stopwatch

Предоставляет набор методов и свойств, которые можно использовать для точного измерения истекшего времени.

Switch

Предоставляет абстрактный базовый класс для создания новых коммутаторов отладки и трассировки.

SwitchAttribute

Определяет переключатель, используемый в сборке, классе или члене.

SwitchLevelAttribute

Определяет тип уровня для коммутатора.

TextWriterTraceListener

Направляет данные трассировки или отладки в TextWriter или в Stream, например FileStream.

Trace

Предоставляет набор методов и свойств, которые помогают отслеживать выполнение кода. Этот класс не может быть унаследован.

TraceConfiguration

Предоставляет классы, позволяющие взаимодействовать с системными процессами, журналами событий и счетчиками производительности.

TraceEventCache

Предоставляет данные события трассировки, относящиеся к потоку и процессу.

TraceFilter

Предоставляет базовый класс для реализации фильтров трассировки.

TraceListener

Предоставляет базовый класс abstract для прослушивателей, отслеживающих выходные данные трассировки и отладки.

TraceListenerCollection

Предоставляет потокобезопасный список объектов TraceListener.

TraceSource

Предоставляет набор методов и свойств, позволяющих приложениям отслеживать выполнение кода и связывать сообщения трассировки с их источником.

TraceSwitch

Предоставляет многоуровневый коммутатор для управления трассировкой и отладкой выходных данных без повторной компиляции кода.

UnescapedXmlDiagnosticData

Предоставляет неискаченные XML-данные для ведения журнала предоставленных пользователем данных трассировки.

UnreachableException

Исключение, которое возникает при выполнении программы инструкции, которая, как полагают, является недоступной.

XmlWriterTraceListener

Направляет трассировку или отладку выходных данных в виде xml-кодированных данных в TextWriter или в Stream, например FileStream.

Структуры

Activity.Enumerator<T>

Перечисляет данные, хранящиеся в объекте Activity.

ActivityChangedEventArgs

Предоставляет данные для события CurrentChanged.

ActivityContext

Представление, соответствующее спецификации TraceContext W3C. Он содержит два идентификатора: TraceId и SpanId, а также набор общих значений TraceFlags и system-specific TraceState.

ActivityCreationOptions<T>

Инкапсулирует все сведения, отправляемые прослушивателю действий, для принятия решений о создании экземпляра действия, а также его состояния.

Возможные параметры универсального типа ActivityContext или String.

ActivityEvent

Представляет событие, содержащее имя и метку времени, а также необязательный список тегов.

ActivityLink

Действия могут быть связаны с нулевыми или более экземплярами контекста действия, которые связаны с причинно-связанными.

Ссылки на действия могут указывать на контексты действий внутри одной трассировки или между различными трассировками.

Ссылки на действия можно использовать для представления пакетных операций, в которых действие было инициировано несколькими инициирующими действиями, каждый из которых представляет один входящий элемент, обрабатываемый в пакете.

ActivitySpanId

Представляет SpanId формат на основе стандарта W3C.

ActivityTagsCollection.Enumerator

Перечисляет элементы ActivityTagsCollection.

ActivityTraceId

Представляет TraceId, формат которого основан на стандарте W3C.

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

Указывает, какие сообщения следует выводить для классов Debug, Trace и TraceSwitch.

TraceLogRetentionOption

Указывает структуру файлов, которая будет использоваться для журнала EventSchemaTraceListener.

TraceOptions

Указывает параметры данных трассировки для записи в выходные данные трассировки.

Делегаты

DataReceivedEventHandler

Представляет метод, который будет обрабатывать событие OutputDataReceived или событие ErrorDataReceivedProcess.

DistributedContextPropagator.PropagatorGetterCallback

Представляет метод обратного вызова, используемый в методах извлечения распространителей. Обратный вызов вызывается для поиска значения именованного поля.

DistributedContextPropagator.PropagatorSetterCallback

Представляет метод обратного вызова, используемый в методах внедрения распространения. Этот обратный вызов вызывается для задания значения именованного поля. Распространители могут вызывать его несколько раз, чтобы задать несколько полей.

EntryWrittenEventHandler

Представляет метод, который будет обрабатывать событие EntryWrittenEventLog.

ExceptionRecorder

Предоставляет классы, позволяющие взаимодействовать с системными процессами, журналами событий и счетчиками производительности.

SampleActivity<T>

Делегат, определяющий сигнатуру обратных вызовов ActivityListener, используемых в процессе выборки.

Комментарии

  • Компонент EventLog предоставляет функциональные возможности для записи в журналы событий, чтения записей журнала событий и создания журналов событий и удаления журналов событий и источников событий в сети. EntryWrittenEventHandler предоставляет способ асинхронного взаимодействия с журналами событий. Вспомогательные классы предоставляют доступ к более подробному элементу управления, включая ограничения разрешений, возможность указывать типы журналов событий (которые управляют типом данных по умолчанию, записанным с записью журнала событий), а также выполнять итерацию с помощью коллекций записей журнала событий. Дополнительные сведения об этих задачах см. в EventLogPermission, EventLogEntryTypeи классах EventLogEntryCollection.

  • Класс Process предоставляет функциональные возможности для мониторинга системных процессов в сети и запуска и остановки локальных системных процессов. Помимо получения списков выполняемых процессов (указав компьютер, имя процесса или идентификатор процесса) или просмотр сведений о процессе, который в настоящее время имеет доступ к обработчику, можно получить подробные сведения о потоках процессах и модулях как через сам класс Process, так и взаимодействие с ProcessThread и ProcessModule классами. Класс ProcessStartInfo позволяет указать различные элементы, с помощью которых можно запустить новый процесс, например входные, выходные и потоки ошибок, рабочие каталоги и команды командной строки и аргументы. Они обеспечивают точное управление поведением процессов. Другие связанные классы позволяют указывать стили окон, приоритеты процессов и потоков, а также взаимодействовать с коллекциями потоков и модулей.

  • Класс PerformanceCounter позволяет отслеживать производительность системы, а класс PerformanceCounterCategory предоставляет способ создания новых пользовательских счетчиков и категорий. Вы можете записывать в локальные настраиваемые счетчики и читать их как из локальных, так и из удаленных счетчиков (система, а также пользовательская). Вы можете примеры счетчиков с помощью класса PerformanceCounter и вычислить результаты из последовательных примеров счетчиков производительности с помощью класса CounterSample. Класс CounterCreationData позволяет создавать несколько счетчиков в категории и указывать их типы. Другие классы, связанные с компонентом счетчика производительности, предоставляют доступ к коллекциям счетчиков, разрешений счетчиков и типов счетчиков.

Пространство имен System.Diagnostics также предоставляет классы, позволяющие отлаживать приложение и отслеживать выполнение кода. Дополнительные сведения см. в Trace и классах Debug.