Elements of captured data

Each data element contains a 4-byte header with metadata the describes the type and length of the data that follows the header.

The captured data elements are logged in the DCAP_DATA field within the changed data log record. The format of data elements is broken down into the header information and the actual logged data. See Format for data element header for the format of the log record header.

Each data element contains a 4-byte header. The header contains a 1-byte LOGID field describing the type of data being logged in this element, a 1-byte LOG_FLAG and a 2-byte LOG_LL field. The LOG_LL field contains the length of the data that follows the header. This length is used to locate the header for the next element. The header is followed by the actual data defined in the LOGID field. The data is compressed using the z/OS/ESA compression services, if such services are available. If so, the COMPR_ALGORITHM field in LOG_DCAP_DATA indicates the algorithm used to compress the data.

If FLAG_1 of the changed data log record contains X'60' or X'E0' (FIRST_RECORD and FIRST_CALL flags set), the next data element is LOG_INQY_DATA. This element is only present in the first physical record of the logical log record.

The type of data element is identified in the LOGID field of the header and can be one of the following values:

LOGID X'00'
There is a CAPD block for each EXIT= logging request.
LOGID X'04'
The DBD version for the data base, as specified on the VERSION= parameter of the DBD macro during DBDGEN. A character string of up to 63 characters.
LOGID X'08'
The concatenated key for the segment in the CAPD. The format of the physical concatenated key is a character string of up to 3,824 (255 x 15) characters.
LOGID X'0C'
The capture data segment data block (CAPD_DATA). This block is used for captured segment data, which can be path data, segment data, or before-image data. There is a CAPD_DATA block for each segment that was captured for the call. The blocks are logged in the following order: path data, segment data, before-image data (replace), twin data (insert).
LOGID X'10'
The segment data for the path or segment data deleted, inserted, or replaced (for a replace, this data would represent the after-image). The length of the segment data is a character string of up to 30,700 characters.
LOGID X'14'
The before-image of the segment data changed by the replace operation. Only the first changed byte through the last changed byte is logged. The unchanged beginning and ending portions of the segment are reconstructed from the after-image contained in segment data. The before-image data is a halfword offset value (the offset of the changed data within the segment) followed by a character string of up to 30,700 characters. Only the actual before-image is compressed. The halfword offset value is not compressed. Within the changed data log record, there can be one before-image for every changed segment.

If all the data elements do not fit in a single log record, the next log record (with the same PST_NUMBER) contains the remaining data elements, starting where the previous record left off. Before-image data, however, is unique in that the offset (2 bytes) of the data in the segment is logged preceding the changed data. Therefore, the length of the data in DCAP_DATA (LOG_LL) is 2 bytes greater than the actual length of the data logged. The offset field is not compressed.