READA
Monitor programs can issue READA requests to request asynchronous data from the instrumentation facility interface.
Authorization
On a READA request, the application
program must own the specified destination buffer, or the request
is denied. You can obtain ownership of a storage buffer by issuing
a START TRACE to an OPn destination. If the primary
authorization ID or one of the secondary authorization IDs of the
process does not have MONITOR1 or MONITOR2 privilege, the request
is denied. READA requests are checked for authorization once for each
user of the thread. (Several users can use the same thread, but an
authorization check is performed each time the user of the thread
changes.)
Syntax and options
READA calls to the instrumentation facility interface have the following syntax:
CALL DSNWLI,('READA ',ifca,return-area),VL - ifca
- Contains information about the OPn destination and the ownership token value (IFCAOWNR) at call initiation. After the READA call completes, the IFCA contains the return code, reason code, the number of bytes moved to the return area, the number of bytes not moved to the return area if the area was too small, and the number of records lost.
- return-area
- Contains the varying-length records that are returned by the instrumentation facility. If the return area is too small, as much of the output as can fit is placed into the area (a complete varying-length record). Reason code 00E60802 is returned in cases where the monitor program's return area is not large enough to hold the returned data.
FL 504 IFI allocates up to 16 OP buffers upon request from private storage in the Db2 MSTR address space.
IFI uses these buffers to store trace data until the owning application performs a READA request to transfer the data from the OP buffer to the application's return area. An application becomes the owner of an OP buffer when it issues a START TRACE command and specifies a destination of OPn or OPX. Each buffer can be of size 256 KB to 16 MB. IFI allocates a maximum of 16 MB of storage for each of the OP buffers. The default monitor buffer size is determined by the MONSIZE subsystem parameter.