Introduction to SMF

System management facilities (SMF) collects and records system and job-related information that your installation can use in:
  • Billing users
  • Reporting reliability
  • Analyzing the configuration
  • Scheduling jobs
  • Summarizing direct access volume activity
  • Evaluating data set activity
  • Profiling system resource use
  • Maintaining system security

These examples show the types of reports that can be created by using the information that SMF collects. Using SMF data describes each of these in more detail.

SMF formats the information that it gathers into system-related records (or job-related records). System-related SMF records include information about the configuration, paging activity, and workload. Job-related records include information on the CPU time, SYSOUT activity, and data set activity of each job step, job, APPC/MVS transaction program, and TSO/E session. (SMF records includes the formats of the SMF records.)

Using the SMF dump programs describes the dump program and how to dump SMF data sets and explains how to code and use them.

An installation can provide its own routines as part of SMF. These routines will receive control either at a particular point as a job moves through the system, or when a specific event occurs. For example, an installation written routine can receive control when the CPU time limit for a job expires or when an initiator selects the job for processing. The routine can collect additional information, or enforce installation standards. Customizing SMF, summarizes the available installation-written exits. z/OS MVS Installation Exits describes each SMF installation exit. Using the SMF dump programs describes the SMF dump program exits.

Because SMF data-collection and exit routines are independent of each other, the installation can use them separately or in combination. After analyzing the information that the SMF data-collection routines obtained, for example, the installation might choose to set a time limit for all jobs running on the system and then terminate any job that exceeds this limit. However, to allow certain jobs to bypass this restriction, the installation could add a routine at the SMF time limit exit (IEFUTL) to extend the time limit for those selected jobs.

Figure 1 illustrates the functional overview of SMF; it also contains references to Table 1 , which explains where you can find more information.
Figure 1. SMF overview
SMF overview
Table 1. SMF process descriptions with references
Description of process Reference
 1  — Routines (SMF, system, program-product, installation-written) collect and format data into records and then pass the records to the SMF writer. Customizing SMF lists the macros used to interface with the SMF writer. z/OS MVS Programming: Authorized Assembler Services Reference EDT-IXG and z/OS MVS Programming: Authorized Assembler Services Reference SET-WTO contain the detailed description of the macros.
SMF records provides information about the records that includes:
  • The specific events that cause SMF to write records.
  • The contents of each record.
 2  — In addition to collecting data for SMF, some routines interface with the SMF exits, passing control to them at several points during job (and job step) processing. Customizing SMF describes how SMF exits are controlled and how these routines interact with the SMF exits.
 3  — The SMF exits get control when specific events occur, such as when a data set exceeds the output limit or at designated points during job processing. Customizing SMF describes the installation exits that are available. The z/OS MVS Installation Exits book describes each SMF installation exit and explains how to code them. Using the SMF dump programs describes the dump program exits.
 4  — SMF routines copy records to SMF buffers and then transfer records from the SMF buffers to either:
  • SMF data sets
  • SMF log streams
SMF routines then issue messages to the operator indicating the successful or unsuccessful completion of specific SMF-related events.
Setting up and managing SMF describes the requirements for running SMF and several SMF performance considerations.

Customizing SMF describes how an installation can use SMF parameters to vary the amount of information SMF routines collect and record. The information referenced includes the formats, uses, and default values of these parameters.

 5 
  • If you write your SMF data to SMF data sets, the data sets are filled one at a time; while SMF writes records on one data set, other SMF data sets can be dumped or cleared.
  • If you write your SMF data to a log stream, you can keep writing data to your log stream. The log stream will offload to DASD data sets when the log stream coupling facility structure (or the local storage buffers for a DASD only log stream) fills. You define the thresholds in the log stream definition for how much data is held before offload.
 6  — The SMF dump programs copy data from either SMF data sets or log streams to tape or direct access data sets for permanent storage.

You can also use the SMF log stream dump program may to dump to a temporary data set for immediate use

Using the SMF dump programs describes the dump program for SMF data sets and log streams.
 7  — Analysis and report routines, either user-written or those such as the Tivoli® Decision Support for z/OS® program product, process information records. Analysis routines read the SMF data set, list the dumped SMF data set, use a sort/merge program to order the SMF-recorded information, or perform a detailed investigation of one particular SMF data item, such as job CPU time under TCBs. Report routines usually format and print the statistics and/or results of the analysis routines. User-written report programs describes sort/merge routines and includes a sample report program.

SMF data in the JES2 EVENTLOG data set

While a job is executing, SMF writes the type 30, subtype 1, 4, and 5 records associated with each job step to the job’s EVENTLOG data set. You can use the Job Step panel of the Spool Display and Search Facility (SDSF) to view these records. To control access to this information, the EVENTLOG is protected with two SAF resources in the JESSPOOL class: nodeid.userid.jobname.jobid.EVENTLOG.SMFSTEP and nodeid.userid.jobname.jobid.EVENTLOG.STEPDATA. See Jobs, job groups, output groups, and SYSIN/SYSOUT data sets in z/OS SDSF Operation and Customization for more information.