Job log
The part of a job's output written by the system rather than the program: what happened to the job, step by step.
Also written JESMSGLG, JESJCL, JESYSMSG, job output, JES output
Every job's output starts with three parts written by JES and z/OS, before any output from your programs. Together they are the job log, and they are the first place to look when a job does not do what you expected.
JESMSGLG is the message log. It shows when the job started and ended, and any important messages, such as an abend code or a JCL error. JESJCL is your JCL as the system read it, with PROCs expanded and symbols replaced by their values, so you can see what actually ran. JESYSMSG lists, for each step, the datasets it used, what happened to them at the end, and the return code.
A good order for reading them: check JESMSGLG for the result, then JESYSMSG for the step that failed and its messages, then JESJCL if you suspect the JCL was not what you meant.
You read the job log in SDSF. Messages in it have IDs, such as IEF142I or IEC141I, which you can look up to find out exactly what they mean.
Where can I learn this hands-on?
Right here, at ZedBank. You take a junior job at a simulated bank and learn each part of the work by doing it, with Zed beside you. There's nothing to install.
Start at ZedBankRelated
- SDSFThe tool for looking at what jobs are running, what has finished, and what output they produced.
- SpoolThe system-managed holding area where job output waits to be read, printed or purged.
- SYSOUTOutput sent to the spool rather than to a dataset, where you can read it after the job finishes.
- Return codeA number a program leaves behind saying how it went. Zero for clean, higher numbers for warnings and failures.
- AbendAn abnormal end: a program stopping in an uncontrolled way rather than finishing and reporting a result.
- JES2The job entry subsystem: the part of z/OS that queues jobs, decides when they run, and collects their output.