通知ユーザー出口 (MVS SVC ダンプ登録)

ダンプ登録通知ユーザー出口について、以下で説明します。

目的

この出口を使用して、ヒストリー・ファイルへの SVC ダンプ障害項目の記録について、インストール・システム固有の通知を行うことができます。

障害が記録されたヒストリー・ファイルの名前は ENV.IDIHIST データ域フィールドに提供され、記録された障害に割り当てられた障害 ID は、ENV.FAULT_ID データ域フィールドに示されます。

Fault Analyzer は、割り当てられた障害 ID およびヒストリー・ファイルを示すメッセージ IDI0003I を発行します。

呼び出されるタイミング

この出口は、Fault Analyzer がヒストリー・ファイルへの MVS SVC ダンプ障害項目の登録を完了した後に呼び出されます。

以下は、REXX で書かれたダンプ登録通知ユーザー出口の例です。
1. サンプル REXX ダンプ登録通知ユーザー出口
/* REXX */
if ENV.VERSION <> 5 then
  say 'Note: ENV data area version change - field usage review required!'
if NFY.VERSION <> 2 then
  say 'Note: NFY data area version change - field usage review required!'
/* Issue SEND command via TSO batch job */
queue "//NOTIFY   JOB  MSGCLASS=Z"
queue "//TSOBATCH EXEC PGM=IKJEFT01"
queue "//SYSTSPRT DD   SYSOUT=*"
queue "//SYSTSIN  DD   *"
/* Split the TSO SEND command over three data records that must
   each be padded with blanks to 80 bytes */
rec = "SEND 'Fault ID" ENV.FAULT_ID "assigned in history file -"
queue left(rec,80)
rec = strip(ENV.IDIHIST)||"' -"
queue left(rec,80)
rec = "USER(FRED) LOGON"
queue left(rec,80)
queue '/*'
/* 'Submit' the stacked TSO batch job */
n = queued()
"IDIALLOC DD(DD1) SYSOUT PGM(INTRDR)"
if rc = 0 then do
  address mvs "EXECIO" n "DISKW DD1 (FINIS"
  "IDIFREE DD(DD1)"
end
exit 0

通常のNotificationユーザー出口と異なり、ENV データ域でユーザー ID は使用できません。

上記のサンプル出口がデータ・セット X.Y.Z のメンバー ABC として存在する場合は、IDICNFxx 構成メンバーまたは IDIOPTS サブシステムに割り振られる IDIS ユーザー・オプション・ファイルで次のオプションを指定すると、このサンプル出口が呼び出されます。

DataSets(IDIEXEC(X.Y.Z))
DumpRegistrationExits(NOTIFY(REXX(ABC)))

DumpRegistrationExits オプションを、IDICNFxx parmlib メンバーに指定するか、または IDIOPTS サブシステム JCL の IDIS DD ステートメントに指定する必要があります。DumpRegistrationExits オプションは、IDIOPTS DD ステートメントでどこか他の場所 (CICS® 領域内やバッチ・ジョブ内など) に指定された場合には無視されます。