![[z/OS]](../ngzos.gif)
CSQ4LOGS を使用した CSQ1LOGP EXTRACT からの出力の処理
CSQ4LOGS サンプルは、 CSQ1LOGP EXTRACT からの出力を処理できます。 このサンプルは、作業単位アクティビティー、およびオブジェクトを定義および変更するアクティビティーについて報告します。
CSQ4LOGS は、オプションでメッセージを再生することもできます。これは、アプリケーションが持続メッセージを正しく処理しないシナリオで役立ちます。
CSQ4LOGS は C サンプルで、 thlqual.SCSQC37S(CSQ4LOGS)にソース・コードがあります。 コンパイルされた出力は thlqual.SCSQLOAD(CSQ4LOGS)にあります。これは、 thlqual.SCSQPROC(CSQ4LOGJ)のサンプル JCL を使用して実行できます。
CSQ4LOGS は、 CSQ1LOGP EXTRACT からの出力をマップするヘッダー・ファイル thlqual.SCSQC370(CSQ4LOGD)を使用します。 このヘッダー・ファイルは、 CSQ4LOGSに基づいて独自のプログラムに使用できます。
重要: APF 許可ライブラリーから CSQ4LOGS プログラムを実行しないでください。 状況によっては、実行すると異常終了コードを受け取ります。
CSQ4LOGS のパラメーター
CSQ4LOGS は、次の 2 つのパラメーターを取ります。
- サンプルの接続先のキュー・マネージャー名
- アクション:
- REPLAY
- リカバリー単位アクティビティーを要約し、最初に書き込まれたキューにメッセージを送り返します。
- 元の再生
- リカバリー単位アクティビティーを要約し、元のメッセージ記述子コンテキストを使用して、最初に書き込まれた非システム・キューにメッセージを送り返します。
- SUMMARY
- リカバリー単位のアクティビティーを要約します。
警告: REPLY または REPLAY_ORIGINAL を使用する前に、 CSQ4LOGS に渡されたすべてのメッセージを元のキューに戻すようにしてください。
以下のサンプル JCL は、 CSQ1LOGP を使用して、コミットされたメッセージを IBM® MQ ログから 図1: CSQ1LOGP と CSQ4LOGS を一緒に使用するためのサンプル JCL
xxx.MSGS.COMMIT データ・セットに抽出し、 CSQ4LOGSを使用してキュー・マネージャー MQST に再生する方法を示しています。
//STEP1 EXEC PGM=CSQ1LOGP,REGION=0M
//STEPLIB DD DISP=SHR,DSN=thlqual.SCSQANLE
// DD DISP=SHR,DSN=thlqual.SCSQAUTH
// DD DISP=SHR,DSN=thlqual.SCSQLOAD
//ARCHIVE DD DISP=SHR,DSN=xxx.yyy.A0030620
// DD DISP=SHR,DSN=xxx.yyy.A0030621
//SYSPRINT DD SYSOUT=*
//SYSSUMRY DD SYSOUT=*
//CSQCMT DD DSN=xxx.MSGS.COMMIT,
// DISP=(NEW,CATLG),SPACE=(CYL,(1,10),RLSE),UNIT=SYSDA
//SYSIN DD *
EXTRACT(YES) SUMMARY(NO)
URID(xxxxxxxxxxxx)
/*
//STEP2 EXEC PGM=CSQ4LOGS,PARM=('MQST REPLAY'),REGION=0M
//STEPLIB DD DSN=thlqual.SCSQANLE,DISP=SHR
// DD DSN=thlqual.SCSQAUTH,DISP=SHR
// DD DSN=thlqual.SCSQLOAD,DISP=SHR
//FILEIN DD DSN=xxx.MSGS.COMMIT,DISP=SHR
//SYSDBOUT DD SYSOUT=*
//SYSABOUT DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSOUT DD SYSOUT=*
/*