SMF provides an application programming interface (API) that offers real-time access to
SMF in-memory resources. You can use the callable services that comprise the SMF real-time interface
from an application program to access SMF records from an in-memory resource as they are
written.
About the SMF real-time interface
The SMF real-time interface provides applications with a high-speed data feed with low system
overhead, both in terms of CPU time and elapsed time. The real-time interface is designed to offer
the following advantages over accessing records using the IEFU83, IEFU84, IEFU85, and
IEFU86 user exits:
SMF real-time interface |
IEFU83, IEFU84, IEFU85, IEFU86 user exits |
- Maintains low latency and is non-disruptive to SMF processing.
- You can specify which SMF record types you want written to an in-memory resource and, thus,
presented to your application.
- No requirement for application programs to be authorized; access to in-memory resources is
controlled by SAF resources.
|
- Responsibility to maintain low latency falls on the user exit programmer, as the exits are
called before an SMF record is buffered.
- All records are presented to the user exits, unconditionally.
- User exits run in an authorized code path.
|
SMF real-time callable services provides details about using the real-time interface to access
SMF data.
About SMF in-memory resources
SMF must be running in logstream recording mode in order to define and use in-memory resources
and, thus, the real-time interface. Records can be recorded to an in-memory resource without also
being written to a logstream.
Note: Record types that are defined to an in-memory resource are not recorded in the logstream
defined to SMF with the DEFAULTLSNAME option. For a record to be written to both an in-memory
resource and a logstream, the record type must be defined to one or more LSNAME logstreams and one
or more in-memory resources.
An SMF in-memory resource is a wrap-around buffer that keeps selected records in memory and
provides real-time access to those records. You can specify the size when you define an in-memory
resource.
Note: There is no protection for discarded data. When an in-memory resource is full, new records
overwrite the oldest records. Therefore, plan your in-memory resource capacity accordingly to avoid
missing data.
You can define one or more in-memory resources, each with a unique set of record types, up to a
maximum of 32 in-memory resources. This is useful both for managing resource capacity and usage, and
for separating record types by application requirements.
Defining in-memory resources describes the process to define in-memory resources.