24.2.9 アプリケーション開発時のAPEX_DEBUGの使用

APEX_DEBUGパッケージ内のAPIについて学習します。

APEX_DEBUGパッケージには、アプリケーションの開発時に使用し、APEXデバッグ・ログにアプリケーション固有のデバッグ・メッセージを追加できるAPIが含まれています。カスタム・アプリケーション・デバッグ・メッセージは、APEXエンジンによって発行されたメッセージとともに記録されます。

24.2.9.1 コールに対するデバッグをプログラムで有効化または無効化

コールに対するデバッグの有効化または無効化について学習します。

デバッグを有効または無効にするには、次の方法を使用します:

  • APEX_DEBUG.ENABLE - このプロシージャにより、デバッグ・メッセージングが有効になります。重要度別にログに記録するデバッグ・メッセージのタイプを指定できます。
  • APEX_DEBUG.DISABLE - このプロシージャにより、デバッグ・メッセージングが無効になります。

なお、APEXリクエストの期間にデバッグを有効にするにはAPEX_DEBUG.ENABLEを1回のみコールする必要があります。

関連項目:

『Oracle APEX APIリファレンス』ENABLEプロシージャDISABLEプロシージャ

24.2.9.2 特定のセッションに対するデバッグをプログラムで有効化または無効化

特定のセッションに対するデバッグの有効化または無効化について学習します。

APEX_SESSION.SET_DEBUGを使用すると、特定のセッションに対してデバッグを有効または無効にできます。これは、他のユーザーにしか再現できない問題をデバッグする場合に役立ちます。デバッグ・レベルが高くなるほどページのレンダリングに使用されるリソースが多くなりページが著しく遅くなることに注意してください。

関連項目:

『Oracle APEX APIリファレンス』SET_DEBUGプロシージャ

24.2.9.3 メッセージのロギング

サーバー側およびクライアント側のロギングについて学習します。

サーバー側ロギング

次のAPIを使用すると、アプリケーションのデバッグに役立ちます。これらのAPIは、プロセスや動的コンテンツ・リージョンなどのアプリケーション・コンポーネントで、また、PL/SQLパッケージで使用できます。これらのAPIでは、指定されたAPEXセッションに対して、またはAPEXインスタンス・レベルでデバッグが有効になっている場合のみ、デバッグ情報が記録されます。

  • APEX_DEBUG.ERROR - LEVEL1のメッセージをログに記録します。リカバリ不能アプリケーション・エラー・メッセージをデバッグ・ログに記録するために使用できます。
  • APEX_DEBUG.WARN - LEVEL2のメッセージをログに記録します。リカバリ可能アプリケーション・エラー・メッセージをデバッグ・ログに記録するために使用できます。
  • APEX_DEBUG.INFO - LEVEL4のメッセージをログに記録します。プロセスまたは操作のステータスに関するメッセージをデバッグ・ログに記録するために使用できます。
  • APEX_DEBUG.ENTER - LEVEL5のメッセージをログに記録します。"開始"メソッド(一般的には、プロシージャやファンクションの開始ブロック内の最初の文)の名前とパラメータをログに記録するために使用されます。
  • APEX_DEBUG.TRACE - LEVEL6のメッセージをログに記録します。プロセスまたは操作に関する非常に詳しい情報をデバッグ・ログに記録するために使用されます。

実行時まで不明なデバッグ・レベルで、デバッグ・メッセージをログに記録する場合は、一般的なAPEX_DEBUG.MESSAGEプロシージャを使用します。4,000文字を超えるメッセージをログに記録する場合は、APEX_DEBUG.LOG_LONG_MESSAGEプロシージャを使用します。

収集されたカスタム・デバッグ・メッセージを表示または問い合せるには、「デバッグ・メッセージの表示」を参照してください。

関連項目:

『Oracle APEX APIリファレンス』「APEX_DEBUG」

クライアント側ロギング

apex.debug JavaScript APIを使用して、適切なデバッグ・レベルが設定されている場合のみブラウザ開発者コンソールでメッセージを表示できるように、JavaScriptコードをインスツルメント処理することもできます。たとえば、JavaScriptコード(動的アクションから実行される)にapex.debugコールを組み込むことができます。APEX JavaScript APIドキュメント(リンク)で「apex.debug」を参照してください。

関連項目:

Oracle APEX JavaScript APIリファレンスapex.debug