Write the Job Status to the Windows Application Log

適用於:SQL ServerAzure SQL 受控執行個體

重要

Azure SQL 受控執行個體目前支援多數 (但非全部) 的 SQL Server Agent 功能。 如需詳細資料,請參閱 Azure SQL 受控執行個體與 SQL Server 之間的 T-SQL 差異

本主題描述如何使用 SQL Server Management Studio、Transact-SQL 或 SQL Server 管理物件,在 SQL Server 中設定 Microsoft SQL Server Agent 來將作業狀態寫入 Windows 應用程式事件記錄檔。

作業回應可確保資料庫管理員知道作業已完成,以及作業的執行頻率。 典型的作業回應包括:

  • 使用電子郵件、電子呼叫或 net send 訊息通知操作員。 如果操作員必須執行後續動作,請使用其中一個作業回應。 例如,如果備份作業成功完成,必須告知操作員以取下備份磁帶,並將其存放在安全的地方。

  • 將事件訊息寫入至 Windows 應用程式記錄。 這個回應只用於失敗的作業。

  • 自動刪除作業。 如果確定您將不再需要重新執行這個作業,請使用這個作業回應。

開始之前

安全性

如需詳細資訊,請參閱< 實作 SQL Server Agent 安全性>。

使用 SQL Server Management Studio

若要將作業狀態寫入到 Windows 應用程式記錄

  1. 物件總管中,連接到 SQL Server Database Engine 的執行個體,然後展開該執行個體。

  2. 展開 [SQL Server Agent],展開 [作業],以滑鼠右鍵按一下要編輯的作業,然後按一下 [屬性]

  3. 選取 [通知] 頁面。

  4. 勾選 [寫入 Windows 應用程式事件記錄檔],並選擇下列其中一項:

    • 按一下 [當作業成功時],在作業成功完成時記錄作業狀態。

    • 按一下 [當作業失敗時],在作業失敗時記錄作業狀態。

    • 按一下 [作業完成時],不論完成狀態為何,一律記錄作業狀態。

使用 SQL Server 管理物件

若要將作業狀態寫入到 Windows 應用程式記錄

使用所選的程式語言,例如 Visual Basic、Visual C# 或 PowerShell,呼叫 Job 類別的 EventLogLevel 屬性。

下列程式碼範例會設定作業在作業執行完成時,產生作業系統事件記錄項目。

PowerShell

$srv = new-object Microsoft.SqlServer.Management.Smo.Server("(local)")  
$jb = new-object Microsoft.SqlServer.Management.Smo.Agent.Job($srv.JobServer, "Test Job")  
$jb.EventLogLevel = [Microsoft.SqlServer.Management.Smo.Agent.CompletionAction]::Always