0

私は現在、SQL Server 2008 で ETW を使用して、SQL ステートメントの実行を監視 (および最終的にログに記録) しています。私が監視しようとしているイベントは、ストアド プロシージャの実行、INSERT、UPDATE、DELETE、および... SELECT ステートメントです。

次のイベントで EVENT SESSION を作成することにより、SP、INSERT、UPDATE、および DELETE を監視できます。

  • sqlserver.sp_statement_completed
  • sqlserver.sp_statement_starting
  • sqlserver.sql_statement_completed
  • sqlserver.sql_statement_starting

また、イベントに実際の SQL ステートメントを追加するアクションを各イベントに含めます: sqlserver.sql_text

私のセッションは基本的に次のようになります。

CREATE EVENT SESSION SomeTestEventSession ON SERVER
ADD EVENT sqlserver.sp_statement_completed (ACTION (sqlserver.sql_text) WHERE sqlserver.database_id > 4),
(...)

データベースで単純なSELECT ステートメントを監視するには、上記のイベントにどのイベントを追加すればよいですか? これにより多くのアクティビティが作成されることは承知していますが、ステートメントを監視できるようになったら、いくつかのフィルタリング アクションを追加してログに記録されるイベントの実際の数を減らすことで、ビーストを微調整しようとします。

前もって感謝します!

4

1 に答える 1

0

すべて、sql_statement_completedSELECT ステートメントを監視しているように見えるので、何かを見落としていたに違いありません。

于 2011-09-01T13:14:35.140 に答える