警報
適用於:SQL Server
重要
在 Azure SQL 受控實例上,目前支援大部分但並非所有 SQL Server Agent 功能。 如需詳細資訊,請參閱 與 SQL Server 的 Azure SQL 受控實例 T-SQL 差異。
事件是由 SQL Server 產生,並輸入Microsoft Windows 應用程式記錄檔。 SQL Server Agent 會讀取應用程式記錄,並將寫入該處的事件與您已定義的警示進行比較。 當 SQL Server Agent 找到匹配條件時,它會觸發警報,這是對事件的自動響應。 除了監視 SQL Server 事件之外,SQL Server Agent 也可以監視效能條件和 Windows Management Instrumentation (WMI) 事件。
若要定義警示,您可以指定:
警示的名稱。
觸發警示的事件或效能條件。
SQL Server Agent 回應事件或效能條件的動作。
命名警示
每個警示都必須有名稱。 警示名稱在 SQL Server 實例內必須是唯一的,而且不能超過 128 個字元。
選取事件類型
警示會回應特定類型的事件。 警示會回應下列事件類型:
SQL Server 事件
SQL Server 效能條件
WMI 事件
事件的型別會決定您用來指定精確事件的參數。
指定 SQL Server 事件
您可以指定要針對一或多個事件發生的警示。 使用下列參數來指定觸發警示的事件:
錯誤號碼
當發生特定錯誤時,SQL Server Agent 會引發警示。 例如,您可以指定錯誤號碼 2571 以回應未經授權嘗試叫用 Database Console Commands (DBCC)。
嚴重性層級
當發生特定嚴重性的任何錯誤時,SQL Server Agent 會引發警示。 例如,您可以指定嚴重性層級 15,以回應 Transact-SQL 語句中的語法錯誤。
資料庫
只有在特定資料庫中發生事件時,SQL Server Agent 才會引發警示。 除了錯誤號碼或嚴重性層級之外,此選項也適用。 例如,如果實例包含一個用於生產的資料庫,以及一個用於報告的資料庫,您可以定義只響應生產資料庫中語法錯誤的警示。
事件文字
當指定的事件包含事件訊息中的特定文字字串時,SQL Server Agent 會引發警示。 例如,您可以定義警示,以回應包含特定數據表或特定條件約束名稱的訊息。
選取效能條件
您可以指定在特定效能條件下觸發的警示。 在此情況下,您可以指定要監視的性能計數器、警示的臨界值,以及當警示發生時計數器必須呈現的運作方式。 若要設定效能條件,您必須在 [新警示] 或 [警示屬性] 對話框的 [SQL Server Agent 一般] 頁面中定義下列專案:
物件
對象是要監控的效能區域。
計數器
計數器是要監控區域的屬性。
實例
SQL Server 實例會定義要監視之屬性的特定實例(如果有的話)。
如果計數器 和 值 時,將觸發 警示。
警示的臨界值,以及產生警示的行為。 臨界值是數位。 此行為是下列其中一個 :低於,會變成等於,或 高於 Value指定的數位。 Value 是描述性能條件計數器的數位。 例如,若要在 鎖定等候 時間超過 30 分鐘時設定 SQLServer:Locks 性能物件的警示,您可以選擇 高於 並 將 30 設定為值。
另一個範例是,當 tempdb 中的可用空間低於 1000 KB 時,您可能會指定性能物件 SQLServer:Transactions 發生警示。 若要設定此設定,您可以選擇 tempdb (KB) 中的計數器可用空間,低於,而 值 為 1000。
注意
效能數據會定期取樣,這可能會導致達到閾值與發生效能警示之間的小延遲(幾秒鐘)。
注意
儲存伺服器名稱的事件記錄變數限制為32個字元。 因此,如果主機名和實例名稱的合併大小大於 32 個字元,您可能會收到下列錯誤:
Warning,[466] Failed to copy server name LONGNAMESQLSERV\LONGINSTANCENAME while generating performance counter alerts.
選取 WMI 事件
您可以指定警示是在回應特定 WMI 事件時發生的。 若要選取 WMI 事件,您必須在 [新增警示] 或 [警示屬性] 對話框的 [SQL Server Agent 一般] 頁面上定義下列專案:
命名空間
SQL Server Agent 會向提供給查詢事件的 WMI 命名空間註冊為 WMI 用戶端。
查詢
SQL Server Agent 使用提供的 Windows Management Instrumentation 查詢語言 (WQL) 語句來識別特定事件。
以下是常見任務的連結:
根據訊息編號建立警示
根據嚴重性層級建立警示
根據 WMI 事件建立警示
定義警示的回應
若要建立使用者定義的事件錯誤訊息
修改使用者定義事件錯誤訊息
刪除使用者定義事件錯誤訊息
停用或重新啟用警示