z/VSE: 45 Years of Progress - z/VM - IBM
z/VSE: 45 Years of Progress - z/VM - IBM
z/VSE: 45 Years of Progress - z/VM - IBM
You also want an ePaper? Increase the reach of your titles
YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.
How the History Recorder<br />
Operation Works<br />
Although the raw task data is provided<br />
by CICS, the recording and<br />
reporting functions <strong>of</strong> the History<br />
Recorder are subcomponents <strong>of</strong><br />
CICSPlex SM. If you want to view the<br />
statistics data for recently completed<br />
tasks, you must implement CICSPlex<br />
SM. If you understand CICS, the task<br />
history recording process won’t be rocket<br />
science, and a little black magic will<br />
help you be a power user!<br />
Users who currently record task SMF<br />
data will know that CICS regions cut<br />
CICS task performance records to SMF<br />
as they complete. The History Recorder<br />
function simply grabs a copy <strong>of</strong> these<br />
records and stores them in a reportable<br />
data set that’s cyclically reused. This<br />
means that data recorded in the CICS<br />
history data set must be considered transient<br />
and isn’t permanent. Each region<br />
that’s required to report task history must<br />
have at least two recorder data sets allocated;<br />
their Data Definition (DD) names<br />
will be EYUHISTA and EYUHISTB.<br />
Additional data sets may be allocated,<br />
and their DD names must follow in<br />
alphabetic sequence from EYUHISTC all<br />
the way to EYUHISTZ.<br />
CICS will fill each data set with completed<br />
task data. As each data set fills up,<br />
CICS will flip to the next available data<br />
set in alphabetic sequence and then flip<br />
back to data set A when the last available<br />
data set is filled. Clearly, there’s a trade-<strong>of</strong>f<br />
here between maximizing History<br />
Recorder performance and keeping the<br />
history records viewable for as long as<br />
possible before a data set switch occurs.<br />
Where disk space is at a premium for<br />
history data recording, you can section<br />
an area into more than two data sets:<br />
• When only two data sets are available,<br />
50 percent <strong>of</strong> your recorded data will<br />
be erased each time a switch occurs;<br />
however, system performance won’t<br />
be denigrated by repeated data set<br />
switching.<br />
• When 10 data sets are defined, 10 percent<br />
<strong>of</strong> your recorded data will be<br />
erased with each data set switch, but<br />
you may notice slower performance<br />
with the more regular suspensions for<br />
switching.<br />
• If data retention is a priority, you<br />
could allocate 25 history data sets. In<br />
that instance, only 4 percent <strong>of</strong> your<br />
history data will be overwritten with<br />
each switch, but clearly, data set<br />
switching will be occurring much<br />
more <strong>of</strong>ten than in the two previous<br />
instances.<br />
It isn’t necessary to allocate history<br />
data sets with the same size. In terms<br />
<strong>of</strong> usability <strong>of</strong> the function, it makes<br />
Figure 1: Monitor Definition Creation Parameters<br />
more sense to have them identically<br />
allocated. However, the recorder function<br />
won’t restrict you from varying<br />
file size allocation.<br />
History files must be allocated as a<br />
VSAM Relative Record Data Set (RRDS)<br />
file—not the usual key sequenced format<br />
required for most other CICS uses.<br />
When a CICS task completes, CICSPlex<br />
SM intercepts the task performance<br />
monitor record for it and writes it to the<br />
current, or next available, History<br />
Recorder data set. The size <strong>of</strong> the data<br />
set allocation and number <strong>of</strong> data sets<br />
allocated controls the volume <strong>of</strong> data<br />
retained. The more data sets allocated,<br />
the longer the history data will be<br />
reportable until it’s cyclically overwritten<br />
with fresher history data.<br />
History Recorder JCL Configuration<br />
The starting point to implementing<br />
the History Recorder is to allocate at least<br />
two recorder data sets in each region<br />
where recording is required. The sample<br />
Job Control Language (JCL) to allocate<br />
Figure 2: Monitor Definition List<br />
4 6 • z / J o u r n a l • O c t o b e r / N o v e m b e r 2 0 1 0