Lund Performance Solutions


The Historical Performance Data Extraction Utility

SOSLOGX is the historical data counterpart to sos. It provides the means for reviewing performance data stored in the log files. The user interface is similar in many ways to sos. The main difference is that the SOSLOGX screens do not display current samples of online performance data.
The primary functions of SOSLOGX are:
  • To browse through the data recorded in your log files using a variety of screen reports. This is usually done to identify periods of system activity that may require further analysis.
  • To prepare logged performance data from the log files for Performance Gallery Gold, a 32-bit, full-color graphical analysis and reporting application from Lund Performance Solutions.
  • The overall process can be broken down into the following three steps:
  • Collecting
  • Extracting
  • Downloading to a PC (optional)
  • Collecting

    Collecting performance data is accomplished by running SOS/3000 in a batch mode. There are three standard jobstreams provided with SOS/3000 for this purpose (i.e., SOSMONJ, SOSJOB, SOSFULL). This three jobstreams are shown in detail in Appendix , "Using SOS/3000 in a Batch Job". For beginners waiting to get the logging process started immediately, simply stream SOSMONJ.PUB.LPS. This "collection" or "logging" process will create log files on the LPS account with the following file name convention: SLYYDDD, where "SL" stands for SOS/3000 Log, "YY" is current year, and "DDD" is the number of days into the current year (also known as the Julian date).


    Once you have accumulated one or more "SLxxxxx" files, you can access them using the SOSLOGX program.
    With the SOSLOGX program you can perform the following regarding logged data:
  • Interactively view trend information.
  • Interactively zoom in on a given interval and determine what key processes were running at that time.
  • Print selected reports.
  • Export selected data to an ASCII file for downloading to a PC for further analysis.
  • Exclude specific periods, days and dates from analysis.
  • Determine averages based on user-definable criteria.
  • Getting Started

    In order to access the logged performance data from the SOS/3000 global screen:
  • Type S from the SOS Enter command: prompt to view the Screen Selection Menu screen.
  • From the Screen Selection Menu screen, enter L (Log Trends Program (soslogx)).
  • SOSLOGX will check the log file catalog, if one exists. If one does not exist, it will be created containing basic information about all log files in the selected group and account as configured in the Log Trend Options.
  • Enter the following information as prompted:
  • The start date of the initial sample using the format mm/dd/yy. If you do not provide a date, the program will retrieve the earliest sample date recorded by default. Press Enter.
  • The start time using the format hh:mm. If you do not provide a start date, the program will retrieve the start time of the earliest sample data recorded, by default.
  • The first SOSLOGX data report, the CPU Utilization Trends screen, will display. Information about each SOSLOGX report is provided in "SOSLOGX Reports".
    The SOSLOGX commands and menus are described in "SOSLOGX Menus and Options".

    Command Line Switches

    Use command line switches to modify the SOSLOGX configuration. Enter soslogx -h at the shell prompt. The functions of each command line switch is summarized in Table 25.1.
    Table 25.1 SOSLOGX command line switch functions
    Specifies local configuration filename
    Forces job mode.
    Reads command information in keyword form (batch mode).
    Dumps SOSCHART commands to CHARTDMP file.
    Specifies system configuration filename.
    Enables process export file report.
    Disables the "Are you sure you want to exit?" dialog.

    Browsing SOSLOGX Reports

  • The first SOSLOGX report displayed is the CPU Utilization Trends report. Begin by scrolling through this report using the commands keys.
  • The commands shown in the SOSLOGX Main Commands screen are discussed in "SOSLOGX Menus and Options".
  • Look for points within the data that show high CPU utilization percentages and/or high response time rates.
  • Compare the CPU data with information displayed in other SOSLOGX reports, which can be selected from the SOSLOGX Report Format Selection Menu.
  • The Report Format Selection Menu is explained in "The SOSLOGX Report Format Selection Menu".
  • Each SOSLOGX report is described in "SOSLOGX Reports".
  • The appearance of the reports displayed can be modified. Use the display options described in "The SOSLOGX Main Option Menu".
  • Extracting Data in Batch

    You can extract data with a batch job. This is the purpose of the job SOSLOGXJ. In "Cumulative Process Tracking" you will find a sample SOSLOGXJ jobstream. This jobstream creates one report and one extract file. Add necessary job commands using this job as an example if you want more of either or both.

    Exporting Data to ASCII Files

    You can view data in a PC - or host - based graphics, statistical or spreadsheet program. Both global and process data can be exported. You can export data interactively or in a batch job (see "Extracting Data in Batch"). The process for exporting data is outlined as follows:
  • Determine what output file format you want and configure it as such in the export file configuration submenu in the options.
  • Select the appropriate report via the reports menu in the REPORT KEYS function key tree.
  • To indicate whether or not process information will be exported, select the option menu via the OPTIONS KEYS (F1) function key or by entering a P at the prompt.
  • Enter the appropriate output file starting date(s) and time(s) and ending date(s) and time(s) by selecting the PRINT REPORT function key in the LOG TRENDS main function key tree. Respond to the prompts as directed.
  • Transfer the ASCII data to the HOST- or PC-based analysis platform of your choice (for example, Lotus 1-2-3, Excel, Quattro Pro, Harvard Graphics, Slide Write Plus, or Graphics Gallery).
  • Using the Logging Facility

    The SOS/3000 logging facility is the heart and soul of past performance trends analysis. To enable logging, answer “Y” to the “Should logging be enabled?” question in the SOS/3000 batch job SOSJOB.PUB.LPS. We recommend that you perform logging everyday. The easiest way to do this is to edit the SOSJOB jobstream to have a “Duration of job in minutes” of “0” and a re-stream of the SOSJOB just before the !EOJ. This automatically terminates a job at midnight. You can simplify the process further by adding a STREAM SOSJOB.PUB.LPS to the SYSSTART.PUB.SYS file. The overhead of this job depends on the collection interval and the size of the CPU. It usually takes less than 0.5% of the CPU.
    When logging is enabled in batch, SOS/3000 will create one logical log file record for every interval. The default interval is 10 minutes. This number will be adequate in most cases. Some larger, more active shops may want to drop this to a five minute interval for finer granularity. The log file it produces will reside in the same Group and Account as the job logon specification. SOS/ 3000 log files are named in the following manner:
    SL - SOS/3000 Log file.
    yy- Current year, ‘01, ‘02, etc.
    jjj- Julian day of the year
    s- Sequence letter A-Z (up to 26 per day is possible)
    It is also possible to have Cumulative Process Tracking. By enabling this feature via the appropriate line in the SOSJOB jobstream you can create a process log file. The naming convention for the process log file is similar to that of the global log file, except it begins with “PR” instead of “SL.” We will discuss Cumulative Process Tracking in greater detail later in this chapter.

    Disc Space Utilization Formula for SOS Log Files

    The approximate amount of disc space used in sectors by SOS/3000 log files is determined as follows:
    (258 + (A * 70) + (B * 122) + (C * 52)) / 128
    A - Number of user discs
    B - Number of user workloads (plus up to three default workloads)
    C - Maximum number of user processes logged.

    Creating Custom Reports

    The log reports generated by SOSLOGX are user-configurable.
    The steps for creating a custom report are as follow:
  • Create the format file following the rules and syntax below.
  • Compile the format file into the REPRTDEF.REPORT.LPS file via the SOSRCOM program.
  • Reload the report, if necessary. This makes newly-compiled reports available in the current session.
  • There are several sample report formats in the SAMPLE.LPS group. These reports have been compiled into the REPRTDEF.REPORT.LPS file. Use these formats as examples in creating your own report format files.
    The sosrcom report compiler uses the commands listed in the following table.
    Table 25.2 sosrcom report compiler commands
    ADD <>
    Adds a new report.
    DEL <report name>
    Deletes a report.
    DUMP <report name>
    Dumps existing report internal information.
    Exits report compiler.
    Displays the online help information.
    Lists all reports in current reprtdef file.
    UPDATE <>
    Updates existing report.
    Rebuild report configuration file.

    SOSLOGX Report Configuration Rules

    To create a report you must first run an EDITOR-type program. You can do this by Stand-alone or the Log Trends Utility keys. There are some rules to follow when creating custom report format files, although the entire process is essentially free-format. The logging process is keyword driven.

    There are two types of keywords: Extract-oriented and Format-oriented. A list of logged data items available for extraction can be found in the Appendices. See "SOS/3000 Data Items".

    These keywords represent individually logged performance indicators such as TOT-BUSY% for total CPU busy. There are also items that represent several logged elements. For example, the DISC-IO-RATE and CPU%/GRP items can refer to multiple disc drives and application groups, respectively. Specifying DISC-IO-RATE:1 or CPU%/GRP:ALL will select for consideration disc I/O rates for LDEV 1 and a CPU utilization average for all application groups.

    To extract information for separate elements (e.g., DISC-IO-RATE:1, DISC-IO-RATE:2, etc.), specify multiple lines in the format file (e.g., DISC-IO-RATE:1, DISC-IO-RATE:2, etc.).

    To determine the application workload group number, refer to the main screen in SOS/3000 or count the workload group’s position in the SOSWKDEF.PUB.LPS file. Remember that for disc I/O related items the logical device number of the disc drive follows the item name.

    The second type of keywords available are formatting keywords. These keywords drive the format in which the extract keywords appear. See a sample format file in "SOSLOGX Report File Example".


    In all file specification lines, blanks and commas can be used interchangeably for delimiters. Blank lines can be inserted anywhere except in the text specifications associated with $HEAD and $TEXT lines.

    Order of Items

    Items must be specified in the following order:
  • HEAD specifications, if any
  • TEXT specifications, if any
  • ITEM and BAR specifications
  • Syntax of Specification Lines

    The various specification lines are formatted using the following syntax.
    $TITLE "<report name>"
    Required. This line specifies the name of the report.

    $KEY "<line 1>," "<line 2>," <keycode>
    Required. This line specifies the function key used to select this report format (when function keys are available).
  • <line 1> is the first function key label line.
  • <line 2> is the second function key label line.
  • <keycode> is the two-digit code that specifies which function key should be used. The first digit specifies the keyset. The second digit identifies a function key with that keyset (1-5). This field is optional. If not entered, the default is the first available function key.

  • $LENGTH <length>
    Optional. This line specifies the maximum report line length. The <length> value cannot exceed 132. The default is 80.

    $LINES <lines>
    Optional. This line specifies the number of lines required for each log report. The default value for <lines> is the number of lines specified for $TEXT. If there is no $TEXT specification, the default is 1 (one).

    $HEAD <start>
    ...text lines...
    Optional. This line specifies the report heading text lines. <start> specifies the column in which the specified text starts. The default is 1 (one).

    This is used to facilitate entry of long hardcopy report lines with 80-character screen editors. The number of heading lines is defined by the first $HEAD specification encountered— subsequent $HEAD specifications may not exceed this number of lines.

    $TEXT <start>
    ...text lines...
    Optional. These lines specify the fixed text label lines to appear in the log report. <start> specifies the column in which specified text starts. The restrictions for $HEAD also apply to $TEXT.

    $DEFINE <identifier> <expression>
    Optional. This line associates as an identifier with a string or numeric expression value. The identifiers can be used as item qualifiers in the next section.
  • <identifier> is any string sequence up to 32 characters, starting with an alphabetical character.
  • <expression> is one of the following:
  • A decimal, hexadecimal, or octal constant.
  • A sequence of up to 4 numerical constants, separated by periods.
  • A string of consecutive, non-blank characters, starting with a non-numeric character.
  • A quoted string, using either double or single quotation marks.

  • <item-name>[:<qualifier>]<row> <col> <length> <label>
    This line specifies on item display.
  • <item-name> is the name of the item. Global block items cannot have an item qualifier. All other items must have one.
  • <qualifier> is a value that identifies which block in a multiple-block-type item is requested. This can be:
  • The word "Total" (the case must match).
  • A decimal, hexadecimal, or octal constant.
  • An identifier defined in a previous $DEFINE statement.
  • <row> is the row in which the item should be displayed.
  • <col> is the column in which the item should be displayed.
  • <length> is the width of the field displayed.
  • <label> is the unique text string (optional). It is not used by the log reporting program, but will be used by the report editor.

  • $BAR <row>,<col>,<length>,<label>,<item-name>,"<code>"

    $END <scale>
    This set of lines specifies a horizontal bar chart display, in which:
  • <row> is the row in which the bar should be displayed.
  • <col> is the column in which the bar should be displayed.
  • <length> is the length of the bar chart displayed.
  • <label> is a unique text string (optional). This is not used by the log reporting program, but will be used by the report editor.
  • <item_name> is the name of the item to display. Disc and workload group items must be qualified. If multiple items are specified, they must all contain the same number of decimal places. This is generally not a problem, because only similar items will be combined in one bar graph, and similar items will all have the same number of decimal places.
  • <code> is a single character to be used to represent this item in the bar graph. This can be blank.
  • <scale> is the scaling factor. In other words, the total cumulative item value which completely fills the bar chart. It can contain as many decimal places as the specified items.
  • SOSLOGX Report File Example

    An example of SOSLOGX report is provided here, for your convenience.

    $TITLE "CPU Utilization Bar chart"
    $KEY " CPU "," TRENDS ", 11
    * * * CPU Utilization Trends * * *
    ------------- %CPU Utilization ----------------
    Idle Resp
    Time 0 10 20 30 40 50 60 70 80 90 100 Time
    TIME 1, 1, 5
    $BAR 1, 7, 60
    AS-PROCESS%, "A"
    BS-PROCESS%, "B"
    CS-PROCESS%, "C"
    DS-PROCESS%, "D"
    ES-PROCESS%, "E"
    OVERHEAD%, "O"
    PAUSE%, "P"
    IDLE% 1, 69, 5
    RESP-TIME 1, 75, 5

    Printing Reports

    The process of printing reports is outlined as follows:
  • Select the appropriate report via the reports menu in the REPORT KEYS function key tree.
  • Select, via the OPTIONS KEYS dialog, whether process information should be printed.
  • Perform any data breaks or exclusions.
  • Select the PRINT REPORT function key at the LOG TRENDS main function key tree and respond to the questions as directed with the desired starting and ending dates and times.
  • The report will then be directed to a spoolfile named LOGLIST. If you want to redirect the output of the Log Trends report printing function, issue a file equation using LOGLIST at the formal file designator.

    Cumulative Process Tracking

    Cumulative Process Tracking allows you to obtain reports on global program utilization. The basis for these reports is the Process Log file. The Process Log file is created in batch when the “Should cumulative process tracking be enabled?” question is answered with a Y (Yes). The name conventions for the Process Log file are the same as for the SOS/3000 Global Log file, except that instead of an “SL” the process log files have “PR” at the beginning.
    The Process Log files contain extensive information regarding the execution of individual processes. The jobstream SOSPRANJ extracts and accumulates this process information on a program-by-program basis.
    Following is a sample of SOSPRANJ job.

    !run sospranl.logfiles.lps
    standard report type
    01/01/00 beginning date
    12/31/00 ending date
    @.@.@ program specs to report, terminated by blank line
    Y sort by workload
    l sort key
    80 cumulative cutoff percent

    Lund Performance Solutions
    Voice: (541) 812-7600
    Fax: (541) 812-7611