z/OS Communications Server: IP Programmer's Guide and Reference
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Format of trace records

z/OS Communications Server: IP Programmer's Guide and Reference
SC27-3659-02

The real-time data is provided in the form of cte trace records. Each cte record consists of the cte header, the cte epilog, and the real-time data portion. The format of each trace record is:
Table 1 shows the files in which the cte structures are defined.
Table 1. cte structure definition file
File name Language and type Installation location
ITTCTE Assembler macro SYS1.MACLIB
EZBNMCTE C/C++ header SEZANMAC and the z/OS® UNIX /usr/include file system directory (this header is dynamically included by the NMI header EZBRCIFC)

cte header and epilog

The cte header, cte, describes the length of the real-time data in the record. The cte header is a 16-byte descriptor whose format is:
struct cte
{
   unsigned     short       ctelenp;      /* Length of CTE
                                             and cteeplg. */
                short       cteoff;       /* Offset from start of CTE */
   unsigned     long        ctefmtid;     /* Format ID of record */
   unsigned     long long   ctetime;      /* TOD timestamp of record creation */
};
where
  • ctelenp is the total length of the record including the cte, the data record, and the cteeplg.
  • cteoff is the offset to the data record from the start of the cte.
  • ctefmtid is a format ID that is specific to each trace record and can be used to identify the record. The first byte of the format ID indicates the trace type to which the record belongs:
    X'00'
    RCFIPktDat - Packet or data trace.
    X'FF'
    RCFILost - Lost record.
    The remaining 3 bytes identify the specific trace record in each trace type. Your application can compare the record ID constants in the following table with the ctefmtid value to identify each record.
    ctefmtid trace type (byte 1) ctefmtid record ID (bytes 2-4) Record ID constant Trace record description Structure for real-time data
    X'00' X'000004' PTHIdPkt IPv4 or IPv6 packet trace record PTHDR_T

    The Pth_Lost and Pth_TrCnt fields are always 0.

    X'00' X'000005' PTHIdDat IPv4 or IPv6 data trace record PTHDR_T

    The Pth_Lost and Pth_TrCnt fields are always 0.

    X'00' X'000006' PTHIdEE IPv4 or IPv6 EE packet trace record PTHDR_T

    The Pth_Lost and Pth_TrCnt fields are always 0.

    X'FF' X'000001' RCFILOSTSTG Staging buffer lost record RCCLost
    X'FF' X'000002' RCFILOSTCOLL Collection buffer lost record RCCLost
    The structures that define the real-time data portion of the trace records are defined in the following files:
    Structure Description File name Language and type Installed location
    PTHDR_T (assembler macro); pthdr_t or pthdr_base_t (C/C++ header) Packet trace header used for packet and data trace . See Common real-time trace record header for a description of the fields. EZBYPTHA Assembler macro SEZANMAC
    EZBYPTHH C/C++ header SEZANMAC
    RCCLost Lost record EZBRCIFA Assembler macro SEZANMAC
    EZBFCIFC C/C++ header SEZANMAC and the z/OS UNIX /usr/include file system directory
  • ctetime is an 8-byte TOD time stamp of the time that the record was written.

The cte epilog consists of a 2-byte cteeplg structure. This structure contains only the ctelene field. The ctelene field contains the same length value as the ctelenp field in the cte structure.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014