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

Определяет наличие и способ отображения членов в окнах переменных отладчика. Этот класс не наследуется.

DebuggerDisplayAttribute

Определяет, как класс или поле отображается в окнах переменных отладчика.

DebuggerHiddenAttribute

Задает DebuggerHiddenAttribute. Этот класс не наследуется.

DebuggerNonUserCodeAttribute

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

DebuggerStepperBoundaryAttribute

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

DebuggerStepThroughAttribute

Отдает отладчику указание о сквозной обработке кода (вместо обработки изнутри). Этот класс не наследуется.

DebuggerTypeProxyAttribute

Указывает прокси-тип отображения для типа.

DebuggerVisualizerAttribute

Указывает, что у типа есть визуализатор. Этот класс не наследуется.

DefaultTraceListener

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

DelimitedListTraceListener

Направляет выходные данные трассировки или отладки в модуль записи текста, такой как модуль записи в поток или в поток, такой как файловый поток.

DiagnosticListener

Предоставляет реализацию абстрактного класса DiagnosticSource, которые представляет именованное место, куда источник отправляет данные (события).

DiagnosticListenerExtensions

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

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

Предоставляет не являющиеся escape-последовательностью 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

Представляет идентификатор 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 или событие ErrorDataReceived объекта Process.

DistributedContextPropagator.PropagatorGetterCallback

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

DistributedContextPropagator.PropagatorSetterCallback

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

EntryWrittenEventHandler

Представляет метод, обрабатывающий событие EntryWrittenEventLog.

SampleActivity<T>

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

Комментарии

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

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

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

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