イベントテーブル列¶
イベント・テーブル は、あらかじめ定義された列セットを持つ、特別な種類のデータベーステーブルです。テーブルの構造は、遠隔測定データを扱うためのフレームワークである OpenTelemetry のデータモデルをサポートするように設計されています。
イベントテーブルの操作の詳細については、 イベントテーブルの操作 をご参照ください。
イベントテーブル列¶
イベントテーブルには次の列があります。
列  | 
データ型  | 
説明  | 
|---|---|---|
TIMESTAMP_NTZ  | 
イベント作成時の UTC タイムスタンプ。ある期間を表すイベントの場合、これはその期間の終わりです。  | 
|
TIMESTAMP_NTZ  | 
トレースイベントなど、一定の期間を表すイベントの場合は、 UTC タイムスタンプとしての期間の開始時刻。  | 
|
TIMESTAMP_NTZ  | 
ログに使用される時間は UTC です。現在、 TIMESTAMP と同じ値です。  | 
|
OBJECT  | 
すべてのシグナル型のコンテキストをトレースします。文字列値   | 
|
OBJECT  | 
今後の使用のために予約されています。  | 
|
OBJECT  | 
データベース、スキーマ、ユーザー、ウェアハウス:ref:  | 
|
OBJECT  | 
イベントのスコープ。たとえば、ログのクラス名などです。  | 
|
OBJECT  | 
今後の使用のために予約されています。  | 
|
STRING  | 
イベント型。次のいずれかを使用します。 
  | 
|
OBJECT  | 
RECORD 列 で説明されている、各記録の型の固定値。  | 
|
OBJECT  | 
RECORD_ATTRIBUTES 列 で説明されている、各記録の型の変数属性。  | 
|
VARIANT  | 
プライマリイベントの値。  | 
|
ARRAY  | 
今後の使用のために予約されています。  | 
イベント型ごとにキャプチャされたデータ¶
ログのデータ¶
属性  | 
説明  | 
|---|---|
現在、 TIMESTAMP と同じ値です。  | 
|
ログイベント によって記録された重大度レベル。  | 
|
ログイベントが出力されたコード内の場所。値は言語によって異なりますが、コードファイルのパス、関数名、行番号などが含まれる場合があります。  | 
|
イベント型: ログメッセージの場合は   | 
|
データベース、スキーマ、ユーザー、ウェアハウスなど、イベントのソースを識別する属性。  | 
|
ログイベントが作成されたクラスの名前など、イベントが発生したスコープ。  | 
|
イベントが作成されたときのタイムスタンプ。  | 
|
ログメッセージ。  | 
メトリックのためのデータ¶
属性  | 
説明  | 
|---|---|
メトリックイベントの場合、メトリックの名前と単位を含むオブジェクト。  | 
|
イベントタイプ: メトリックデータポイント用の   | 
|
データベース、スキーマ、ユーザー、ウェアハウスなど、イベントのソースを識別する属性。  | 
|
RECORD 列   | 
|
イベントが作成されたときのタイムスタンプ。  | 
|
メトリックの数値。  | 
トレースイベントのデータ¶
属性  | 
説明  | 
|---|---|
スパン の場合、スパンの名前と種類を含むオブジェクト。スパンイベント の場合、オブジェクトにはスパンの名前が含まれます。  | 
|
イベント型: スパンの場合は   | 
|
データベース、スキーマ、ユーザー、ウェアハウスなど、イベントのソースを識別する属性。  | 
|
スパンの場合は、そのスパンが開始された時刻。スパンイベントには使用されません。  | 
|
イベントが作成されたときのタイムスタンプ。  | 
|
スパンとその中のスパンイベントの識別子   | 
Icebergの自動リフレッシュイベントのデータ¶
Snowflakeは、Icebergの自動リフレッシュ のスナップショットを処理するときに、イベントテーブルにイベントをログします。次のテーブルは、Icebergの自動リフレッシュイベントの列について説明しています。
属性  | 
説明  | 
|---|---|
イベントが作成されたときのタイムスタンプ。  | 
|
データベース名、スキーマ名、テーブル名、カタログ名など、Iceberg自動リフレッシュイベントを識別する属性。  | 
|
イベント型:code:  | 
|
名前と重大度など、イベントに関連付けられた操作のステータスに関する詳細情報。  | 
|
イベントに関連付けられた属性。  | 
|
イベントに固有の追加情報。  | 
EXEMPLARS 列¶
今後の使用のために予約されています。
OBSERVED_TIMESTAMP 列¶
ログの UTC タイムスタンプ。トレースイベントには使用されません。
RECORD 列¶
ログイベントのログレベルやトレースイベント(スパンまたはスパンイベント記録)の名前など、イベントに関するコア情報を提供します。
記録の属性がある場合は、 RECORD_ATTRIBUTES 列 に記録されます。
この列に含まれる値は、次のセクションで説明するように、 RECORD_TYPE 列 (LOG、 SPAN、または SPAN_EVENT)の値に応じて異なります。
LOG RECORD_TYPE の場合¶
RECORD_TYPE 列の値が LOG の場合、 RECORD 列の値にはログメッセージの重大度が含まれます。列の値には次のキーが含まれる場合があります。
キー  | 
型  | 
説明  | 
|---|---|---|
  | 
STRING  | 
ログの重大度のテキスト。次のいずれかを使用します。 
 ログエントリが 未処理の例外 の場合、この値は現在の言語ランタイムについて最も重大度が高いエラーレベルとなります。たとえば、Pythonで記述されたコードの場合、値は   | 
例¶
{
  "severity_text": "INFO"
}
METRIC RECORD_TYPE の場合¶
メトリックは、Snowflakeによって生成された CPU 、メモリデータである。このデータを使ってリソースの消費を分析することができます。
実行ハンドラ言語とその環境は、メトリック・データの意味に大きく影響します。詳細については、 ハンドラー・コードからメトリクス・データを出力する をご参照ください。
キー  | 
型  | 
説明  | 
|---|---|---|
  | 
string  | 
その行が記録するメトリックの名前。次のいずれかを使用します。 
 詳細については、 ハンドラー・コードからメトリクス・データを出力する をご参照ください。  | 
  | 
string  | 
メートル法の単位。例えば、   | 
  | 
string  | 
OpenTelemetry メトリックデータのメトリックポイントのタイプ。例えば、   | 
  | 
string  | 
VALUE 列の値のデータ型。例えば、   | 
例¶
{
  "metric": {
    "name": "process.memory.usage",
    "unit": "bytes"
  },
  "metric_type": "sum",
  "value_type": "INT"
}
SPAN RECORD_TYPE の場合¶
スパンは、関数とプロシージャの個々の実行を表します。ストアドプロシージャの場合は、単一のスパンが存在します。ユーザー定義関数の場合は、Snowflakeが実行スケジュールをどのように決定したかに応じて、1つの関数呼び出しに複数のスパンが存在する場合があります。
特定のクエリのスパンすべては、 TRACE 列の trace_id キーに同じ値を持ちます。
スパンの継続時間は、 start_timestamp 列と timestamp 列の値の差であり、それぞれスパン実行の開始時刻と終了時刻を示します。
スパンの ID とクエリトレースは、 TRACE 列の値で表されます。
Snowflakeは、以下に示すキーを使用して実行ごとに1つのスパンを作成します。
キー  | 
型  | 
説明  | 
|---|---|---|
  | 
int  | 
記録が最大値に達した後に無視される属性の数。  | 
  | 
string  | 
実行ファイルのハンドラがPythonで書かれている場合、これはデータを発行した関数やプロシージャのハンドラーを識別します。これは実行ファイルの種類によって以下のように異なります: 
 トレースコードが、プロシージャ内で実行される SQL ステートメントなどの SQL で書かれているとき、たとえば  実行可能ファイルのハンドラーがPythonまたは SQL 以外の言語で書かれている場合、これは   | 
  | 
string  | 
トレースされたコードが SQL で書かれている場合の   | 
  | 
16進数文字列  | 
現在のトレースが通過したプロシージャまたは UDF のスパンを識別します。この値が存在する場合、現在のプロシージャまたは UDF の呼び出しが、呼び出し連鎖の関係にある別のプロシージャによって行われたことを意味します。その「親」プロシージャの   | 
  | 
string  | 
任意。存在する場合、このスパンの実行中に使用されるメモリの最大量をバイト単位で指定します。  | 
  | 
string  | 
スパンが 未処理の例外 に対応する場合は、   | 
ユーザー定義関数の場合、Snowflakeはスパンの属性を追加して、関数によって処理および出力された行数を示すことがあります。
SPAN_EVENT RECORD_TYPE の場合¶
スパンイベントは、上で説明したように、特定のスパン実行に関連付けられたイベント記録です。アプリケーションのニーズに合わせてイベントを作成できます。スパンイベントの数は128に制限されています。
TRACE 列の値は、イベントが作成されたスパンを識別します。
スパンイベントには単一のキー name があり、 RECORD_ATTRIBUTES 列に任意の属性を追加できます。
キー  | 
型  | 
説明  | 
|---|---|---|
  | 
string  | 
スパンイベントの名前。  | 
Iceberg自動リフレッシュイベントの :code:`EVENT`RECORD_TYPE の場合¶
キー  | 
型  | 
説明  | 
|---|---|---|
  | 
VARCHAR  | 
イベントの名前。例:   | 
  | 
VARCHAR  | 
イベントの重大度のテキスト。次の値のいずれかです。 
 
 
 
  | 
RECORD_ATTRIBUTES 列¶
Snowflakeまたはーコードによって設定されたメタデータを使用してイベントを説明します。次のセクションで説明するように、値は行に含まれる記録の型によって異なります。
LOG RECORD_TYPE の場合¶
ログイベントが出力されたコード内の場所。コードファイルのパス、関数名、行番号などが含まれます。
以下の属性に加えて、 RECORD_ATTRIBUTES の値に含める独自の属性を追加することができます。
属性  | 
型  | 
説明  | 
|---|---|---|
  | 
int  | 
メッセージを生成したコードを含むファイル。  | 
  | 
string  | 
メッセージを生成した関数の名前。  | 
  | 
int  | 
メッセージを生成したコードの行番号。  | 
  | 
int  | 
メッセージを生成したコードの名前空間。  | 
  | 
string  | 
未処理の例外 からのエラーメッセージ。  | 
  | 
string  | 
未処理の例外 のクラス名。  | 
  | 
string  | 
言語ランタイムによってフォーマットされた 未処理の例外 のスタックトレース。  | 
  | 
boolean  | 
このエントリが 未処理の例外 からのものである場合は、   | 
  | 
int  | 
ログイベントが作成されたスレッド。  | 
  | 
string  | 
ログイベントが作成されたスレッド。  | 
例¶
以下の例では、カスタム属性によって追加された employee.id を除き、すべての属性が Snowflake によって追加されています。
{
  "code.filepath": "main.scala",
  "code.function": "$anonfun$new$10",
  "code.lineno": 149,
  "code.namespace": "main.main$",
  "thread.id": 1,
  "thread.name": "main"
  "employee.id": "52307953446424"
}
SPAN RECORD_TYPE の場合¶
記録時にスパンに割り当てられる属性(存在する場合)。属性の名前と値は、コードまたはSnowflakeによって設定されます。
次のテーブルに、Snowflakeによって設定される可能性のある属性をリストします。
属性  | 
型  | 
説明  | 
|---|---|---|
  | 
string  | 
このスパンでトレースされたクエリの下で実行された実行可能ファイルの名前。  | 
  | 
string  | 
このスパンでトレースされたクエリで読み取られたテーブルまたは変更されたテーブルの名前。  | 
  | 
string  | 
このスパンでトレースされたクエリでアクセスされたビューの名前。  | 
  | 
string  | 
このスパンでトレースされた SQL クエリのテキスト。SQL トレースクエリテキストがトレース用に有効になっている場合のみ含まれます。詳細については、 SQL ステートメントトレース をご参照ください。  | 
  | 
int  | 
関数のスパンによって処理される入力行の数。  | 
  | 
int  | 
関数のスパンによって処理される出力行の数。  | 
例¶
次の例のコードには、Snowflakeによって設定される属性が含まれています。
{
  "snow.input.rows": 12
  "snow.output.rows": 12
}
例¶
次の例のコードには、ハンドラーコードによって設定される属性が含まれています。
{
  "MyFunctionVersion": "1.1.0"
}
SPAN_EVENT RECORD_TYPE の場合¶
記録時にスパンイベントに割り当てられる属性(存在する場合)。属性の名前と値は、Snowflakeまたはユーザーコードによって設定されます。
例¶
次の例のコードには、ハンドラーコードによって設定される属性が含まれています。
{
  "mykey1": "value1",
  "mykey2": "value2"
}
Iceberg自動リフレッシュイベントの :code:`EVENT`RECORD_TYPE の場合¶
Icebergの自動リフレッシュ に対して記録されたときのEVENT イベントに割り当てられた属性。属性の名前と値はSnowflakeによって設定されます。
属性  | 
型  | 
説明  | 
例  | 
|---|---|---|---|
  | 
INTEGER  | 
Iceberg自動リフレッシュ中に処理されるIcebergスナップショットの ID。自動リフレッシュプロセスが失敗した場合は NULL。  | 
  | 
RECORD_TYPE 列¶
イベントテーブルの行で記述される記録の種類を指定します。この列の値は、イベントテーブルにデータを含めることができるさまざまな種類の記録のどれであるかを識別します。
RECORD 列には、この記録のデータが含まれています。RECORD_ATTRIBUTES 列には、この記録のメタデータが含まれます(存在する場合)。
次のテーブルに、この列に指定できる値をリストします。
列の値  | 
説明  | 
|---|---|
  | 
この行は、ハンドラーコードによって生成されたログエントリを表します。  | 
  | 
行はスパンを表します。 ストアドプロシージャの場合は、単一のスパンが存在します。並列化できるユーザー定義関数の場合は、関数が実行されるスレッドごとにスパンが存在します。スレッドの数は、関数が実行されるSnowflakeウェアハウスのサイズなど、複数の要因によって異なります。 スパンには複数のスパンイベントが含まれる場合があります。詳細については、 記録されたスパンデータ をご参照ください。  | 
  | 
行はスパンイベントを表します。特定のスパンに関連付けられた複数のスパンイベント記録である場合があります。ハンドラーコードでは、ニーズに合わせてイベントを作成できます。スパンイベントの数は128に制限されています。  | 
  | 
行はメトリックの観測値を表します。複数のメトリックの複数のオブザベーションを、特定のスパンに関連付けることがでまする。  | 
  | 
行は、Icebergの自動リフレッシュなど、特定の操作に関連付けられたイベントを表します。  | 
RESOURCE 列¶
今後の使用のために予約されています。
RESOURCE_ATTRIBUTES 列¶
Snowflakeオブジェクトの観点からイベントのソースを説明します。
この列の値を構成する属性はSnowflakeによって設定され、変更できません。
イベントソースのリソース属性¶
注釈
イベントソースがIceberg自動リフレッシュの場合は、以下の属性型のみが設定されます。
snow.catalog.integration.name
snow.catalog.table.name
snow.database.name
snow.schema.name
snow.table.name
属性名  | 
属性の型  | 
説明  | 
例  | 
|---|---|---|---|
  | 
string  | 
Iceberg自動リフレッシュの実行可能ファイルに関連付けられたカタログ統合の名前。  | 
  | 
  | 
string  | 
カタログ内のIcebergテーブルの名前。  | 
  | 
  | 
int  | 
実行可能ファイルを含んでいるデータベースの内部/システム生成の識別子。  | 
  | 
  | 
string  | 
実行可能ファイルを含んでいるデータベースの名前。  | 
  | 
  | 
int  | 
イベントを生成する実行可能ファイル(プロシージャ、関数、 SnowService など)の内部/システム生成の識別子。  | 
  | 
  | 
string  | 
イベントを生成する実行可能ファイルの名前。たとえば、プロシージャ名、関数名、Streamlitアプリ名などです。  | 
  | 
  | 
string  | 
実行言語のランタイムバージョン。これは、後述するように、その言語に固有の値となります: 
  | 
  | 
  | 
string  | 
次のいずれかを使用します。 
  | 
  | 
  | 
int  | 
実行可能ファイルに対する OWNERSHIP 権限を持つロールの内部/システム生成識別子。  | 
  | 
  | 
string  | 
実行可能ファイルの OWNERSHIP 権限を持つロールの名前。  | 
  | 
  | 
int  | 
実行可能ファイルを含んでいるスキーマの内部/システム生成の識別子。  | 
  | 
  | 
string  | 
実行可能ファイルを含んでいるスキーマの名前。  | 
  | 
  | 
string  | 
実行可能ファイルに関連付けられたテーブルの名前。  | 
  | 
  | 
string  | 
リソース/SDK の言語。Snowflakeは、Java、scala、Python、JavaScript、SQLを使用します。  | 
  | 
実行環境のリソース属性¶
属性  | 
型  | 
説明  | 
例  | 
|---|---|---|---|
  | 
string  | 
関数またはプロシージャの場合、その関数またはプロシージャを実行するユーザーの名前。Streamlitアプリの場合、特定のイベントでアプリを表示していたユーザーの名前。  | 
  | 
  | 
string  | 
クエリの ID。  | 
  | 
  | 
string  | 
イベントの生成時に実行されていたSnowflakeリリース  | 
  | 
  | 
int  | 
実行可能ファイルを実行しているセッションの ID。  | 
  | 
  | 
int  | 
セッション内にあるプライマリロールの内部/システム生成の識別子。  | 
  | 
  | 
string  | 
セッション内のプライマリロールの名前。  | 
  | 
  | 
int  | 
クエリを実行しているユーザーの内部/システム生成の識別子。  | 
  | 
  | 
int  | 
イベントを生成するクエリを実行しているウェアハウスの内部/システム生成の識別子。  | 
  | 
  | 
string  | 
イベントを生成するクエリを実行しているウェアハウスの名前。  | 
  | 
アプリケーションのリソース属性¶
属性  | 
型  | 
説明  | 
例  | 
|---|---|---|---|
  | 
string  | 
Snowflake Native App の場合、コンシューマーアカウントの名前。  | 
  | 
  | 
string  | 
Snowflake Native App の場合、コンシューマー組織の名前。  | 
  | 
  | 
string  | 
Snowflake Native App の場合、アプリの内部/システム生成識別子。  | 
  | 
  | 
string  | 
Snowflake Native App の場合、アプリケーションの名前。  | 
  | 
  | 
string  | 
Snowflake Native App の場合、アプリケーションパッケージの名前。  | 
  | 
  | 
string  | 
Snowflake Native App の場合、リスティングの内部/システム生成識別子。  | 
  | 
  | 
string  | 
Snowflake Native App の場合は、リスティングの名前。  | 
  | 
Snowflakeバージョンのリソース属性¶
属性  | 
型  | 
説明  | 
例  | 
|---|---|---|---|
  | 
string  | 
関連性がある場合は、実行可能ファイルのバージョン。  | 
  | 
  | 
string  | 
実行中の実行可能ファイルのパッチレベル。  | 
  | 
  | 
string  | 
実行中の実行可能ファイルのバージョン。  | 
  | 
例¶
{
  "db.user": "MYUSERNAME",
  "snow.database.id": 13,
  "snow.database.name": "MY_DB",
  "snow.executable.id": 197,
  "snow.executable.name": "FUNCTION_NAME(I NUMBER):ARG_NAME(38,0)",
  "snow.executable.type": "FUNCTION",
  "snow.owner.id": 2,
  "snow.owner.name": "MY_ROLE",
  "snow.query.id": "01ab0f07-0000-15c8-0000-0129000592c2",
  "snow.schema.id": 16,
  "snow.schema.name": "PUBLIC",
  "snow.session.id": 1275605667850,
  "snow.session.role.primary.id": 2,
  "snow.session.role.primary.name": "MY_ROLE",
  "snow.user.id": 25,
  "snow.warehouse.id": 5,
  "snow.warehouse.name": "MYWH",
  "telemetry.sdk.language": "python"
}
SCOPE 列¶
ログイベントの場合は、ログエントリを作成するクラスの名前など、イベントを出力したコードの名前空間。これはトレースイベントには使用されません。
次のテーブルに、この列に含めることができる属性をリストします。
スコープ値¶
属性  | 
型  | 
説明  | 
例  | 
|---|---|---|---|
  | 
文字列  | 
イベントを出力するコードの名前空間。  | 
  | 
例¶
{
  "name": "com.sample.MyClass"
}
SCOPE_ATTRIBUTES 列¶
今後の使用のために予約されています。
START_TIMESTAMP 列¶
UTC タイムスタンプとしてスパンが開始された時刻。
RECORD_TYPE 列の値  | 
START_TIMESTAMP 値の説明  | 
|---|---|
  | 
不使用。  | 
  | 
スパンの開始時刻。  | 
  | 
不使用。  | 
  | 
RECORD 列   | 
TIMESTAMP 列¶
イベントが出力された時刻。次のテーブルにリストするように、値の意味は、行が表す記録の型によって異なります。
RECORD_TYPE 列の値  | 
TIMESTAMP 値の説明  | 
|---|---|
  | 
イベントが出力されたウォールクロック時刻。  | 
  | 
実行が終了した時刻。  | 
  | 
イベントが出力されたウォールクロック時刻。  | 
TRACE 列¶
関数とプロシージャの実行を表す一意の識別子。
RECORD_TYPE 列の値  | 
TRACE 値の説明  | 
|---|---|
  | 
不使用。  | 
  | 
  | 
  | 
  | 
トレース値¶
次のテーブルに、この列に含めることができる属性をリストします。
属性  | 
型  | 
説明  | 
例  | 
|---|---|---|---|
  | 
16進数文字列  | 
スレッドモデルに関連付けられた一意の識別子。プロシージャはシングルスレッドであり、単一の  現在のスパンが、トレース内の別のプロシーや UDF を呼び出したプロシージャーのものである場合、この   | 
  | 
  | 
16進数文字列  | 
クエリからの呼び出しに対する一意の識別子。ストアド・プロシージャが呼び出しの連鎖の中で呼び出されていない場合、各呼び出しはそれ自身の  プロシージャーがコールチェーン内の他のプロシージャや UDF から呼び出される場合、そのプロシージャは、チェーン内の他のプロシージャや UDFs と同じ  この値はクエリごとに一意であり、クエリ内のすべてのスパンで同一です。これを使用して、単一のクエリ実行内のイベントをグループ化できます。  | 
  | 
例¶
次の例のコードは、スパンまたはスパンイベントに存在する属性を示しています。
{
  "span_id": "b4c28078330873a2",
  "trace_id": "6992e9febf0b97f45b34a62e54936adb"
}
VALUE 列¶
ログイベントの場合、通常、ログメッセージになります。ログに記録されたイベントが 未処理の例外 の場合、この列の値は単に
exceptionとなります。メトリクスの場合、これはメトリクスの数値です。
VALUE 列の型は(STRING ではなく) VARIANT であるため、 JavaScript などの一部の言語では文字列以外の値を持つことができることに注意してください。
Iceberg自動リフレッシュイベントの :code:`EVENT`VALUE の場合¶
キー  | 
型  | 
説明  | 
例  | 
|---|---|---|---|
  | 
VARCHAR  | 
Icebergメタデータファイルの場所。自動リフレッシュプロセスが失敗した場合は NULL です。  | 
  | 
  | 
VARCHAR  | 
自動リフレッシュプロセスの状態。以下の値のいずれかです。 
  | 
  | 
  | 
VARCHAR  | 
  | 
「Icebergの自動リフレッシュで致命的なエラーが発生しました。自動リフレッシュを無効にし、自動リフレッシュを再度有効にする前にテーブルを手動でリフレッシュしてください。FailedMetadataFile: s3://my_bucket/...、 FailedSnapshotId:null.n」  | 
例¶
{
  "metadata_file_location": "<path>",
  "snapshot_state": "errored",
  "error_message": "<error_message>"
}