SMF records may be created by SMF itself or by other
components of the operating system or certain application programs
(such as CICS® and DB2®). These records are then passed to SMF, which
copies them to buffers and then asynchronously writes them to the
SMF data sets. The control interval size you select for the SMF data
sets determines the size of each SMF buffer. To keep real storage
use to a minimum, SMF automatically obtains and releases more buffers
as SMF activity increases and decreases.
When no output data sets are available for use or when SMF collects
data more quickly than it can write records, SMF holds the data in
its address space. You must correct the condition causing the problem
before SMF uses all of the available storage, or data will be lost.
SMF writes message IEE986E to the console when the percentage
of buffers in use in the SMF address space reaches or exceeds the
buffer usage warning percentage for all available storage. The buffer
usage warning percentage is specified with the BUFUSEWARN parameter
(the default value is 25 percent, see
Using SMFPRMxx parameters for
more information). The maximum amount of storage available to SMF
is set with the BUFSIZMAX parameter (the default is 128M, see
Using SMFPRMxx parameters). Until the percentage of buffers in use
decreases below the specified BUFUSEWARN value, message IEE986E is
redisplayed with updated percentage values as each additional SMF
buffer is made ready for use or becomes available. When the percentage
of buffers in use decreases below the specified BUFUSEWARN value,
the message is deleted. If the percentage of use does not decrease
the following possible operator actions can be taken:
- Use the DISPLAY SMF command to check on the status
of the SMF data sets. If no data sets are active or available, use
the SMF dump program (IFASMFDP) to clear one and make it available
for use."
- The DISPLAY SMF, O command can be used to determine the maximum
amount of buffer space available for SMF to use. If the percentage
of buffer space in use is approaching or has reached the 100 percent
level of all available storage for SMF buffering, then consider increasing
the BUFSIZMAX value to allow for additional SMF record buffering.
This action can aid in reducing the loss of SMF record data when there
is a spike in SMF recording activity or there is a temporary inhibitor
to making the SMF data set available for use. Since the BUFSIZMAX
value can also be reduced from its current setting, if an increase
is put into effect to handle a temporary constraint condition, then
the BUFSIZMAX value can be reduced when the constraint clears.
- In addition, use the DISPLAY SMF,O command to check the record
types that are being collected. Reducing the number of records being
collected will slow the allocation and use of the buffers.
After taking the possible actions, if the percentage
of use does not decrease SMF will eventually run out of storage for
its buffers and stop recording data resulting in lost SMF records.
Use the SMF NOBUFFS parameter (see
Using SMFPRMxx parameters),
to specify what the system is to do in this situation. The possible
system actions are:
- continue processing with the loss of SMF data or
- enter a restartable wait state.
In the same way, you can control system action when the last available
SMF data set is filled using the SMF LASTDS parameter.
Use the MAXDORM parameter to minimize the amount of data lost because
of system failure. By specifying MAXDORM, your installation specifies
the period of real time that data is permitted to remain in the SMF
buffer before it is written. (See Using SMFPRMxx parameters.)
When there is a system failure, data in the SMF address space is
lost, because it has not yet been written to a data set. If the events
recorded in SMF records are very important to your installation, you
should take a system dump that includes the SMF address space. You can then
use the Interactive Problem Control System (IPCS) subcommand SMFDATA
to read the dump, extract the data in the SMF buffers, and write it
to an SMF data set. For more information on SMFDATA, see z/OS MVS IPCS Commands.