イベントテーブルの使用

イベントテーブルに対してテーブル操作のサブセットを実行できます。イベントテーブルは、イベントをキャプチャするために特別に設計されています。このトピックのセクションでは、イベントテーブルがサポートする操作について説明します。

イベントテーブルでサポートされる操作

イベントテーブルはイベントのキャプチャ専用に設計されているため、テーブルでは実行できる一部の操作が、イベントテーブルでは実行できません。

イベントテーブルを使用すると、次の操作 のみ を実行できます。

イベントテーブルからの行の削除

イベントテーブルから行を削除する必要がある場合は、次のコマンドを使用できます。

  • イベントテーブルからすべての行を削除するには、 TRUNCATE TABLE を使用します。

  • 選択した行をイベントテーブルから削除するには、 DELETE を使用します。

    より複雑なログ保持ポリシーを実装する必要がある場合(例: 一部の関数のログを他の関数のログよりも長期間保持する必要がある場合)は、これを使用できます。

イベントテーブルのパラメーター

次のパラメーターを使用して、ハンドラーコードによるイベントテーブルの使用方法を指定できます。

EVENT_TABLE

このアカウントのストアドプロシージャと UDFs からのメッセージをログするためのイベントテーブルの名前を指定します。参照情報については、 EVENT_TABLE をご参照ください。

LOG_LEVEL

インジェストされ、アクティブなイベントテーブルで使用できるようにするメッセージの重大度レベルを指定します。指定されたレベル(およびそれよりも重大なレベル)のメッセージがインジェストされます。詳細については、 LOG_LEVELログレベルの設定 をご参照ください。

TRACE_LEVEL

インジェストされ、アクティブなイベントテーブルで使用できるようにするトレースイベントの詳細度を指定します。指定したレベルのイベントがインジェストされます。詳細については、 TRACE_LEVELトレースレベルの設定 をご参照ください。

イベントテーブルのアクセス制御権限

グローバルおよびイベントテーブルスコープの権限を使用して、イベントテーブルの操作へのアクセスを管理できます。

詳細については、 イベントテーブル権限グローバル権限(アカウントレベルの権限) のログレベル権限をご参照ください。

イベントテーブルデータへのアクセスの管理

イベントテーブルデータをさまざまなユーザーやロールが利用できるようにすることが現実的でない場合は、特定のロールを持つユーザーがアクセスできるビューを作成できます。

アカウントは、アクティブなイベントテーブルを1つだけ持つことができます。この単一のテーブル内にあるデータへのアクセスを管理する場合は、イベントテーブルにビューを作成し、各ビューに対するアクセスを個別のロールに付与します。ビューを通じて、ロールはイベントテーブル内のデータの指定されたサブセットにアクセスできる場合があります。

ビューの作成の詳細については、 CREATE VIEW をご参照ください。

ストリームを使用したイベントテーブルへの変更の追跡

イベントテーブルにストリームを作成して、テーブルへの変更をキャプチャすることができます。

ストリームの詳細については、 テーブルストリームを使用した変更追跡CREATE STREAM をご参照ください。

次の例のコードは、イベントテーブル my_event_table での挿入をキャプチャするストリームを作成します。

CREATE STREAM append_only_comparison ON EVENT TABLE my_event_table APPEND_ONLY=TRUE;
Copy