共用方式為


使用新增工作階段對話方塊建立擴充事件工作階段

[新增工作階段] 對話方塊讓您定義擷取、顯示及分析資料的擴充事件工作階段。 [新增工作階段] 對話方塊會公開所有擴充事件功能。

新增工作階段精靈也讓您定義支援大部分擴充事件功能的擴充事件工作階段。

若要開始作業

若要在 [物件總管] 中開啟 [新增工作階段] 對話方塊,請展開 [管理] 節點,然後再展開 [擴充事件]。 以滑鼠右鍵按一下 [工作階段],然後按一下 [新增工作階段]

權限

若要建立「擴充事件」工作階段,您必須擁有 ALTER ANY EVENT SESSION 權限。

若要使用新增工作階段對話方塊建立擴充事件工作階段

您可使用 [一般] 頁面選取範本,並排定事件工作階段。

若要選取範本及排定事件工作階段

  1. 在 [物件總管] 中,依序展開 [管理] 節點和 [擴充事件]。 以滑鼠右鍵按一下 [工作階段],然後按一下 [新增工作階段]

  2. [一般] 頁面的 [工作階段名稱] 方塊中,為事件工作階段輸入有意義的名稱。

  3. [範本] 方塊中,從下拉式清單選取您想要使用的範本。

    您可以從針對常見問題所設計的一組預先設定範本中選取,或者可以選取 [從檔案] 使用從先前工作階段定義匯出的範本檔案。 請注意,當您套用範本之後,也可以變更工作階段的組態。

  4. 如果當您啟動伺服器時想要啟動工作階段,請在 [排程] 區段中選取 [在伺服器啟動時啟動事件工作階段] 核取方塊。

    如果當您建立工作階段之後想要啟動工作階段,請選取 [在工作階段建立後立即啟動事件工作階段] 核取方塊。

  5. 若要檢視事件工作階段的即時資料,請按一下 [擷取同時監看畫面上的即時資料]。 建立工作階段之後,即時資料將會立即開始顯示追蹤。

  6. [因果追蹤] 區段中,選取 [追蹤事件相互關聯的方式] 核取方塊來追蹤橫跨多個任務的工作。

    如需有關因果追蹤的詳細資訊,請參閱<SQL Server 擴充的事件工作階段>主題中的<工作階段內容和特性>。

    若要將事件加入至工作階段,請在 [選取頁面] 區段中,按一下 [事件]

    [!附註]

    要等到完成事件工作階段的建立作業之後,才能按一下 [確定]

您可以使用 [事件] 頁面來尋找並新增您想要為工作階段擷取的事件。

若要將事件加入至工作階段

  1. 在 [新增工作階段] 對話方塊中,於 [選取頁面] 區段內選取 [事件]

  2. [事件] 頁面上按一下 [選取] (如果您已經在 [選取您要從事件程式庫擷取的事件] 畫面上,則 [選取] 按鈕會呈現暗灰色)。

    您可以在 [事件程式庫] 方塊中輸入您想要搜尋的文字,以搜尋資料表中的任何文字。 例如,如果您想要尋找 lock_acquired 事件,您可以輸入 locklock acquire

  3. [事件程式庫] 區段中,選取您要如何搜尋您想從下拉式清單中擷取的事件。 例如,您可以搜尋事件名稱或是事件名稱及其說明。 在 [搜尋] 方塊中,輸入您的搜尋準則。

    [!附註]

    根據預設,[偵錯] 通道的事件是隱藏的。 若要顯示偵錯事件,請從 [通道] 下拉式清單中選取 [偵錯]

    選定事件的詳細資料會出現在 [詳細資料] 窗格的 [事件程式庫] 底下。

    這些事件會依據名稱的字母順序來排序。 您可以按一下適當的資料行標題來排序其他事件詳細資料。 例如,您可依據 [類別目錄][通道] 資料行排序。

  4. 選取您想要擷取的事件,然後按一下向右箭號,將事件移到 [選取的事件] 區段。

    [!附註]

    您可以使用 CTRL 或 SHIFT 鍵,同時從 [事件程式庫] 選取多個事件。

    若要設定選取的事件,請按一下 [設定]

    [!附註]

    要等到完成事件工作階段的建立作業之後,才能按一下 [確定]

您可使用 [資料存放區] 頁面,將目標加入至事件工作階段。 目標會儲存事件資料而且可以執行動作,例如將事件儲存至檔案以供日後檢視以及彙總工作階段的事件資料。 如需有關「擴充事件」目標的詳細資訊,請參閱<SQL Server 擴充的事件目標>。

以下是您可用於「擴充事件」工作階段的目標:

  • etw_classic_sync_target。 用於建立 SQL Server 事件與 Windows 作業系統或應用程式事件資料的關聯。

  • event_counter。 計算「擴充事件」工作階段啟動之後發生之所有指定之事件的數目。 用於取得有關工作負載特性的資訊,而不會增加完整事件收集的負擔。

  • event_file。 用於將完整記憶體緩衝區的事件工作階段輸出寫入磁碟。

  • histogram。 用於根據指定的事件資料行或動作,計算指定之事件的發生次數。

  • pair_matching。 用於判斷指定之配對事件不會發生在相符集合中的時機。

  • ring_buffer。 用於根據先進先出 (FIFO) 規則或每一個事件的 FIFO 規則,將事件資料存放於記憶體。

若要設定工作階段的全域欄位

  1. [事件] 頁面上,當您選取您想要加入至事件工作階段的事件之後,請按一下 [設定]

    在您按一下 [設定] 之後,[事件程式庫] 區段會摺疊,而且 [選取的事件] 區段會滑至頁面左邊。 您想要用來設定事件的 [事件組態選項] 區段會出現在頁面的右邊。 您可使用此頁面上的索引標籤,為您的事件工作階段設定動作。

  2. [全域欄位] 索引標籤上,選取您要套用到選定事件的欄位。

    您可以為每個事件選取多個欄位。

    [!附註]

    如果已選取的兩個事件已設定不同的動作,「擴充事件」將會顯示部分核取的動作。 若要快速尋找您已啟用的動作,您可以按一下核取方塊上方的欄位標題,依啟用/停用狀態排序。

  3. [篩選] 索引標籤上,套用篩選 (也稱為述詞) 來限制您想要擷取的事件。

    如果篩選套用到選取的事件,資料行中會出現核取符號。

    [!附註]

    您可以使用 CTRL 或 SHIFT 鍵,選取您想要套用篩選的多個事件。 但是,只會出現一般事件欄位供您設定。 如果兩個選取的事件已經有設定不同的篩選,將不會出現此篩選。 重新設定篩選將會覆寫現有的篩選值。

    [!附註]

    當您為篩選設定群組子句時,儲存結果之後會從篩選中移除多餘的括號。 例如,如果您建立篩選群組 Clause 1Clause 2,括號將會出現在子句的周圍。 當您儲存篩選之後,將會移除多餘的括號。 移除括號並不會影響篩選邏輯。

  4. [事件欄位] 索引標籤上,選取您要套用到選定事件的事件欄位。

    事件包含一定會收集的欄位數目,這會顯示在 [事件欄位] 索引標籤上,而且沒有核取方塊。 事件也可以有預設不會收集的選擇性欄位 (例如,高成本的選擇性欄位便不會選取)。 選擇性欄位也會列在 [事件欄位] 索引標籤上,而且包含核取方塊。 若要收集選擇性欄位,請選取選擇性欄位前面的核取方塊。

    [!附註]

    事件欄位選項將會顯示欄位,這些欄位將會在追蹤結果中擷取及檢視 (「擴充事件」只會顯示事件欄位的資料類型。 例如,不會顯示唯讀事件欄位)。如果您選取兩個或多個事件,[新增工作階段] 對話方塊將會在 [事件欄位] 索引標籤上顯示空白。

  5. 若要將目標加入至事件工作階段,請在 [選取頁面] 區段中選取 [資料存放區]

    [!附註]

    要等到完成事件工作階段的建立作業之後,才能按一下 [確定]

若要將目標加入至事件工作階段

  1. 在 [新增工作階段] 對話方塊中,於 [選取頁面] 區段內選取 [資料存放區]

  2. [資料存放區] 頁面上,從下拉式清單選取目標類型。

    當您選取目標類型之後,便會顯示目標說明。 您只能加入目標一次。 如果您已經將目標加入至工作階段,它將不會出現在下拉式清單中。

  3. 按一下 [加入],加入事件工作階段的目標。 如果您想要移除目標,請按一下 [移除]

    目標屬性會根據您選取的目標出現在 [目標] 區段下方。

  4. 以下是您可以指定的屬性 (受限於您所選取的目標):

    目標

    目標屬性

    etw_classic_sync_target

    伺服器上的工作階段記錄檔名稱。 輸入伺服器上的記錄檔名稱和目錄,或是按一下 [瀏覽],尋找及選取記錄檔。

    記錄檔大小上限。 輸入 Windows 事件追蹤 (ETW) 事件的記錄檔大小上限。 預設值為 20 MB。 您可以從下拉式清單中選取不同的儲存單位。

    緩衝區大小。 輸入事件工作階段的記憶體內緩衝區大小。 預設值為 128 KB。 您可以從下拉式清單中選取不同的儲存單位。

    工作階段名稱。 輸入有意義的 ETW 工作階段名稱。

    重試寫入 ETW 時發生的錯誤。 選取此核取方塊,重試將此事件發行給 ETW 子系統。

    最大重試數目。 輸入您在卸除事件之前,想要重試將此事件發行給 ETW 子系統的最大次數。 預設的重試次數為零 (0)。 對於這個目標屬性而言,零 (0) 表示無重試。

    event_counter

    事件計數器沒有目標屬性。

    event_file

    伺服器上的檔案名稱。 輸入伺服器上的目錄和目標檔案名稱,或是按一下 [瀏覽],尋找及選取目標檔案。

    檔案大小上限。 指定檔案目標的檔案大小上限。 如果未指定檔案大小上限,檔案可以成長到磁碟已滿。 預設檔案大小為 1 GB。 您可以從下拉式清單中選取不同的儲存單位。

    啟用檔案換用。 選取此核取方塊可啟用檔案目標的檔案換用。

    最大檔案數目。 輸入您想要在檔案系統中保留的最大檔案數目。

    histogram

    要篩選的事件。 從下拉式清單中選取要篩選的事件。 您可以篩選存在於事件工作階段中的任何事件。 您也可以從下拉式清單選取 [<無>],在動作上包含所有事件和基底值區。

    基底值區歸屬: 動作。 選取此選項可讓基底值區歸屬於當做資料來源使用的動作名稱,然後從下拉式清單中選取此動作。

    基底值區歸屬: 欄位。 選取此選項可讓基底值區歸屬於當做資料來源使用的事件欄位,然後從下拉式清單中選取此欄位。

    最大值區數目。 輸入您想要保留的最大值區數目。 當到達這個值時,事件工作階段將會忽略不屬於現有值區的任何新事件。

    pair_matching

    事件: 開頭。 從下拉式清單中選取事件名稱,該事件名稱會指定配對順序中的開始事件。

    事件: 結尾。 從下拉式清單中選取事件名稱,該事件名稱會指定配對順序中的結尾事件。

    欄位和動作: 開頭。 從下拉式清單中選取配對順序中的開頭欄位及/或動作。

    欄位和動作: 結尾。 從下拉式清單中選取配對順序中的結尾欄位及/或動作。

    捨棄全新未配對的事件 (如果記憶體出現壓力)。 選取此核取方塊可在電腦出現記憶體壓力時,停止將事件收集到 pair_matching 目標。 當記憶體壓力不再出現時,將會繼續收集事件。

    最大遺棄事件數目。 指定您想要保留在記憶體中的最大遺棄事件數目。

    ring_buffer

    要保留的事件數目。 使用向上箭號與向下箭號,指定您想要保留的事件數目。 預設值是 1000。

    緩衝區記憶體大小上限。 輸入要使用的最大記憶體數量。 當到達這個值時,將會捨棄現有的事件。 預設記憶體大小是 0 MB,表示無限制。 您可以從下拉式清單中選取不同的儲存單位。

    在緩衝區已滿時保留指定的事件數目 (每一類型)。 選取此選項可將每一類型的指定事件數目保留在緩衝區內。

    要保留的事件數目 (每一類型)。 輸入要保留在緩衝區內之每一個事件類型的慣用數目。

  5. 如果您想要設定進階組態屬性,請在 [選取頁面] 區段中選取 [進階]

    [!附註]

    要等到完成事件工作階段的建立作業之後,才能按一下 [確定]

若要設定進階組態

  1. 在 [新增工作階段] 對話方塊中,於 [選取頁面] 區段內選取 [進階]

  2. [進階] 頁面上,若要為事件工作階段指定 [事件保留模式] 選項,請執行下列動作:

    1. 單一事件遺失: 選取這個選項可允許遺失單一事件。

    2. 多個事件遺失: 選取這個選項可允許遺失多個事件。

    3. 無事件遺失: 如果您想要避免事件遺失,請選取這個選項。 我們不建議您選取這個選項。

      [!附註]

      某些事件 (例如 sqlos.wait_info 事件) 與 [無事件遺失] 事件保留模式不相容。

  3. 若要為事件工作階段指定 [最大分派延遲] 選項,請執行下列動作:

    1. 以秒為單位: 選取這個選項可延長或縮短最大分派延遲。 使用向上和向下箭號來指定最大分派延遲 (以秒為單位)。

    2. 無限制: 如果您只有在緩衝區已滿時才想要分派事件,請選取這個選項。

  4. [記憶體大小上限] 方塊中,輸入記憶體大小上限。 當到達這個值時,將會捨棄現有的事件。 您可以從下拉式清單中選取不同的儲存單位。

  5. [事件大小上限] 方塊中,針對太大而無法容納在 [記憶體大小上限] 中的事件輸入事件大小上限。 如果您並未收集很大量的事件,您並不需要設定這個選項。 您可以從下拉式清單中選取不同的儲存單位。

  6. 若要為事件工作階段指定 [記憶體磁碟分割模式] 選項,請執行下列動作:

    1. : 如果您不想要記憶體磁碟分割模式,請選取這個選項。

    2. 每個節點: 如果您想要針對每個節點分割記憶體,請選取這個選項。

    3. 每一 CPU: 如果您想要針對每一 CPU 分割記憶體,請選取這個選項。

若要還原先前工作階段屬性的組態預設值,請按一下 [還原預設值]

請參閱

工作

使用精靈建立擴充事件工作階段 (物件總管)

編寫擴充事件工作階段的指令碼

概念

使用查詢編輯器建立擴充事件工作階段