I was trying to resolve problems with a started task, and the output kept disappearing.
The JES2 class had been defined so it purged the JES2 output if the job ended cleanly
$DJOBCLASS('STC'),OUTDISP
gave me
$HASP837 JOBCLASS(STC) OUTDISP=(PURGE,HOLD)
This says, if the job ends normally then purge the JES2 related datasets.
I needed
$T JOBCLASS(STC),OUTDISP=(Keep,keep)
to keep the JES2 related datasets around. This command should be remembered across warm starts of JES2.
With $HASP837 JOBCLASS(STC) OUTDISP=(KEEP,HOLD) the spool files in the output are
DDNAME StepName ProcStep C Dest
JESMSGLG JES2 K LOCAL
JESJCL JES2 K LOCAL
JESYSMSG JES2 K LOCAL
CFGPRINT TCPIP K LOCAL
SYSOUT TCPIP H LOCAL
SYSERROR TCPIP K LOCAL
With $HASP837 JOBCLASS(STC) OUTDISP=(PURGE,HOLD) the spool files in the output are
DDNAME StepName ProcStep C Dest
SYSOUT TCPIP H LOCAL
SYSERROR TCPIP K LOCAL
CFGPRINT TCPIP K LOCAL
where the JES* files have been purged.
If your job does not provide any output, then when the JES* files are purged, there will be no trace of the job in the spool.