將 EventSource 事件顯示為標記
並行視覺化檢視會顯示 EventSource 事件當做資料標記,然後,您可以控制項標記的顯示方式。您可以使用 進階設定 對話方塊以註冊 ETW 提供者 GUID,然後檢視 EventSource 標記。並行視覺化檢視有預設慣例將 EventSource 事件表示為 旗標標記、 延伸標記和 訊息標記。您可以藉由加入自訂欄位至事件,自訂 EventSource 事件如何顯示。如需巨集的詳細資訊,請參閱並行視覺化檢視中的標記。如需應用程式事件的詳細資訊,請參閱 System.Diagnostics.Tracing。
預設 EventSource 事件的視覺效果
根據預設,並行視覺化檢視會使用下列慣例表示 EventSource 事件。
標記類型
具有win:Start 或 win:Stop Opcode 的事件,將分別視為延伸的開頭或結尾。巢狀或重疊的延伸無法顯示。開始於一個執行緒和結尾於另一個執行緒的事件配對將無法顯示。
Opcode 不是win:Start 也不是win:Stop 的事件,,除非它的 色階 (EVENT_RECORD.EVENT_HEADER.EVENT_DESCRIPTOR 欄位) 是 win:Verbose 或更高,否則不會視為符號旗標。
在所有其他情況下,事件都視為訊息。
重要性
下列資料表定義事件層級如何對應至標記重要性。
ETW 階段 |
並行視覺化檢視的重要性 |
---|---|
Win: LogAlways |
Normal |
win: Critical |
Critical |
win: Error |
Critical |
win: Warning |
高 |
win: Informational |
Normal |
win: Verbose |
低 |
大於 win: verbose |
低 |
序列名稱。
事件的工作名稱被使用於系列名稱。如果事件沒有工作,序列名稱則會定義成空白。
分類
如果層級是 win: Critical或 win: Erro,則分類為警示 (- 1)。否則,分類為預設值 (0)。
文字
如果有一個事件的printf 型別的格式化文字訊息被定義,它會顯示為標記的描述。否則,這個描述是事件的名稱和每個裝載欄位的值。
自訂 EventSource 事件的視覺效果
您可以透過將適當的欄位顯示為事件來自訂 EventSource 事件,如下列章節所述。
標記類型
使用 cvType 欄位,一個位元組,控制用來表示事件的這種標記。cvType 可用的值:
cvType 值 |
產生標記的型別 |
---|---|
0 |
訊息 |
1 |
延伸的開頭 |
2 |
延伸的結尾。 |
3 |
旗標 |
所有其他的值 |
訊息 |
重要性
您可以使用 cvImportance 欄位,一個位元組,控制EventSource 事件的重要性的設定值。不過,我們建議您使用層級控制事件上所顯示的重要性。
cvImportance 值 |
並行視覺化檢視的重要性 |
---|---|
0 |
Normal |
1 |
Critical |
2 |
高 |
3 |
高 |
4 |
Normal |
5 |
低 |
所有其他的值 |
低 |
序列名稱。
使用 cvSeries 事件欄位, String,控制並行視覺化檢視提供給 EventSource 事件的系列名稱。
分類
使用 cvCategory 欄位,一個位元組,控制並行視覺化檢視提供給EventSource 事件的分類。
文字
使用 cvTextW 欄位, String,控制並行視覺化檢視提供給EventSource 事件的描述。
SpanID
使用 cvSpanId 欄位, int,以符合事件配對。表示間距的每一組值(開始/停止事件)必須是唯一的。通常並行程式碼要求使用同步處理基本型別 (例如 Exchange 以確認使用的金鑰 (提供給 CvSpanID值)是正確的。
注意事項 |
---|
使用 SpanID 巢狀延伸允許在相同執行緒部分重疊,但開始與結束於不同執行緒則不支援。 |