System.Diagnostics 命名空間
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
提供類別,其允許與系統處理序、事件記錄檔和效能計數器互動。
類別
Activity |
表示要用於記錄的內容作業。 |
ActivityListener |
允許接聽開始與停止活動事件,並提供讓您決定針對取樣案例建立活動的機會。 |
ActivitySource |
提供 API 來建立及啟動 Activity 物件,並註冊 ActivityListener 物件以接聽 Activity 事件。 |
ActivityTagsCollection |
ActivityTagsCollection 是用來儲存追蹤標籤的一種集合類別。 此集合將搭配 ActivityEvent 與 ActivityLink 等類別使用。 此集合的運作方式如下:
|
BooleanSwitch |
提供簡單的開啟/關閉參數,可控制偵錯和追蹤輸出。 |
ConditionalAttribute |
表示編譯器應該忽略方法呼叫或屬性,除非已定義指定的條件式編譯符號。 |
ConsoleTraceListener |
將追蹤或偵錯輸出直接導向到標準輸出或標準錯誤資料流。 |
CorrelationManager |
讓屬於邏輯異動一部分的追蹤產生關聯。 |
CounterCreationData |
為自訂計數器定義計數器的型別、名稱和說明字串。 |
CounterCreationDataCollection |
提供 CounterCreationData 物件的強類型集合。 |
CounterSampleCalculator |
提供解譯效能計數器資料的公用程式函式集。 |
DataReceivedEventArgs |
提供 OutputDataReceived 和 ErrorDataReceived 事件的資料。 |
Debug |
提供一組方法和屬性,可協助偵錯程式碼。 |
DebuggableAttribute |
修改執行階段 Just-In-Time (JIT) 偵錯的程式碼產生。 此類別無法獲得繼承。 |
Debugger |
使用偵錯工具啟用通訊。 此類別無法獲得繼承。 |
DebuggerBrowsableAttribute |
決定成員是否要顯示在偵錯工具變數視窗中,以及決定顯示方式。 此類別無法獲得繼承。 |
DebuggerDisplayAttribute |
決定類別或欄位在偵錯工具變數視窗中顯示的方式。 |
DebuggerHiddenAttribute |
指定 DebuggerHiddenAttribute。 此類別無法獲得繼承。 |
DebuggerNonUserCodeAttribute |
識別不屬於應用程式之使用者程式碼的類型或成員。 |
DebuggerStepperBoundaryAttribute |
指出屬性之後的程式碼是要在執行模式,而不是在步驟模式中執行。 |
DebuggerStepThroughAttribute |
指示偵錯工具逐步執行程式碼,而不要進入程式碼。 此類別無法獲得繼承。 |
DebuggerTypeProxyAttribute |
指定類型的顯示 Proxy。 |
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 |
保存與效能計數器樣本相關的執行個體 (Instance) 資料。 |
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 |
表示作業系統處理序 (Process) 執行緒。 |
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 |
為監視追蹤和偵錯輸出的接聽程式提供 |
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 |
定義為效能計數器保留未經處理資料 (Raw Data) 的結構。 |
Debug.AssertInterpolatedStringHandler |
提供的 Assert(Boolean) 插入字串處理常式,只有在判斷提示失敗時,才會執行格式設定。 |
Debug.WriteIfInterpolatedStringHandler |
提供 的 WriteIf(Boolean, String) 插補字串處理常式,只有在 WriteLineIf(Boolean, Object) 套用條件時才會執行格式設定。 |
TagList |
表示可由索引存取的標籤清單。 提供搜尋、排序和管理清單的方法。 |
TagList.Enumerator |
用於周遊標記清單集合的列舉值。 |
介面
ICollectData |
準備系統在使用效能計數器時,所要載入之效能 DLL 的效能資料。 |
列舉
ActivityIdFormat |
指定 Id 屬性的格式。 |
ActivityKind |
描述活動、其父代與追蹤中其子系之間的關聯性。 |
ActivitySamplingResult |
ActivityListener 所用的列舉值,其指出要針對相關 Activity 收集的資料量。 要求的資料越多,效能的負擔越大。 |
ActivityStatusCode |
定義 Activity 的狀態碼,指出已檢測作業的狀態。 |
ActivityTraceFlags |
指定由 W3C 標準定義,與活動建立關聯的旗標。 |
DebuggableAttribute.DebuggingModes |
指定 Just-In-Time (JIT) 編譯器的偵錯模式。 |
DebuggerBrowsableState |
提供偵錯工具的顯示指示。 |
EventLogEntryType |
指定事件記錄檔項目的事件型別。 |
EventLogPermissionAccess |
定義 EventLog 使用權限類別所使用的存取等級。 |
OverflowAction |
代表事件記錄檔累積到最大檔案容量時,應如何處理記錄檔內的資料。 |
PerformanceCounterCategoryType |
指出效能計數器分類是否可以具有多個執行個體。 |
PerformanceCounterInstanceLifetime |
指定效能計數器執行個體的存留期。 |
PerformanceCounterPermissionAccess |
定義 PerformanceCounter 使用權限類別所使用的存取等級。 |
PerformanceCounterType |
指定直接對應到原生類型的效能計數器類型。 |
PresentationTraceLevel |
描述要追蹤有關特定物件的詳細資訊層級。 |
ProcessPriorityClass |
表示系統與處理序 (Process) 關聯的優先權。 這個值與處理序每個執行緒的優先權值會判斷每個執行緒的基礎優先權層級。 |
ProcessWindowStyle |
指定系統啟動處理序 (Process) 時新視窗出現的方式。 |
SourceLevels |
指定以來源參數和事件型別篩選器篩選的追蹤訊息層級。 |
ThreadPriorityLevel |
指定執行緒的優先權層級。 |
ThreadState |
指定執行緒的目前執行狀態。 |
ThreadWaitReason |
指定執行緒正在等待的原因。 |
TraceEventType |
識別引發追蹤的事件型別。 |
TraceLevel |
指定要輸出 Debug、Trace 和 TraceSwitch 類別的哪些訊息。 |
TraceLogRetentionOption |
指定用於 EventSchemaTraceListener 記錄的檔案結構。 |
TraceOptions |
指定要寫入至追蹤輸出的追蹤資料選項。 |
委派
DataReceivedEventHandler |
表示將處理 OutputDataReceived 的 ErrorDataReceived 事件或 Process 事件的方法。 |
DistributedContextPropagator.PropagatorGetterCallback |
表示在傳播器的擷取方法中使用的回呼方法。 系統會叫用回呼來查閱具名欄位的值。 |
DistributedContextPropagator.PropagatorSetterCallback |
表示在傳播器插入方法中使用的回呼方法。 系統會叫用此回呼來設定具名欄位的值。 傳播程式可能會多次叫用它,以設定多個欄位。 |
EntryWrittenEventHandler |
代表將處理 EventLog 的 EntryWritten 事件之方法。 |
SampleActivity<T> |
委派;可定義取樣程序中使用的 ActivityListener 回呼簽章。 |
備註
元件 EventLog 提供寫入事件記錄檔、讀取事件記錄專案,以及建立和刪除網路上的事件記錄檔和事件來源的功能。 提供 EntryWrittenEventHandler 非同步與事件記錄互動的方式。 支援類別可讓您取得更詳細的控制,包括:權限限制、指定事件記錄檔類型的能力 (可控制以事件記錄檔項目寫入的預設資料類型),以及逐一查看事件記錄檔項目的集合。 如需這些工作的詳細資訊,請參閱 EventLogPermission 、 EventLogEntryType 和 EventLogEntryCollection 類別。
類別 Process 提供功能來監視網路上的系統進程,以及啟動和停止本機系統進程。 除了藉由指定電腦、進程名稱或進程識別碼 (來擷取執行中進程的清單,) 或檢視目前可存取處理器之進程的資訊,您可以透過 Process 類別本身取得進程執行緒和模組的詳細知識,以及與 ProcessThread 和 ProcessModule 類別互動。 類別 ProcessStartInfo 可讓您指定要啟動新進程的各種專案,例如輸入、輸出和錯誤資料流程、工作目錄,以及命令列動詞和引數。 這些元素可讓您精確控制程序的行為。 其他相關類別則可讓您指定視窗樣式、程序和執行緒優先順序,並與執行緒和模組的集合互動。
類別 PerformanceCounter 可讓您監視系統效能,而 PerformanceCounterCategory 類別提供方法來建立新的自訂計數器和類別。 您可以寫入到本機自訂計數器,並從本機和遠端計數器 (系統以及自訂) 進行讀取。 您可以使用 類別來 PerformanceCounter 取樣計數器,並使用 類別計算後續效能計數器樣本 CounterSample 的結果。 類別 CounterCreationData 可讓您在類別中建立多個計數器,並指定其類型。 與效能計數器元件相關聯的其他類別可讓您存取由計數器、計數器權限和計數器類型組成的集合。
System.Diagnostics命名空間也提供類別,可讓您對應用程式進行偵錯,並追蹤程式碼的執行。 如需詳細資訊,請參閱 Trace 和 Debug 類別。
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應