0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

PostgreSQLのRAISEステートメントのLEVELの挙動

Posted at

お仕事でPostgreSQLを使用することになりました。

利用しているPostgreSQL

  • PostgreSQL 14.1

所感

PostgreSQL-FunctionのデバックでRAISEステートメントを利用していたところ、
設定するLevelによって挙動が違うことを学んだ42歳です。

RAISEステートメントのLEVELの挙動まとめ

PostgreSQLのRAISEステートメントで設定できるLEVELには様々なものがあり、それぞれに特定の用途がありました。
また、これらのレベルに応じて関数内の処理が停止するかどうかも異なります。

以下に表形式でこれらの情報をまとめました。

Level 用途 処理の停止
DEBUG デバッグ情報の出力。開発者向けの詳細な情報提供に使用。 いいえ
LOG 一般的なログ情報の出力。システムの動作記録に使用。 いいえ
INFO 情報メッセージの出力。重要でない情報提供に使用。 いいえ
NOTICE 注目すべき情報の出力。ユーザーに通知すべき情報に使用。 いいえ
WARNING 警告メッセージの出力。問題が発生しうる状況に警告するため使用。 いいえ
EXCEPTION エラーメッセージの出力。実行中の関数を停止させる。 はい
  • DEBUG, LOG, INFO, NOTICE, WARNING は主に情報提供や警告のために使用され、関数の実行を停止しないようです。
  • これらのメッセージはログに記録されることがありますが、関数自体の実行は続行されます。
  • EXCEPTION はエラー状況を示し、これが発生すると関数の実行は直ちに停止し、エラーメッセージが発生元に伝播されます。

これらのレベルを適切に使用することで、関数の挙動をより細かく制御し、エラーハンドリングやデバッグを効果的に行うことができることを42歳は学びました。
また、これらのレベルの使用は、ログの管理やシステムの監視にも影響を与えることに注意が必要であることも42歳は学びました。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?