다음을 통해 공유


System.Diagnostics 네임스페이스

시스템 프로세스, 이벤트 로그 및 성능 카운터와 상호 작용할 수 있는 클래스를 제공합니다.

클래스

Activity

로깅에 사용할 컨텍스트가 있는 작업을 나타냅니다.

ActivityListener

시작 및 중지 활동 이벤트를 수신 대기하고 샘플링 시나리오에 대한 활동 만들기를 결정할 수 있는 기회를 제공합니다.

ActivitySource

Activity 개체를 만들고 시작하고 Activity 이벤트를 수신 대기하도록 ActivityListener 개체를 등록하는 API를 제공합니다.

ActivityTagsCollection

ActivityTagsCollection은 추적 태그를 저장하는 데 사용되는 컬렉션 클래스입니다.

이 컬렉션은 ActivityEventActivityLink같은 클래스와 함께 사용됩니다.

이 컬렉션은 다음과 같이 동작합니다.

  • 컬렉션 항목은 추가 방법에 따라 정렬됩니다.
  • 동일한 키를 가진 항목의 중복을 허용하지 않습니다.
  • 인덱서로 컬렉션에 항목을 저장하는 경우:
    • 항목에 이전에 컬렉션에 존재했던 키가 있고 값이 null경우 키와 일치하는 컬렉션 항목이 컬렉션에서 제거됩니다.
    • 항목에 이전에 컬렉션에 존재했던 키가 있고 값이 null않은 경우 새 항목 값은 컬렉션에 저장된 이전 값을 대체합니다.
    • 그렇지 않으면 항목이 컬렉션에 추가됩니다.
  • Add 메서드는 항목이 동일한 키를 가진 항목이 아직 없는 경우 컬렉션에 새 항목을 추가합니다. 그렇지 않으면 예외가 throw됩니다.
BooleanSwitch

디버깅 및 추적 출력을 제어하는 간단한 켜기/끄기 스위치를 제공합니다.

ConditionalAttribute

지정된 조건부 컴파일 기호가 정의되지 않은 경우 메서드 호출 또는 특성을 무시해야 임을 컴파일러에 나타냅니다.

ConsoleTraceListener

추적 또는 디버깅 출력을 표준 출력 또는 표준 오류 스트림으로 전달합니다.

CorrelationManager

논리 트랜잭션의 일부인 추적의 상관 관계를 지정합니다.

CounterCreationData

사용자 지정 카운터의 카운터 형식, 이름 및 도움말 문자열을 정의합니다.

CounterCreationDataCollection

강력한 형식의 CounterCreationData 개체 컬렉션을 제공합니다.

CounterSampleCalculator

성능 카운터 데이터를 해석하기 위한 유틸리티 함수 집합을 제공합니다.

DataReceivedEventArgs

OutputDataReceivedErrorDataReceived 이벤트에 대한 데이터를 제공합니다.

Debug

코드를 디버그하는 데 도움이 되는 메서드 및 속성 집합을 제공합니다.

DebuggableAttribute

JIT(런타임 Just-In-Time) 디버깅에 대한 코드 생성을 수정합니다. 이 클래스는 상속할 수 없습니다.

Debugger

디버거와의 통신을 사용하도록 설정합니다. 이 클래스는 상속할 수 없습니다.

DebuggerBrowsableAttribute

멤버가 디버거 변수 창에 표시되는지 여부와 방법을 결정합니다. 이 클래스는 상속할 수 없습니다.

DebuggerDisableUserUnhandledExceptionsAttribute

BreakForUserUnhandledException(Exception) API를 지원하는 .NET 디버거가 연결된 경우 BreakForUserUnhandledException(Exception) 호출되지 않는 한 이 특성이 있는 메서드에서 예외를 catch할 때 디버거가 사용자 처리되지 않은 예외를 중단하지 않습니다.

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

WPF(Windows Presentation Foundation) 애플리케이션을 대상으로 하는 디버그 추적 지원을 제공합니다.

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 또는 FileStream같은 Stream전달합니다.

Trace

코드 실행을 추적하는 데 도움이 되는 메서드 및 속성 집합을 제공합니다. 이 클래스는 상속할 수 없습니다.

TraceConfiguration

시스템 프로세스, 이벤트 로그 및 성능 카운터와 상호 작용할 수 있는 클래스를 제공합니다.

TraceEventCache

스레드 및 프로세스와 관련된 추적 이벤트 데이터를 제공합니다.

TraceFilter

추적 필터 구현에 대한 기본 클래스를 제공합니다.

TraceListener

추적 및 디버그 출력을 모니터링하는 수신기에 대한 abstract 기본 클래스를 제공합니다.

TraceListenerCollection

스레드로부터 안전한 TraceListener 개체 목록을 제공합니다.

TraceSource

애플리케이션이 코드 실행을 추적하고 추적 메시지를 소스와 연결할 수 있도록 하는 메서드 및 속성 집합을 제공합니다.

TraceSwitch

코드를 다시 컴파일하지 않고 추적 및 디버그 출력을 제어하는 다단계 스위치를 제공합니다.

UnescapedXmlDiagnosticData

사용자가 제공한 추적 데이터의 로깅에 대한 이스케이프되지 않은 XML 데이터를 제공합니다.

UnreachableException

프로그램에 연결할 수 없는 것으로 생각되는 명령을 실행할 때 throw되는 예외입니다.

XmlWriterTraceListener

추적 또는 디버깅 출력을 XML로 인코딩된 데이터로 TextWriter 또는 FileStream같은 Stream전달합니다.

구조체

Activity.Enumerator<T>

Activity 개체에 저장된 데이터를 열거합니다.

ActivityChangedEventArgs

CurrentChanged 이벤트에 대한 데이터를 제공합니다.

ActivityContext

W3C TraceContext 사양을 준수하는 표현입니다. 여기에는 일반적인 TraceFlags 및 시스템별 TraceState 값 집합과 함께 TraceId 및 SpanId라는 두 개의 식별자가 포함됩니다.

ActivityCreationOptions<T>

활동 수신기로 전송되는 모든 정보를 캡슐화하여 활동 인스턴스 생성과 해당 상태를 결정합니다.

가능한 제네릭 형식 매개 변수는 ActivityContext 또는 String.

ActivityEvent

태그의 선택적 목록뿐만 아니라 이름 및 타임스탬프가 포함된 이벤트를 나타냅니다.

ActivityLink

활동은 인과 관계인 0개 이상의 활동 컨텍스트 인스턴스에 연결될 수 있습니다.

활동 링크는 단일 추적 내 또는 여러 추적에서 활동 컨텍스트를 가리킬 수 있습니다.

활동 링크는 여러 시작 작업에서 작업이 시작된 일괄 처리된 작업을 나타내는 데 사용할 수 있으며, 각 작업은 일괄 처리에서 처리되는 단일 들어오는 항목을 나타냅니다.

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(Just-In-Time) 컴파일러에 대한 디버깅 모드를 지정합니다.

DebuggerBrowsableState

디버거에 대한 표시 지침을 제공합니다.

EventLogEntryType

이벤트 로그 항목의 이벤트 유형을 지정합니다.

EventLogPermissionAccess

EventLog 권한 클래스에서 사용하는 액세스 수준을 정의합니다.

OverflowAction

최대 파일 크기에 도달한 이벤트 로그의 항목을 처리하는 방법을 지정합니다.

PerformanceCounterCategoryType

성능 카운터 범주에 여러 인스턴스가 있을 수 있는지 여부를 나타냅니다.

PerformanceCounterInstanceLifetime

성능 카운터 인스턴스의 수명을 지정합니다.

PerformanceCounterPermissionAccess

PerformanceCounter 권한 클래스에서 사용하는 액세스 수준을 정의합니다.

PerformanceCounterType

네이티브 형식에 직접 매핑되는 성능 카운터 형식을 지정합니다.

PresentationTraceLevel

특정 개체에 대해 추적할 세부 수준을 설명합니다.

ProcessPriorityClass

시스템이 프로세스와 연결하는 우선 순위를 나타냅니다. 이 값은 프로세스의 각 스레드의 우선 순위 값과 함께 각 스레드의 기본 우선 순위 수준을 결정합니다.

ProcessWindowStyle

시스템에서 프로세스를 시작할 때 새 창이 표시되는 방식을 지정했습니다.

SourceLevels

원본 스위치 및 이벤트 유형 필터로 필터링된 추적 메시지의 수준을 지정합니다.

ThreadPriorityLevel

스레드의 우선 순위 수준을 지정합니다.

ThreadState

스레드의 현재 실행 상태를 지정합니다.

ThreadWaitReason

스레드가 대기 중인 이유를 지정합니다.

TraceEventType

추적을 발생시킨 이벤트의 유형을 식별합니다.

TraceLevel

Debug, TraceTraceSwitch 클래스에 대해 출력할 메시지를 지정합니다.

TraceLogRetentionOption

EventSchemaTraceListener 로그에 사용할 파일 구조를 지정합니다.

TraceOptions

추적 출력에 쓸 추적 데이터 옵션을 지정합니다.

대리자

DataReceivedEventHandler

Process OutputDataReceived 이벤트 또는 ErrorDataReceived 이벤트를 처리할 메서드를 나타냅니다.

DistributedContextPropagator.PropagatorGetterCallback

전파자의 추출 메서드에 사용되는 콜백 메서드를 나타냅니다. 콜백은 명명된 필드의 값을 조회하기 위해 호출됩니다.

DistributedContextPropagator.PropagatorSetterCallback

전파자의 삽입 메서드에 사용되는 콜백 메서드를 나타냅니다. 이 콜백은 명명된 필드의 값을 설정하기 위해 호출됩니다. 전파자는 여러 필드를 설정하기 위해 여러 번 호출할 수 있습니다.

EntryWrittenEventHandler

EventLog EntryWritten 이벤트를 처리할 메서드를 나타냅니다.

ExceptionRecorder

시스템 프로세스, 이벤트 로그 및 성능 카운터와 상호 작용할 수 있는 클래스를 제공합니다.

SampleActivity<T>

샘플링 프로세스에 사용되는 ActivityListener 콜백의 서명을 정의하는 대리자입니다.

설명

  • EventLog 구성 요소는 이벤트 로그에 쓰고, 이벤트 로그 항목을 읽고, 네트워크에서 이벤트 로그 및 이벤트 원본을 만들고 삭제하는 기능을 제공합니다. EntryWrittenEventHandler 이벤트 로그와 비동기적으로 상호 작용하는 방법을 제공합니다. 지원 클래스는 권한 제한, 이벤트 로그 유형(이벤트 로그 항목으로 작성된 기본 데이터 형식을 제어하는)을 지정하는 기능, 이벤트 로그 항목의 컬렉션을 반복하는 기능 등 보다 자세한 제어에 대한 액세스를 제공합니다. 이러한 작업에 대한 자세한 내용은 EventLogPermission, EventLogEntryTypeEventLogEntryCollection 클래스를 참조하세요.

  • Process 클래스는 네트워크를 통해 시스템 프로세스를 모니터링하고 로컬 시스템 프로세스를 시작하고 중지하는 기능을 제공합니다. 컴퓨터, 프로세스 이름 또는 프로세스 ID를 지정하여 실행 중인 프로세스 목록을 검색하거나 현재 프로세서에 액세스할 수 있는 프로세스에 대한 정보를 보는 것 외에도 Process 클래스 자체를 통해 프로세스 스레드 및 모듈에 대한 자세한 지식과 ProcessThreadProcessModule 클래스와 상호 작용할 수 있습니다. ProcessStartInfo 클래스를 사용하면 입력, 출력 및 오류 스트림, 작업 디렉터리, 명령줄 동사 및 인수와 같은 새 프로세스를 시작할 다양한 요소를 지정할 수 있습니다. 이를 통해 프로세스의 동작을 세밀하게 제어할 수 있습니다. 다른 관련 클래스를 사용하면 창 스타일, 프로세스 및 스레드 우선 순위를 지정하고 스레드 및 모듈 컬렉션과 상호 작용할 수 있습니다.

  • PerformanceCounter 클래스를 사용하면 시스템 성능을 모니터링할 수 있지만 PerformanceCounterCategory 클래스는 새 사용자 지정 카운터 및 범주를 만드는 방법을 제공합니다. 로컬 사용자 지정 카운터에 쓰고 로컬 및 원격 카운터(시스템 및 사용자 지정)에서 읽을 수 있습니다. PerformanceCounter 클래스를 사용하여 카운터를 샘플링하고 CounterSample 클래스를 사용하여 연속 성능 카운터 샘플의 결과를 계산할 수 있습니다. CounterCreationData 클래스를 사용하면 범주에 여러 카운터를 만들고 해당 형식을 지정할 수 있습니다. 성능 카운터 구성 요소와 연결된 다른 클래스는 카운터 컬렉션, 카운터 권한 및 카운터 형식에 대한 액세스를 제공합니다.

또한 System.Diagnostics 네임스페이스는 애플리케이션을 디버그하고 코드 실행을 추적할 수 있는 클래스를 제공합니다. 자세한 내용은 TraceDebug 클래스를 참조하세요.