共用方式為


檢視事件工作階段資料

本主題描述如何使用顯示使用者介面來查看並分析擴充事件資料:

  • 檢視目標資料

  • 使用資料

檢視目標資料

您可以在 SQL Server Management Studio 中顯示收集到指定目標內的資料。

檢視目標資料

若要檢視目標資料:

  1. 在 [物件總管] 中,依序展開 [管理][擴充事件][工作階段],然後展開工作階段。

  2. 以滑鼠右鍵按一下目標名稱,然後按一下 [檢視目標資料] 顯示目標資料。

    目標資料視窗會出現在預設檢視中,並顯示目標資料。

有關檢視目標資料的注意事項:

  • 目標資料不適用於 ETW 目標。

  • 若要檢視 xml 格式的 ring_buffer 資料,請在目標資料視窗中按一下 [ring_buffer 目標資料] 連結。 ring_buffer.xml 檔案就會出現在 xml 編輯器中。

  • 若為 event_file 目標,請使用下列其中一種方法來檢視檔案目標資料 (.XEL 檔案):

    • 在 SQL Server Management Studio 中使用 [檔案] -> [開啟]。

    • 將檔案拖放至 SQL Server Management Studio 中。

    • 按兩下 .XEL 檔案。

    • 在 SQL Server Management Studio 中,以滑鼠右鍵按一下執行中的「擴充事件」工作階段,然後選取 [檢視目標資料]。

    • fn_xe_file_target_read_file

    • 您可以在 [檔案] -> [開啟] 功能表中選取 [合併擴充的事件檔案],藉以檢視多個 .XEL 檔案。

監看即時資料

您可以監看正在擷取的即時資料。

  • 在 [物件總管] 中,依序展開 [管理][擴充事件][工作階段] 節點。

  • 以滑鼠右鍵按一下工作階段名稱,然後按一下 [監看即時資料],開始顯示追蹤資料。

    預設顯示資料行為 [事件名稱][時間戳記]

    若要在追蹤視窗中加入其他資料行,請按一下 [擴充事件] 工具列上的 [選擇資料行] 按鈕。 [詳細資料] 索引標籤會顯示選定事件的所有事件詳細資料。

    事件通常會在約 30 秒內顯示。 如果您想要變更延遲期間,可以在 [新增工作階段] 對話方塊的 [進階] 頁面上變更 [最大分派延遲]

若要重新整理目標資料

event_files 目標不支援重新整理目標資料:

  1. 若要自動重新整理目標資料,請以滑鼠右鍵按一下目標資料、選取 [重新整理間隔],然後從間隔清單中選取重新整理間隔。

  2. 若要暫停及繼續自動重新整理,請以滑鼠右鍵按一下目標資料,然後選取 [暫停][繼續]

  3. 若要手動重新整理目標資料,請以滑鼠右鍵按一下目標名稱,然後選取 [重新整理]

使用資料

您可以使用 [擴充事件] 使用者介面的分析功能來識別問題。

詳細資料窗格

[詳細資料] 窗格會顯示選取事件的所有資料行,包括欄位和動作。 您可以用滑鼠右鍵按一下 [詳細資料] 窗格中的資料列,然後選取 [顯示資料表中的資料行],藉以將資料行加入至目標資料表。

建立、修改或刪除合併的資料行

合併的資料行可讓您結合一組要顯示在單一資料行中的欄位。 合併的資料行將根據欄位加入至欄位清單的順序,顯示第一個非 NULL 欄位中的資料。 這與您在 SQL Server Profiler 中看見的內容很相似,其中特定資料行可能會根據事件顯示不同的資料 (最常見的範例就是 SQL Server Profiler 中的 TextData 欄位)。 例如,您可能會分別將 sql_statement_completed 和 sql_batch_completed 事件中的 statement 和 batch_text 欄位合併成名為 myStatement 的欄位。 當您在資料表中顯示 myStatement 資料行時,它將針對相關聯的事件顯示適當的資料。

您可以建立、修改或刪除合併的資料行:

  1. 開啟 .XEL 檔案以檢視追蹤結果 (您也可以用滑鼠右鍵按一下工作階段名稱,然後選取 [監看即時資料])。

  2. 在追蹤結果視窗中,以滑鼠右鍵按一下資料行標頭,然後按一下 [選擇資料行]

若要建立合併的資料行,請在 [選擇資料行] 對話方塊中按一下 [新增]。 在 [新增合併的資料行] 對話方塊中,為合併的資料行命名,然後選取要包含在合併資料行中的原始資料行。

若要編輯合併的資料行,請在 [選擇資料行] 對話方塊中選取合併的資料行,然後按一下 [編輯]。 在 [編輯合併的資料行] 對話方塊中,重新命名合併的資料行,或修改要包含在合併資料行中的原始資料行。

若要刪除合併的資料行,請在 [選擇資料行] 對話方塊中選取合併的資料行,然後按一下 [刪除]

篩選結果

您可以檢視追蹤結果,然後套用篩選以縮小追蹤視窗中顯示的追蹤結果範圍。 顯示篩選包含時間篩選和進階篩選。 時間篩選可用來依事件時間戳記篩選追蹤結果,而進階篩選可用來透過事件欄位和動作建構篩選條件。 時間篩選和進階篩選之間存在「及」關聯性。

若要建立篩選:

  1. 開啟 .XEL 檔案以檢視追蹤結果 (您也可以用滑鼠右鍵按一下工作階段名稱,然後選取 [監看即時資料])。

  2. 在追蹤結果視窗中選取要篩選的結果,然後在 [擴充事件] 工具列上按一下 [篩選]

  3. [篩選] 對話方塊中,選取 [設定時間篩選] 以透過拖曳滑動軸或修改編輯方塊中的時間來設定時間篩選。

  4. [其他篩選] 區段中,套用篩選準則,然後按一下 [套用]

排序結果

若要以遞增或遞減順序排序結果:

  1. 開啟 .XEL 檔案以檢視追蹤結果 (您也可以用滑鼠右鍵按一下工作階段名稱、選取 [監看即時資料],然後按一下工具列上的 [停止資料摘要] 按鈕)。

  2. 在追蹤結果視窗中,以滑鼠右鍵按一下您想要排序的資料行標題,然後按一下 [遞增排序][遞減排序]

您也可以按一下資料行標頭來反轉排序次序。

如果已對資料行進行分組,則資料行排序只會對群組中的資料進行排序。

將結果分組

分組的結果就相當於 Transact-SQL 中 GROUP BY 子句的功能。 目標資料表將顯示分成一組的資料,讓您展開或摺疊資料。

您必須先將資料分組,然後才能進行彙總。 例如,您可以針對 query_hash 值分組、依照持續時間遞減排序、取得每個群組的平均持續時間,然後針對彙總遞減排序。 這樣就會產生一份清單,其中列出平均持續時間最長到最短的唯一陳述式。 當您展開最上方的群組時,就會看見該特定查詢的個別執行時間 (從最長到最短排序)。

您可以依照單一資料行或多個資料行,將結果分組。

開啟 .XEL 檔案以檢視追蹤結果 (您也可以用滑鼠右鍵按一下工作階段名稱、選取 [監看即時資料],然後按一下工具列上的 [停止資料摘要] 按鈕)。

若要依照單一資料行,將結果分組,請以滑鼠右鍵按一下追蹤結果視窗中的資料行標題,然後按一下 [依此資料行群組]。 若要恢復分組,請選取其中一個資料列,然後按一下 [移除所有群組]

若要依照多個資料行,將結果分組,請按一下 [擴充事件] 工具列上的 [群組] 按鈕。 在 [群組] 對話方塊的 [可用的資料行] 方塊中,選取您想要分組的資料行,然後將它們移至 [群組的資料行依據] 方塊中。 若要變更 [群組的資料行依據] 方塊中的順序,請按一下向上箭頭或向下箭頭。

彙總結果

您可以檢視追蹤結果,然後透過彙總結果中的資料行來進一步分析事件資料。 擴充事件支援五個彙總函式:

  • Sum

  • Min

  • Max

  • Average

  • Count

Sum、Min、Max 和 Average 只能搭配數值資料行使用。 Count 是群組中所選資料行的非 Null 值數目。

由於彙總是針對群組執行,因此您必須先將結果分組,然後才能執行彙總。 若要彙總結果:

  1. 開啟 .XEL 檔案以檢視追蹤結果 (您也可以用滑鼠右鍵按一下工作階段名稱、選取 [監看即時資料],然後按一下工具列上的 [停止資料摘要] 按鈕)。

  2. [擴充事件] 工具列上,按一下 [彙總] 按鈕。 [彙總] 對話方塊將會顯示可用於彙總的資料行。

  3. [彙總類型] 資料行中,選取彙總類型。

  4. [彙總排序依據] 方塊中,選取排序資料行。 然後,選取遞增或遞減順序。

在資料行中搜尋文字

您可以在資料行中搜尋文字:

  1. 開啟 .XEL 檔案以檢視追蹤結果 (您也可以用滑鼠右鍵按一下工作階段名稱,然後選取 [監看即時資料])。

  2. 按一下 [擴充事件] 工具列上的 [尋找]

  3. [在擴充事件中尋找] 對話方塊的 [尋找目標] 方塊中,輸入搜尋文字。 您可以從下拉式清單中選取最後 20 個搜尋字串的其中之一。

  4. [查詢] 方塊中,選取要搜尋指定文字的位置。 使用下列搜尋選項:

    • 資料表資料行: 使用此選項可在追蹤視窗中搜尋所有可見資料行。

    • 詳細資料: 使用此選項可在追蹤視窗中搜尋在開啟 [在擴充事件中尋找] 對話方塊之前已選取的所有資料行 (已升級和非升級)。

    • Event_column_name. 使用此選項可在下拉式清單的特定事件資料行中進行搜尋。

  5. 使用下列選項,指定定義搜尋的方式:

    • 大小寫須相符: 使用此選項可顯示與 [尋找目標] 方塊中輸入文字的內容和大小寫都相符的搜尋結果。

    • 全字拼寫須相符: 使用此選項即可僅顯示與輸入文字完全相符的搜尋結果。

    • 向上搜尋: 使用此選項可從游標位置開始搜尋至結果開頭。

    • 使用: 使用此選項可解譯 [尋找目標] 方塊中輸入的特殊字元和規則運算式。 特殊字元包含萬用字元 (*) 和 (?),用於表示一個或多個字元。 規則運算式是用於定義搜尋文字模式的特殊標記法。

    • 按一下 [找下一個] 可搜尋在 [尋找目標] 方塊中輸入的下一個文字。

書籤

若要更輕鬆地返回資料列,您可以將目標資料中的一個或多個資料列設定為書籤。 請以滑鼠右鍵按一下要變更書籤的資料列。 然後,使用 [擴充事件] 工具列上的 [上一個] 和 [下一個] 按鈕來導覽至設為書籤的資料列。

變更顯示設定

您可以儲存資料行資訊 (資料行順序、合併資料行和資料行寬度),並將追蹤結果的資訊篩選到「擴充事件」顯示設定檔案 (.viewsetting 檔案)。 在儲存檔案後,您可以將它套用到追蹤結果以變更檢視。

若要變更顯示設定:

  1. 開啟 .XEL 檔案以檢視追蹤結果 (您也可以用滑鼠右鍵按一下工作階段名稱,然後選取 [監看即時資料])。

  2. [擴充事件] 工具列上,選取 [顯示設定]。 從下拉式清單中,選取下列其中一個選項:

    • 另存新檔: 將追蹤結果的資料行和篩選資訊儲存為 .viewsetting 檔案。

    • 開啟: 開啟現有的 .viewsetting 檔案。

    • 開啟最近使用的項目: 開啟最近儲存的 .viewsetting 檔案。

複製或匯出追蹤結果

您可以將追蹤結果中的資料格、資料列和詳細資料複製到選取的資料列。 您也可以將追蹤結果匯出到以下項目:

  • .XEL 檔

  • 資料表

  • .CSV 檔

若要複製追蹤結果,請選取資料格或資料列、按一下滑鼠右鍵、選取 [複製],然後選取 [資料格][資料列][詳細資料]。 擴充事件最多支援複製 1000 個資料列。

您可以在 SQL Server Management Studio 的 [擴充事件] 功能表選項中選取 [匯出至],藉以將追蹤結果匯出至 .XEL 檔案、資料表或 .CSV 檔案。

檢視死結圖形和查詢計畫

您可以在 [詳細資料] 窗格中檢視 xml_deadlock_report 的死結圖形,幫助您針對死結進行疑難排解。 您也可以檢視下列事件的查詢計畫圖形:

  • query_post_compilation_showplan

  • query_pre_execution_showplan

  • query_post_execution_showplan

若要檢視死結圖形:

  • 在 [物件總管] 中,依序展開 [管理][擴充事件][工作階段] 節點。

  • 以滑鼠右鍵按一下包含您想要檢視之已設定死結事件的工作階段,然後選取 [監看即時資料]

  • 選取死結事件,並在 [詳細資料] 窗格的 [死結] 索引標籤上檢視圖形。

若要檢視查詢計畫圖形:

  1. 在 [物件總管] 中,依序展開 [管理][擴充事件][工作階段] 節點。

  2. 以滑鼠右鍵按一下包含您想要檢視之查詢計畫圖形的工作階段 (例如 query_post_compilation_showplan),然後選取 [監看即時資料]

  3. 選取查詢計畫圖形事件 (例如 query_post_compilation_showplan),並在 [詳細資料] 窗格的 [查詢計畫] 索引標籤上檢視圖形。