z/OS デバッガによるストアドプロシージャのデバッグ
z/OS。 z/OS ルーチン (ストアド プロシージャを含む) をテストできます。 これらのストアード・プロシージャーのテストは、対話式にも、バッチ・モードでも行うことができます。
プロシージャー
z/OS Debugger を使用してルーチンをデバッグするには、次のいずれかの方法を使用します:
- z/OS デバッガーをインタラクティブに使用するには、以下の手順を実行します。
- TESTオプション付きでルーチンをコンパイルします。 TEST オプションは、デバッグ・セッション中に z/OS Debugger が使用する情報をプログラムに配置します。
- z/OS デバッガーを起動します。その方法の一つは、 Language Environment の実行時オプションTESTを指定することです。 TEST オプションは、 z/OS デバッガーがいつ、どのように呼び出されるかを制御します。 実行時オプションを指定する最も便利な場所は、ストアドプロシージャのCREATE PROCUDUREまたはALTER PROCEDURE文のRUN OPTIONSパラメータです。 詳細については、 「 Db2 ストアドプロシージャプログラムの準備」 を参照してください。例えば、TEST オプションは、次のパラメーターを使用してコーディングできます。
TEST(ALL,*,PROMPT,TCPIP&ABC.EXAMPLE.COM%8001:*:)詳細については、「TEST ランタイムオプションの構文 」および 「TEST ランタイムオプションの例 」を参照してください。
さまざまなインターフェースからのインタラクティブなデバッグの詳細については、以下のトピックを参照してください - z/OS デバッガーをバッチ モードで使用するには、次の手順を実行します。 z/OS デバッガは、ストアド・プロシージャが実行される z/OS がインストールされている必要があります。
- Language Environment® のランタイムオプションTESTを使用して z/OS デバッガーを起動する予定がある場合は、TESTオプション付きでストアドプロシージャをコンパイルしてください。 TESTオプションは、 z/OS デバッガーがデバッグセッション中に使用する情報をプログラム内に配置します。
- z/OS デバッガーからの出力を受け取るログデータセットを割り当てます。 また、 ログ・データ・セットの DD ステートメントを、 ストアード・プロシージャーのアドレス・スペース用の始動プロシージャーに入れます。
- z/OS Debuggerに実行させたいコマンドをデータセットに入力します。 また、
そのデータ・セットの DD ステートメントを、
ストアード・プロシージャーのアドレス・スペース用の始動プロシージャーに入れます。 z/OS Debuggerにコマンド・データ・セットを定義するには、TESTランタイム・オプションでコマンド・データ・セット名またはDD名を指定します。 たとえば、 z/OS デバッガーが DD 名 TESTDD に関連付けられたデータセット内のコマンドを使用するように指定するには、TEST オプションに次のパラメーターを含めます:
TEST(ALL,TESTDD,PROMPT,*)そのコマンド・データ・セットの最初のコマンドは、 次のようになるはずです。
SET LOG ON FILE ddname;このコマンドにより、デバッグ・セッションからの出力を、 直前のステップで定義したログ・データ・セットに送ります。 例えば、DD 名が INSPLOG であるログ・データ・セットを、 ストアード・プロシージャー・アドレス・スペースの始動プロシージャーに定義する場合、 最初のコマンドは以下のようする必要があります。
SET LOG ON FILE INSPLOG; - 以下のいずれかの方法で、 z/OS デバッガーを起動します:
- ランタイム・オプション TEST を指定する。 そのための最も便利な場所は、ストアドプロシージャのCREATEまたはALTERステートメントのRUN OPTIONSパラメータです。
- CEETEST 呼び出しをストアード・プロシージャーのソース・コードに入れる。 この方法を既存のストアード・プロシージャーに使用する場合は、その再コンパイル、 再リンク、およびバインドを行い、STOP PROCEDURE および START PROCEDURE コマンドを出して そのストアード・プロシージャーを再ロードする必要があります。
ランタイム・オプション TEST は、CEETEST 呼び出しと組み合わせて指定できます。 例えば、TESTを使用してコマンド・データ・セットに名前を付けたいが、CEETESTコールを使用して、 z/OS デバッガーが制御を行うタイミングをコントロールしたい場合がある。
詳細は、「 z/OS デバッガのバッチモードでの起動 」を参照してください。