ART for CICSでは、COBOLアプリケーション・プログラムを変更せずに、オンラインでデバッグできます。サポートされているCOBOLコンパイラはMicro Focus COBOLとCOBOL-IT COBOLです。アニメータ・ツールを使ってMicro Focus COBOLプログラムをデバッグしながら、ディート・ツールを使ってCOBOL-IT COBOLプログラムをデバッグすることができます。どちらのツールを使っていても、ツールは様々な箇所でアプリケーション・プログラムの実行をインターセプトしてから、プログラムに関する情報を表示します。アプリケーション・プログラムが送信した画面はツールによって表示され、本番システムの場合と同様にテスト時にアプリケーション・プログラムと対話できます。
ART for CICSは、Micro Focus COBOLとCOBOL-IT COBOLでのセッション間デバッグをサポートします。セッション間デバッグでは、デバッグ対象のプログラムが実行されている異なるターミナル・ウィンドウからアニメータ・ツールまたはディート・ツールを使用できます。
注意: |
Micro Focus COBOLを使用してデバッグを行うには、次の手順に従います。
config/resources/kix_cobol_dbg.cfg
構成ファイルを作成します。詳細は、「構成」を参照してください。prepro-cics.pl
ユーティリティを使用してCOBOLプログラムの前処理をします。詳細は、「構成」を参照してください。tmshutdown/tmboot
を使用するか、「デバッグ構成ファイルの動的ロード」の手順に従ってアプリケーションを再起動します。COBOL-IT COBOLを使用してデバッグを行うには、次の手順に従います。ディート・グラフィックUIの詳細は、COBOL-IT COBOLのドキュメントを参照してください。
config/resources/kix_cobol_dbg.cfg
構成ファイルを作成します。詳細は、「構成」を参照してください。prepro-cics.pl
ユーティリティを使用してCOBOLプログラムの前処理をします。詳細は、「構成」を参照してください。tmshutdown/tmboot
を使用するか、「デバッグ構成ファイルの動的ロード」の手順に従ってアプリケーションを再起動します。vncserver
を使用してVNC環境を起動します。 VNC xtermで、コマンドdeet -p myAnimSrvID1
を使用してデバッグ・セッションを開始します。ディート・グラフィックUIが起動され、COBOLプログラムがアタッチされます。先にトランザクションを開始してから、ディート・ツールでデバッグ・セッションを開始する必要があることに注意してください。
注意: | COBOL-IT COBOLディート・ツールでは、1つのトランザクション内のLINK(ローカル)はサポートされません。LINK(ローカル)をデバッグするには、「ユースケース4: 1人のユーザーが2つのプログラムをLINK(リモート)でデバッグします。」を参照してください。 |
CICSランタイムでCOBOLプログラムをデバッグする前に次の構成を行います。
kix_cobol_dbg.cfg
構成ファイルを構成します。 詳細は、 「構成ファイルのデバッグ」を参照してください。
prepro-cics.pl
ユーティリティを使用してCOBOLプログラムを事前処理します。 prepro-cics.pl -type_output=orig < RSSBT000.cbl > RSSBT000.cob
注意: |
.gnt
ファイルを削除することをお薦めします。anim
(Micro Focus COBOLプログラムの場合) / deet
(COBOL-IT COBOLプログラムの場合)コマンドラインを実行するLinuxユーザー・アカウントと同じである必要があります。anim / deet
ユーティリティで指定されているANIMSRVID
のみがデバッグされます。 ART for CICSを再起動せずにデバッグ構成リソース・ファイルkix_cobol_dbg.cfg
を動的にロードできます。
この構成ファイルを動的にロードするには、次の手順を実行します。
artadmin
ユーティリティを起動します。 詳細は、 「artadmin (1)」を参照してください。
config_update
(cu
)と入力します。 config_update
(cu
)で構成の変更を伝播し、アプリケーション・サーバーに対して構成の変更内容を受け入れるようリクエストします。
perform
(p
)と入力します。 perform
(p
)でサーバーに送信されたコマンドを実行し、コマンド・バッファを消去します。
バッファが空ではない場合、バッファ・コンテナが表示され、確認が必要になります。
送信が失敗すると、「実行が取り消されました。」
が表示され、エラーがUSERLOG
に記録されます。
quit
(q
)と入力します。
CICSランタイムでは、CICS動詞の例外を検出し、関連するエラー・メッセージおよびABEND
コードを出力します。それ以外に、ART for CICSでエラー・プロシージャがインストールされ、COBOL LE(言語環境)エラーが発生すると実行されます。このエラー・プロシージャでは、ART for CICSが詳細なエラー行およびCOBOLプログラムが異常終了した理由をレポートし、CICSランタイムがCICS ABEND
コードASRA
でCOBOLプログラムを中断してCICSランタイム・サーバーが停止しないようにします。
どのCOBOLコンパイラ(Micro Focus COBOLまたはCOBOL-IT)を使用しても、CICSランタイムでエラー・プロシージャがデフォルトでインストールされます。
ART for CICSでは、エラー・プロシージャを有効または無効にする環境変数KIX_CBL_TRAP_ERROR
が提供されます。デフォルト値はY
で、エラー・プロシージャが有効であることを意味します。KIX_CBL_TRAP_ERROR=N
と指定した場合、エラー・プロシージャは無効になり、COBOL LEエラーが発生すると、コア・ファイルが生成されてCICSランタイム・サーバーは停止します。
特に、CICSランタイムがCOBOL-ITで実行されている場合、-debug
コンパイラ・フラグを使用してCOBOLプログラムをコンパイルし、エラー・プロシージャの機能を有効にする必要もあります。
詳細は、 「KIX_CBL_TRAP_ERROR」を参照してください。
CICSランタイムがCOBOL-ITで実行される場合、COBOL LEエラーが発生するとART for CICSはエラー・プロシージャ機能だけでなく、プログラムの最終的なメモリー情報も提供します。
環境変数KIX_DUMP_FILE
を有効なローカル・ファイル名で指定すると、このメモリー・ダンプ機能を有効にできます。COBOL LEエラーが発生すると、ART for CICSはまずエラー・プロシージャをアクティブにし、プログラムの最終的なメモリー情報をKIX_DUMP_FILE
で指定したダンプ・ファイルに出力します。
メモリー・ダンプ機能は、CICS動詞エラーが発生した場合も機能します。
詳細は、 「KIX_SO_SUBSYS_WRAPPER」を参照してください。