次の方法で共有


重大度レベルを使用してアラートを作成する

このトピックでは、SQL Server Management Studio または Transact-SQL を使用して、SQL Server 2014 で特定の重大度レベルのイベントが発生したときに発生する Microsoft SQL Server エージェント アラートを作成する方法について説明します。

このトピックについて

開始する前に

制限事項と制約条件

  • SQL Server Management Studio は、アラート システム全体を管理するための簡単でグラフィカルな方法を提供し、アラート インフラストラクチャを構成するための推奨される方法です。

  • xp_logevent で生成されたイベントは、マスター データベースで発生します。 そのため、アラートの @database_name が 'master' または NULL でない限り、xp_logevent はアラートをトリガーしません。

  • 重大度レベルが 19 ~ 25 の場合、SQL Server メッセージが Microsoft Windows アプリケーション ログに送信され、アラートがトリガーされます。 重大度レベルが 19 未満のイベントは、sp_altermessage、RAISERROR WITH LOG、または xp_logevent を使用して Windows アプリケーション ログに強制的に書き込まれた場合にのみアラートをトリガーします。

安全

権限

既定では、sysadmin 固定サーバー ロールのメンバーのみが sp_add_alertを実行できます。

SQL Server Management Studio の使用

重大度レベルを使用してアラートを作成するには

  1. オブジェクト エクスプローラーで、プラス記号 クリックして、重大度レベルを使用してアラートを作成するサーバーを展開します。

  2. プラス記号をクリックして、SQL Server エージェントを展開してください。

  3. アラート を右クリックし、新しいアラート を選択します。

  4. [新しいアラート] ダイアログ ボックスの [名前] ボックスに、このアラートの名前を入力します。

  5. [の種類] の一覧で、 [SQL Server イベント アラート ] を選択します。

  6. イベント アラート定義の [データベース名] 一覧で、アラートを特定のデータベースに制限するデータベースを選択します。

  7. [アラートはに基づいて発生します]。[重大度] をクリックし、その後、アラートを発生させる特定の重大度を選択します。

  8. メッセージに が含まれている場合にアラートを発生させる に対応するチェック ボックスをオンにして、アラートを特定の文字シーケンスに制限し、メッセージ テキストのキーワードまたは文字列を入力します。 最大文字数は 100 文字です。

  9. OK をクリックします。

Transact-SQL の使用

重大度レベルを使用してアラートを作成するには

  1. オブジェクト エクスプローラーで、 データベース エンジンのインスタンスに接続します。

  2. 標準バーで [新しいクエリ] をクリックします。

  3. 次の例をコピーしてクエリ ウィンドウに貼り付け、 [実行] をクリックします。

    -- adds an alert (Test Alert) that runs the Back up the AdventureWorks2012 Database job when fired   
    -- assumes that the message 55001 and the Back up the AdventureWorks2012 Database job already exist.  
    USE msdb ;  
    GO  
    
    EXEC dbo.sp_add_alert  
        @name = N'Test Alert',  
        @message_id = 55001,   
       @severity = 0,   
       @notification_message = N'Error 55001 has occurred. The database will be backed up...',   
       @job_name = N'Back up the AdventureWorks2012 Database' ;  
    GO  
    

詳細については、「sp_add_alert (Transact-SQL)を参照してください。