Snowflakeスクリプトでのメッセージのログ¶
Snowflake SYSTEM$LOG、 SYSTEM$LOG_<レベル> (Snowflakeスクリプトの場合) 関数を使用すると、Snowflakeスクリプトで記述された関数またはプロシージャハンドラーからのメッセージをログできます。ログエントリを格納するイベントテーブルを設定すると、Snowflakeはハンドラーコードによって生成されたログエントリをテーブルに格納します。
コードからログする前に、必要なメッセージがイベントテーブルに格納されるようにログレベルが設定されていることを確認してください。詳細については、 ログレベルの設定 をご参照ください。
注釈
メッセージのログを開始する前に、イベントテーブルを設定する必要があります。詳細については、 イベントテーブルの設定 をご参照ください。
イベントテーブルで SELECT コマンドを実行すると、ログメッセージにアクセスできます。詳細については、 ログされたメッセージデータへのアクセス をご参照ください。
Snowflakeでのログの設定とメッセージの取得に関する一般的な情報については、 関数とプロシージャからのメッセージのログ をご参照ください。
Snowflakeスクリプトの例¶
次の例のコードでは、 SYSTEM$LOG 関数を使用して、サポートされている各レベルでメッセージをログします。入力行を処理するコードからログされるメッセージは、ハンドラーによって処理される 行ごと にログされることに注意してください。ハンドラーが大きなテーブルで実行されると、イベントテーブルに多数のメッセージが生成される可能性があります。
-- The following calls are equivalent.
-- Both log information-level messages.
SYSTEM$LOG('info', 'Information-level message');
SYSTEM$LOG_INFO('Information-level message');
-- The following calls are equivalent.
-- Both log error messages.
SYSTEM$LOG('error', 'Error message');
SYSTEM$LOG_ERROR('Error message');
-- The following calls are equivalent.
-- Both log warning messages.
SYSTEM$LOG('warning', 'Warning message');
SYSTEM$LOG_WARN('Warning message');
-- The following calls are equivalent.
-- Both log debug messages.
SYSTEM$LOG('debug', 'Debug message');
SYSTEM$LOG_DEBUG('Debug message');
-- The following calls are equivalent.
-- Both log trace messages.
SYSTEM$LOG('trace', 'Trace message');
SYSTEM$LOG_TRACE('Trace message');
-- The following calls are equivalent.
-- Both log fatal messages.
SYSTEM$LOG('fatal', 'Fatal message');
SYSTEM$LOG_FATAL('Fatal message');