スプール

本章では、スプール・データセットとスプールのバックアップについて説明します。

1. 概要

スプールとは、ジョブの実行に必要な入力およびジョブの実行結果として生成されたスプール・データセットが格納されているボリュームのことを指します。また、スプール・データセットを使用するオペレーションを意味することもあります。

JCLがサブミットされると、TJESではジョブに一意のジョブIDを割り当て、JOBQに登録します。その際、割り当てられたジョブIDでスプール・ボリュームにスプール・スペースが割り当てられます。また、INPJCLというスプール・データセットが生成されたら、JCLをINPJCLにコピーします。その後のジョブの実行からは、INPJCLが入力として使用されます。

tjclrunは、ジョブIDで生成されたスプール・スペースに、JESMSG、JESJCL、SYSMSG、CATPROCなどのスプール・データセットと、JCLに記述されたSYSOUT DDに対するスプール・データセットを作成してジョブの実行に使用します。

作成されたスプール・データセットは、tjesmgrコマンドまたはOpenFrame Managerを使用して確認できます。

2. スプール・データセット

スプール・データセットには、ジョブが実行される際にデフォルトで生成されるデータセット(INPJCL、SYSMSG、CATPROC、CONVJCL、JESMSG、JESJCL)と、JCLにSYSOUTとして記述され生成されるデータセットの2種類があります。

以下は、データセットのTEST.DATASET1をTEST.DATASET2とTEST.DATASET3にコピーした後、TEST.DATASET1を削除するJCLの例です。

<TESTPROC JCL>

//TESTPROC JOB CLASS=A,MSGCLASS=X,MSGLEVEL=(1,1)
//STEP01   EXEC KBGPROC
//PS010.SYSUT1 DD DSN=TEST.DATASET1,DISP=(SHR,KEEP)
//PS010.SYSUT2 DD DSN=TEST.DATASET2,DISP=(NEW,CATLG),
//           DCB=(RECFM=FB,LRECL=10,BLKSIZE=100)
//STEP02   EXEC KBGPROC
//PS010.SYSUT1 DD DSN=TEST.DATASET1,DISP=(SHR,DELETE)
//PS010.SYSUT2 DD DSN=TEST.DATASET3,DISP=(NEW,CATLG),
//           DCB=(RECFM=FB,LRECL=10,BLKSIZE=100)

このJCLは、カタログ式プロシージャのKBGPROCを使用する2つのステップで構成されています。以下は、KBGPROCの内容と、JSDGENERユーティリティを実行する例を示しています。

<KBGPROC>

//PS010   EXEC PGM=JSDGENER
//STEPLIB   DD DSN=SYS1.USERLIB,DISP=SHR
//          DD DSN=SYS1.TEMPLIB,DISP=SHR
//SYSPRINT  DD SYSOUT=*
//SYSUT1    DD DUMMY
//SYSUT2    DD DUMMY

JCL TESTPROCをサブミットして実行すると、以下のようなスプール・データセットが生成されます。

SPOOL LIST :
---------------------------------------------------------------------------
NO  STEP              DDNAME       SIZE  DSNAME
---------------------------------------------------------------------------
0   --------          INPJCL         409 INPJCL
1   --------          SYSMSG          5K SYSMSG
2   --------          CATPROC        444 CATPROC
3   --------          CONVJCL        791 CONVJCL
4   --------          JESMSG          1K JESMSG
5   --------          JESJCL          3K JESJCL
6   STEP01/PS010      SYSPRINT       463 oframe.TESTPROC.JOB00040.D000004
7   STEP02/PS010      SYSPRINT       463 oframe.TESTPROC.JOB00040.D000009
-----------------------------------------------------------------------------

2.1. デフォルト・データセット

本節では、スプール・リストのスプール・データセットについて説明します。

2.1.1. INPJCL

サブミットされたJCLがコピーされています。以降のジョブ実行からは、コピーされたINPJCLを使用します。

//TESTPROC JOB CLASS=A,MSGCLASS=X,MSGLEVEL=(1,1)
//STEP01   EXEC KBGPROC
//PS010.SYSUT1 DD DSN=TEST.DATASET1,DISP=(SHR,KEEP)
//PS010.SYSUT2 DD DSN=TEST.DATASET2,DISP=(NEW,CATLG),
//           DCB=(RECFM=FB,LRECL=10,BLKSIZE=100)
//STEP02   EXEC KBGPROC
//PS010.SYSUT1 DD DSN=TEST.DATASET1,DISP=(SHR,DELETE)
//PS010.SYSUT2 DD DSN=TEST.DATASET3,DISP=(NEW,CATLG),
//           DCB=(RECFM=FB,LRECL=10,BLKSIZE=100)

2.1.2. SYSMSG

ジョブの実行中にtjclrunが生成したメッセージを保存します。

------------------------------------------------------------------------------
 ** Cataloged Procedure KBGPROC in SYS1.PROCLIB SCAN start **
------------------------------------------------------------------------------
------------------------------------------------------------------------------
 ** Cataloged Procedure KBGPROC in SYS1.PROCLIB SCAN start **
------------------------------------------------------------------------------
 JOBID=JOB00040   JOBPOS=0   RUNPID=2454
 TESTPROC JOB
 ==============================================================================
 --------------------------- STEP01 EXEC PROC step ----------------------------
 (JRN0210I) Start parsing Cataloged Procedure ...
 ---------------------------- PS010 EXEC PGM step -----------------------------
 (JRN0320I) SYSUT1   DD ALLOC - DSNAME=TEST.DATASET1
 (JRN0320I) SYSUT2   DD ALLOC - DSNAME=TEST.DATASET2
 (JRN0320I) STEPLIB  DD ALLOC - DSNAME=SYS1.USERLIB
 (JRN0320I) CONCATED DD ALLOC - DSNAME=SYS1.TEMPLIB
 (JRN0321I) SYSPRINT DD ALLOC - DSNAME=JOB00040(oframe.TESTPROC.JOB00040.D000004)
 --------------------------- STEP02 EXEC PROC step ----------------------------
 (JRN0210I) Start parsing Cataloged Procedure ...
 ---------------------------- PS010 EXEC PGM step -----------------------------
 (JRN0320I) SYSUT1   DD ALLOC - DSNAME=TEST.DATASET1
 (JRN0320I) SYSUT2   DD ALLOC - DSNAME=TEST.DATASET3
 (JRN0320I) STEPLIB  DD ALLOC - DSNAME=SYS1.USERLIB
 (JRN0320I) CONCATED DD ALLOC - DSNAME=SYS1.TEMPLIB
 (JRN0321I) SYSPRINT DD ALLOC - DSNAME=JOB00040(oframe.TESTPROC.JOB00040.D000009)
 (JRN0210I) Start parsing Cataloged Procedure ...
 (JRN0210I) Start parsing Cataloged Procedure ...
 ==============================================================================
 --------------------------- STEP01 EXEC PROC step ----------------------------
 (JRN0210I) Start parsing Cataloged Procedure ...
 ---------------------------- PS010 EXEC PGM step -----------------------------
 EXEC PGM=JSDGENER
 (JRN0129I) TACF CHECK UTILITY PROGRAM AUTH OK
 (JRN0320I) SYSUT1   DD ALLOC - DSNAME=TEST.DATASET1
 (JRN0320I) SYSUT2   DD ALLOC - DSNAME=TEST.DATASET2
 (JRN0320I) STEPLIB  DD ALLOC - DSNAME=SYS1.USERLIB
 (JRN0320I) CONCATED DD ALLOC - DSNAME=SYS1.TEMPLIB
 (JRN0321I) SYSPRINT DD ALLOC - DSNAME=JOB00040(oframe.TESTPROC.JOB00040.D000004)
 (JRN0044I) dsalc_report_start OK
 (JRN0240I) SYSPRINT DD in STEP01/PS010 open
 (JRN0335I) SYSUT1 DD in STEP01/PS010 exported
 (JRN0335I) SYSUT2 DD in STEP01/PS010 exported
 (JRN0335I) STEPLIB DD in STEP01/PS010 exported
 (JRN0335I) SYSPRINT DD in STEP01/PS010 exported
 (JRN0056I) coprocess child: argv[0]=JSDGENER
 (JRN0058I) pgm pid=2460
 (JRN0060I) Entering exec_pipe_loop() ...
 (JRN0301I) SYSIN DD to PGM done
 (JRN0245I) PGM closed stdout pipe
 (JRN0061I) Leaving exec_pipe_loop() ...
 (JRN0063I) pipe work done with coprocess child (PGM)
 (JRN0080I) PGM pid[2460] EXITED
 (JRN0065I) PS010 EXEC PGM step done with RC=0
 (JRN0073I) dsalc_report_info OK
 (JRN0069I) step res usage: real[   0.47] user[   0.05] system[   0.03] cuser[   0.01] csystem[   0.01]
 (JRN0070I) res usage: cpu_time[   0.10] proc_time=[   0.47]
 (JRN0345I) SYSUT1   DD DISPOSE COND=NORMAL
 (JRN0345I) SYSUT2   DD DISPOSE COND=NORMAL
 (JRN0345I) STEPLIB  DD DISPOSE COND=NORMAL
 (JRN0345I) CONCATED DD DISPOSE COND=NORMAL
 (JRN0345I) SYSPRINT DD DISPOSE COND=NORMAL
 --------------------------- STEP02 EXEC PROC step ----------------------------
 (JRN0210I) Start parsing Cataloged Procedure ...
 ---------------------------- PS010 EXEC PGM step -----------------------------
 EXEC PGM=JSDGENER
 (JRN0129I) TACF CHECK UTILITY PROGRAM AUTH OK
 (JRN0320I) SYSUT1   DD ALLOC - DSNAME=TEST.DATASET1
 (JRN0320I) SYSUT2   DD ALLOC - DSNAME=TEST.DATASET3
 (JRN0320I) STEPLIB  DD ALLOC - DSNAME=SYS1.USERLIB
 (JRN0320I) CONCATED DD ALLOC - DSNAME=SYS1.TEMPLIB
 (JRN0321I) SYSPRINT DD ALLOC - DSNAME=JOB00040(oframe.TESTPROC.JOB00040.D000009)
 (JRN0044I) dsalc_report_start OK
 (JRN0240I) SYSPRINT DD in STEP02/PS010 open
 (JRN0335I) SYSUT1 DD in STEP02/PS010 exported
 (JRN0335I) SYSUT2 DD in STEP02/PS010 exported
 (JRN0335I) STEPLIB DD in STEP02/PS010 exported
 (JRN0335I) SYSPRINT DD in STEP02/PS010 exported
 (JRN0056I) coprocess child: argv[0]=JSDGENER
 (JRN0058I) pgm pid=2467
 (JRN0060I) Entering exec_pipe_loop() ...
 (JRN0301I) SYSIN DD to PGM done
 (JRN0245I) PGM closed stdout pipe
 (JRN0061I) Leaving exec_pipe_loop() ...
 (JRN0063I) pipe work done with coprocess child (PGM)
 (JRN0080I) PGM pid[2467] EXITED
 (JRN0065I) PS010 EXEC PGM step done with RC=0
 (JRN0073I) dsalc_report_info OK
 (JRN0069I) step res usage: real[   0.42] user[   0.04] system[   0.02] cuser[   0.02] csystem[   0.02]
 (JRN0070I) res usage: cpu_time[   0.10] proc_time=[   0.42]
 (JRN0345I) SYSUT1   DD DISPOSE COND=NORMAL
 (JRN0345I) SYSUT2   DD DISPOSE COND=NORMAL
 (JRN0345I) STEPLIB  DD DISPOSE COND=NORMAL
 (JRN0345I) CONCATED DD DISPOSE COND=NORMAL
 (JRN0345I) SYSPRINT DD DISPOSE COND=NORMAL
 --------------------------- DATA SET UNALLOCATION ----------------------------
 (JRN0346I) SYSPRINT DD UNALLOC COND=NORMAL
 (JRN0346I) STEPLIB  DD UNALLOC COND=NORMAL
 (JRN0346I) SYSUT2   DD UNALLOC COND=NORMAL
 (JRN0346I) SYSUT1   DD UNALLOC COND=NORMAL
 (JRN0346I) SYSPRINT DD UNALLOC COND=NORMAL
 (JRN0346I) STEPLIB  DD UNALLOC COND=NORMAL
 (JRN0346I) SYSUT2   DD UNALLOC COND=NORMAL
 (JRN0346I) SYSUT1   DD UNALLOC COND=NORMAL
 (JRN0333I) JOB is enqueued for output processing -  JOBID=JOB00040, ABEND=0

以下は、SYSMSGに保存される情報のうち、ステップの実行中に使用されたシステム・リソースを記録するstep res usageとres usageについての説明です。

  • step res usage

    フィールド 説明

    real

    ステップの実行時間です。(単位: 秒)

    user

    ステップがユーザー領域で使用したCPU時間です。(単位: 秒)

    system

    ステップがシステム領域(カーネル・モード)で使用したCPU時間です。(単位: 秒)

    cuser

    ステップで生成された子プロセスがユーザー領域で使用したCPU時間です。(単位: 秒)

    csystem

    ステップで生成された子プロセスがシステム領域(カーネル・モード)で使用したCPU時間です。(単位: 秒)

  • res usage

    フィールド 説明

    cpu_time

    ステップが使用した合計CPU時間です。(単位: 秒)

    proc_time

    step res usageのrealフィールドと同じで、該当ステップの総実行時間です。(単位: 秒)

    memory size

    -1に固定します。

2.1.3. CATPROC

ジョブの実行時にカタログ式プロシージャを使用する場合にプロシージャの内容を保存します。

XX-------- KBGPROC in SYS1.PROCLIB --------XX
//PS010   EXEC PGM=JSDGENER
//STEPLIB   DD DSN=SYS1.USERLIB,DISP=SHR
//          DD DSN=SYS1.TEMPLIB,DISP=SHR
//SYSPRINT  DD SYSOUT=*
//SYSUT1    DD DUMMY
//SYSUT2    DD DUMMY
XX-------- KBGPROC in SYS1.PROCLIB --------XX
//PS010   EXEC PGM=JSDGENER
//STEPLIB   DD DSN=SYS1.USERLIB,DISP=SHR
//          DD DSN=SYS1.TEMPLIB,DISP=SHR
//SYSPRINT  DD SYSOUT=*
//SYSUT1    DD DUMMY
//SYSUT2    DD DUMMY

2.1.4. CONVJCL

ジョブの実行で展開されたプロシージャとパラメータの値を置き換えた内容を保存します。カタログ式プロシージャは「XX」で出力され、JCLストリーム内プロシージャは「++」で出力されます。

//TESTPROC JOB CLASS=A,MSGCLASS=X,MSGLEVEL=(1,1)
//STEP01   EXEC KBGPROC
XX$DUMMY$ PROC
XXPS010   EXEC PGM=JSDGENER
XXSTEPLIB   DD DSN=SYS1.USERLIB,DISP=SHR
XX          DD DSN=SYS1.TEMPLIB,DISP=SHR
XXSYSPRINT  DD SYSOUT=*
//PS010.SYSUT1 DD DSN=TEST.DATASET1,DISP=(SHR,KEEP)
X/SYSUT1    DD DUMMY
//PS010.SYSUT2 DD DSN=TEST.DATASET2,DISP=(NEW,CATLG),
//           DCB=(RECFM=FB,LRECL=10,BLKSIZE=100)
X/SYSUT2    DD DUMMY
//STEP02   EXEC KBGPROC
XX$DUMMY$ PROC
XXPS010   EXEC PGM=JSDGENER
XXSTEPLIB   DD DSN=SYS1.USERLIB,DISP=SHR
XX          DD DSN=SYS1.TEMPLIB,DISP=SHR
XXSYSPRINT  DD SYSOUT=*
//PS010.SYSUT1 DD DSN=TEST.DATASET1,DISP=(SHR,DELETE)
X/SYSUT1    DD DUMMY
//PS010.SYSUT2 DD DSN=TEST.DATASET3,DISP=(NEW,CATLG),
//           DCB=(RECFM=FB,LRECL=10,BLKSIZE=100)
X/SYSUT2    DD DUMMY

JCLの実行に成功した場合にのみCONVJCLにすべての内容が出力されます。実行途中に文法エラーが発生した場合にもCONVJCLは生成されますが、一部の内容だけが出力されたり、何の内容も出力されなかったりすることがあります。

2.1.5. JESMSG

ジョブの関連情報と各ステップについての情報が保存されます。

---< JOB INFO >-----------------------------------------------------------------
 JOB  ID    : JOB00040
 JOB  NAME  : TESTPROC     NODENAME : NODE1
 JOB  CLASS : A , JOB STATUS : D(R00000) , JOB  PRTY : 5 , RUNNER INDEX : 8
 JOB  USER  : ROOT
 JCL  PATH  : /home/oframe/OpenFrame/volume_default/SYS1.JCLLIB/TESTPROC
 TIME STAMP : SUBM 20200122164142, EXEC 20200122164143, TERM 20200122164145
 RES  USAGE : CPU - 0s (p:1s) , 0%
---<STEP INFO>------------------------------------------------------------------
 STEP : [STEP01/PS010]
  CPU      0s(p: 0s)
  SYSUT1   TEST.DATASET1                                     R:10      W:0
  SYSUT2   TEST.DATASET2                                     R:0       W:10
  STEPLIB  SYS1.USERLIB                                      R:0       W:0
           SYS1.TEMPLIB                                      R:0       W:0
  SYSPRINT JOB00040(oframe.TESTPROC.JOB00040.D000004)        R:0       W:5
 STEP : [STEP02/PS010]
  CPU      0s(p: 0s)
  SYSUT1   TEST.DATASET1                                     R:10      W:0
  SYSUT2   TEST.DATASET3                                     R:0       W:10
  STEPLIB  SYS1.USERLIB                                      R:0       W:0
           SYS1.TEMPLIB                                      R:0       W:0
  SYSPRINT JOB00040(oframe.TESTPROC.JOB00040.D000009)        R:0       W:5

以下は、JESMSGに保存されるジョブとステップの情報です。

  • ジョブ

    フィールド 説明

    JOB ID

    割り当てられた固有のジョブIDです。

    JOB NAME

    ジョブ名です。

    NODENAME

    ジョブが実行されたTJESのノード名です。

    JOB CLASS

    ジョブ・クラスです。

    JOB STATUS

    ジョブの現在の状態(戻り値)です。

    JOB PRTY

    実行したジョブのスケジューリング優先順位です。

    RUNNER INDEX

    ジョブを実行したランナー・スロット番号です。

    JOB USER

    ジョブを実行したユーザーです。

    JCL PATH

    ユーザーがサブミットしたJCLファイルのディレクトリとファイル名です。

    TIME STAMP

    ジョブがサブミットされた時刻、ジョブ実行の開始と終了時刻です。

    RES USAGE

    ジョブの実行に使用されたCPU時間です。

    • CPU

    • 0s : tjclrunおよびフォークされた子プロセスのCPU使用量の合計(現在はプロセスが終了されたため0です)

    • (p:2s) : tjclrunがフォークされた時点から終了時までの時間(ジョブの実行時間)

    • 0% : ジョブの実行時間におけるCPUの使用率

  • ステップ

    フィールド 説明

    STEP

    ジョブ・ステップ名です。

    CPU

    ジョブ・ステップ処理に使用されたCPU時間です。(実際の処理時間)

    SYSUT1

    ジョブ・ステップで発生したSYSUT1へのI/O数です。

    SYSUT2

    ジョブ・ステップで発生したSYSUT2へのI/O数です。

    STEPLIB

    ジョブ・ステップで発生したSTEPLIBへのI/O数です。

    SYSPRINT

    ジョブ・ステップで発生したSYSPRINTへのI/O数です。

2.1.6. JESJCL

INPJCLに対してJCL文の構文解析ツリーが保存されます。

JOB STREAM=[/home/oframe/OpenFrame/spool/JOB00040/INPJCL], JOBPOS=[0]
========================================================================
/JOB[name=TESTPROC,lineno=1]={
   |[key=CLASS]={STR,value=[A]}
   |[key=MSGCLASS]={STR,value=[X]}
   |[key=MSGLEVEL]={SUB,value={
   |   |[pos=1]={STR,value=[1]}
   |   |[pos=2]={STR,value=[1]}
   |}}
   |-------- child statements --------
   |/EXEC[name=STEP01,lineno=2]={
   |   |[pos=1]={STR,value=[KBGPROC]}
   |}
   |/DD[name=PS010.SYSUT1,lineno=3]={
   |   |[key=DSN]={STR,value=[TEST.DATASET1]}
   |   |[key=DISP]={SUB,value={
   |   |   |[pos=1]={STR,value=[SHR]}
   |   |   |[pos=2]={STR,value=[KEEP]}
   |   |}}
   |}
   |/DD[name=PS010.SYSUT2,lineno=4]={
   |   |[key=DSN]={STR,value=[TEST.DATASET2]}
   |   |[key=DISP]={SUB,value={
   |   |   |[pos=1]={STR,value=[NEW]}
   |   |   |[pos=2]={STR,value=[CATLG]}
   |   |}}
   |   |[key=DCB]={SUB,value={
   |   |   |[key=RECFM]={STR,value=[FB]}
   |   |   |[key=LRECL]={STR,value=[10]}
   |   |   |[key=BLKSIZE]={STR,value=[100]}
   |   |}}
   |}
   |/EXEC[name=STEP02,lineno=6]={
   |   |[pos=1]={STR,value=[KBGPROC]}
   |}
   |/DD[name=PS010.SYSUT1,lineno=7]={
   |   |[key=DSN]={STR,value=[TEST.DATASET1]}
   |   |[key=DISP]={SUB,value={
   |   |   |[pos=1]={STR,value=[SHR]}
   |   |   |[pos=2]={STR,value=[DELETE]}
   |   |}}
   |}
   |/DD[name=PS010.SYSUT2,lineno=8]={
   |   |[key=DSN]={STR,value=[TEST.DATASET3]}
   |   |[key=DISP]={SUB,value={
   |   |   |[pos=1]={STR,value=[NEW]}
   |   |   |[pos=2]={STR,value=[CATLG]}
   |   |}}
   |   |[key=DCB]={SUB,value={
   |   |   |[key=RECFM]={STR,value=[FB]}
   |   |   |[key=LRECL]={STR,value=[10]}
   |   |   |[key=BLKSIZE]={STR,value=[100]}
   |   |}}
   |}
}
========================================================================
CATALOGED PROCEDURE=[KBGPROC]
========================================================================
/PROC[name=$DUMMY$,lineno=2]={
   |-------- child statements --------
   |/EXEC[name=PS010,lineno=3]={
   |   |[pos=1,key=PGM]={STR,value=[JSDGENER]}
   |}
   |/DD[name=STEPLIB,lineno=4]={
   |   |[key=DSN]={STR,value=[SYS1.USERLIB]}
   |   |[key=DISP]={STR,value=[SHR]}
   |}
   |/DD[name=,lineno=5]={
   |   |[key=DSN]={STR,value=[SYS1.TEMPLIB]}
   |   |[key=DISP]={STR,value=[SHR]}
   |}
   |/DD[name=SYSPRINT,lineno=6]={
   |   |[key=SYSOUT]={STR,value=[*]}
   |}
   |/DD[name=SYSUT1,lineno=7]={
   |   |[pos=1]={STR,value=[DUMMY]}
   |}
   |/DD[name=SYSUT2,lineno=8]={
   |   |[pos=1]={STR,value=[DUMMY]}
   |}
}
/PEND[name=,lineno=8]={
}
CATALOGED PROCEDURE=[KBGPROC]
========================================================================
/PROC[name=$DUMMY$,lineno=2]={
   |-------- child statements --------
   |/EXEC[name=PS010,lineno=3]={
   |   |[pos=1,key=PGM]={STR,value=[JSDGENER]}
   |}
   |/DD[name=STEPLIB,lineno=4]={
   |   |[key=DSN]={STR,value=[SYS1.USERLIB]}
   |   |[key=DISP]={STR,value=[SHR]}
   |}
   |/DD[name=,lineno=5]={
   |   |[key=DSN]={STR,value=[SYS1.TEMPLIB]}
   |   |[key=DISP]={STR,value=[SHR]}
   |}
   |/DD[name=SYSPRINT,lineno=6]={
   |   |[key=SYSOUT]={STR,value=[*]}
   |}
   |/DD[name=SYSUT1,lineno=7]={
   |   |[pos=1]={STR,value=[DUMMY]}
   |}
   |/DD[name=SYSUT2,lineno=8]={
   |   |[pos=1]={STR,value=[DUMMY]}
   |}
}
/PEND[name=,lineno=8]={
}

2.2. SYSOUTデータセット

主にJCLで記述されたユーティリティまたはアプリケーションで出力として使用されます。以下の例では、STEP01とSTEP02で、それぞれJSDGENERのメッセージを保存するSYSPRINT文に対してスプール・データセットが生成されています。

<STEP01/PS010 SYSPRINT oframe.TESTPROC.JOB00040.D000004>

 [2020-01-22T16:41:43.906976] [JSDGENER(2460)          ] [M] [IBG0001M] =====< JSDGENER START >=====
 [2020-01-22T16:41:43.911809] [JSDGENER(2460)          ] [M] [IBG0005M] RECORD COUNT = 10
 [2020-01-22T16:41:43.911817] [JSDGENER(2460)          ] [M] [IBG0006M] TOTAL RECORD COUNT = 10
 [2020-01-22T16:41:43.934682] [JSDGENER(2460)          ] [M] [IBG0002M] =====< JSDGENER FINISH >=====

<STEP02/PS010 SYSPRINT oframe.TESTPROC.JOB00040.D000009>

 [2020-01-22T16:41:44.490414] [JSDGENER(2467)          ] [M] [IBG0001M] =====< JSDGENER START >=====
 [2020-01-22T16:41:44.493186] [JSDGENER(2467)          ] [M] [IBG0005M] RECORD COUNT = 10
 [2020-01-22T16:41:44.493194] [JSDGENER(2467)          ] [M] [IBG0006M] TOTAL RECORD COUNT = 10
 [2020-01-22T16:41:44.509200] [JSDGENER(2467)          ] [M] [IBG0002M] =====< JSDGENER FINISH >=====

3. スプールのバックアップ

JOBQから不要なジョブを削除すると、該当のスプールも削除されます。スプールを保存する必要がある場合は、スプールのバックアップ機能を使用します。

SPOOL BACKUPコマンドを実行すると、OpenFrame環境設定のtjesサブジェクトのSPOOLセクションのSPOOL_BACKUP_DIRキーのVALUE項目に設定されたバックアップ・ディレクトリに現在の日付でディレクトリが作成されます。

このディレクトリにバックアップされたジョブに対し、該当のスプールを圧縮してJOBID_JOBNAME_ submitDATE_submitTIME.tar.gz形式のファイルを作成した後、バックアップされたジョブをJOBQとスプールから削除します。バックアップされたスプールを表示する際は、OpenFrame環境設定のtjesサブジェクトのSPOOLセクションのSPOOL_UNPACK_DIRキーのVALUE項目に設定されたディレクトリに圧縮されたJOBID_JOBNAME_submitDATE_submitTIME.tar.gzファイルを解凍した後、そのジョブのスプールを表示することができます。

スプールのバックアップが可能なジョブの状態は、DONE、ERROR、STOP、FLUSHです。

  1. スプール・バックアップは、tjesmgrコマンドまたはOpenFrame Manager[Batch]メニューを使用して確認することができます。

  2. スプール・バックアップ関連のコマンドについては、TJESMGRコマンドを参照してください。

  3. OpenFrame環境設定のtjesサブジェクトのSPOOLセクションの設定方法については、OpenFrame Batch『環境設定ガイド』を参照してください。