オブジェクト エクスプローラーでのイベント セッションの管理

適用対象:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance

このトピックでは、拡張イベントに影響する オブジェクト エクスプローラー で実行できる操作について説明します。

  • 拡張イベント セッションの作成

  • 拡張イベント セッションの開始または停止

  • 拡張イベント セッションのエクスポート

  • 拡張イベント セッション テンプレートのインポート

  • 拡張イベント セッションの編集

  • 拡張イベント セッションの削除

拡張イベント セッションの作成

拡張イベント セッションの作成の詳細については、「 拡張イベント セッションの作成」を参照してください。

拡張イベント セッションの開始または停止

拡張イベント セッションは、 クエリ エディターALTER EVENT SESSION ステートメント、または オブジェクト エクスプローラー[拡張イベント]ノードを使用して開始または停止できます。

イベント セッションを停止すると、以後そのセッションは、sys.dm_xe_sessions 動的管理ビュー (DMV) にアクティブなセッションとして表示されません。 ただし、セッションの定義は一切変更されず、セッションを再開することもできます。 セッションの定義を完全に削除するには、セッションを削除する必要があります。

拡張イベント セッションを開始または停止するには、ALTER ANY EVENT SESSION 権限が必要です。

リング バッファー、バケット、イベント ペアリング ターゲット、同期イベント カウンター ターゲットなど、メモリ内ターゲットを使用するセッションを停止すると、セッションのバッファーに格納されるすべての情報 (sys.dm_xe_session_targets DMV の target_data 列) が失われます。 セッションを停止した後にイベント データにアクセスするには、ファイル ターゲットを使用するようにセッションを構成するか、セッションを停止する前にデータを保存する必要があります。

クエリ エディターを使用した拡張イベント セッションの開始または停止

セッションを開始するには、次のステートメントを発行します。 session_name の部分は、拡張イベント セッションの名前に置き換えてください。

ALTER EVENT SESSION [session_name]  
ON SERVER  
STATE = START  

セッションを停止するには、次のステートメントを発行します。 session_name の部分は、拡張イベント セッションの名前に置き換えてください。

ALTER EVENT SESSION [session_name]  
ON SERVER  
STATE = STOP  

オブジェクト エクスプローラーでの拡張イベント セッションの開始または停止

オブジェクト エクスプローラーで拡張イベント セッションを開始または停止するには、 [管理]ノード、 [拡張イベント]ノード、および [セッション] ノードの順に展開し、セッションを右クリックして、 [セッションの開始] または [セッションの停止]をクリックします。

拡張イベント セッション テンプレートのエクスポート

オブジェクト エクスプローラーを使用して拡張イベント セッションをエクスポートし、.xml テンプレート ファイルとして保存することができます。 たとえば、セッションをエクスポートした後、 新規セッション ウィザード または 新規セッション ウィザードを使用して、そのテンプレートを新しいイベント セッションに適用できます。

セッションをエクスポートする際は、NTFS ファイル システムが使用されている場所にテンプレート ファイルを保存し、その情報を表示する権限を持つユーザーのみにアクセスを制限する必要があります。

オブジェクト エクスプローラーで拡張イベント セッションをエクスポートするには

  1. [管理]ノード、 [拡張イベント]ノード、および [セッション] ノードの順に展開します。

  2. エクスポートするセッションを右クリックし、 [セッションのエクスポート]をクリックします。

  3. [名前を付けて保存] ダイアログ ボックスで、ファイルの保存場所を選択し、 [ファイル名] ボックスにファイル名を入力し、 [保存]をクリックします。

    ファイルを既定の SQL Server Management Studio テンプレートの場所に保存すると、[新規セッション ウィザード] および [新しいセッション] ダイアログを使用するときに事前定義されたテンプレートのドロップダウン リストにテンプレートが表示されます。

拡張イベント セッション テンプレートのインポート

オブジェクト エクスプローラーを使用して、拡張イベント セッションのテンプレートをインポートすることができます。 たとえば、SQL Server の別のインスタンスからエクスポートされたテンプレートからセッションを作成する場合に、この操作を行うことができます。

拡張イベント セッションをインポートするには、 ALTER ANY EVENT SESSION 権限が必要です。

テンプレート ファイルをインポートする前に、ファイルが信頼できるソースからであるかどうかを確認します。 テンプレート ファイルは、NTFS ファイル システムを使用し、その情報を表示する権限を持つユーザーのみにアクセスが制限されている場所に保存する必要があります。

拡張イベント セッションをインポートするには

  1. オブジェクト エクスプローラー[管理]ノードを展開し、 [拡張イベント] ノードを展開します。

  2. [セッション] を右クリックし、 [新しいセッション] をクリックします。

  3. セッションの名前を指定します。

  4. [テンプレート] ボックスを展開します。

  5. <[File From ...]>[Open] をクリックし、インポートするセッション (XML ファイル) を参照します。

[セッション] ノードにセッションが表示されます。 既定では、セッションは開始されていません。

拡張イベント セッションの編集

オブジェクト エクスプローラーで拡張イベント セッションを編集できます。

拡張イベント セッションを編集するには

  1. オブジェクト エクスプローラー[管理]ノード、 [拡張イベント]ノード、および [セッション] ノードの順に展開します。

  2. セッションを右クリックし、 [プロパティ]をクリックします。

  3. [ページの選択] セクションで、編集するページを選択します。

  4. イベント セッションの編集が終了したら、 [OK]をクリックします。

Transact-SQL を使用したイベント セッション定義のスクリプト化

新規セッション ウィザードおよび [新しいセッション] ダイアログの両方に、拡張イベント セッションを定義する Transact-SQL を生成するスクリプト オプションがあります。

既存の拡張イベント セッションの Transact-SQL にアクセスするには、セッション名を右クリックし、[セッションをスクリプト化] を選択し、[作成先] を選択します。

拡張イベント セッションの削除

次の方法で拡張イベント セッションを削除できます。

  • クエリ エディターで、 DROP EVENT SESSIONを使用します。

  • オブジェクト エクスプローラーを使用します。

イベント セッションを削除すると、すべての構成情報が削除され、以後、セッションの定義は sys.server_event_sessions カタログ ビューに表示されません。

注意

system_health および AlwaysOn_health が SQL Server に含まれています。これらを削除しないでください。 system_health は既定で有効です (詳細については、「 system_health セッションの使用」を参照)。 AlwaysOn_health は、既定では無効になっています。 パフォーマンスの問題を診断する際に役立つデータがこれらのセッションによって収集されます。

拡張イベント セッションを削除するには、ALTER ANY EVENT SESSION 権限が必要です。

オブジェクト エクスプローラーで拡張イベント セッションを削除するには

  1. [管理]ノード、 [拡張イベント]ノード、および [セッション] ノードの順に展開します。

  2. セッションを右クリックし、 [削除]をクリックします。

  3. [オブジェクトの削除] ダイアログ ボックスで [OK]をクリックします。

  4. イベント セッションの編集が終了したら、 [OK]をクリックします。

拡張イベント セッションを クエリ エディターで削除するには、次のステートメントを発行します。 session_name の部分は、削除する拡張イベント セッションの名前に置き換えてください。

DROP EVENT SESSION [session_name]  
ON SERVER