SMS Debug & Audit
- ACS Routine Tracing – Easily see and understand the logic used by production or test ACS routines to locate errors and understand logic flow.
- Test Case Management – Automatically generate and execute ISMF test cases using highly-accurate live-dataset input and side-by-side results comparisons.
- Audit SMS Configurations – Compare ACTIVE configuration to SCDS or one SCDS to another to identify changes to SMS constructs and provide an SMF audit trail.
ACS Debugging – SMS/Debug is a powerful testing, tracing, and debugging tool for z/OS installations. With SMS/Debug, storage administrators can more effectively understand and manage their installation’s DFSMS environment. SMS/Debug includes the following components:
- Extensive tracing facilities for Automatic Class Selection (ACS) routines. Tracing is available for both real-time production ACS routines as well as test (unactivated) routines. Up to 99 different sets of ACS routines may be tested.
- Trace and display of the DFSMS volume selection process, including the display of the primary, secondary, and tertiary volume selection lists.
- Display of the results of the Direct Access Device Space Manager (DADSM) pre, and post, processing exit return codes, showing each volume considered for allocation.
- Automatic display of the DFSMS volume selection lists when an allocation error occurs.
ACS Quality Assurance – SMSDEBUG also contains an ISPF-based ACS test facility called ACS/QA. This facility can be useful in testing ACS routine execution and in performing regression testing when changes are made to the ACS routines. ACS/QA can be used to determine what the output of the ACS routines will be (including messages and exit codes), and can provide a side-by-side comparison of different pairs of ACS routines residing in different SMS control data sets.
ACS/QA provides a number of advantages over the native ISMF test facilities, making ACS routine testing much faster, more accurate, and more practical. These include:
- Side-by-side comparison of the results of testcase execution. This allows the user to see exactly which constructs, exitcodes, and messages will change as a result of changes to the ACS routines. It is not necessary to save output from prior tests – ACS/QA shows the results of the testcase execution for each SMS control dataset specified and flags exceptions.
- Optional ACS routine logic tracing as each test case executes.
- Optional updating of the ACS read-only variables from the data class definition after the data class ACS routine executes. This allows much more accurate testing of the following routines, which unlike ISMF or Naviquest testing, will ‘see’ the correct values for the ACS read-only variables.
- Optional one-line-per-testcase summary report
- List of all ACS read-only variables that were input to each testcase
- ACS routine exits (IGDACSxx) can be called, either the live system exits or ones loaded from a test load library. This allows testing of ACS routine exit code without the danger of affecting systemwide allocation and without the need for APF-authorized execution.
- Control statement overrides for SMS construct names, job names, and other read-only variables input to each testcase, allowing the test administrator more detailed control over the tests.
- Testcase execution can be limited to tests for particular jobs, datasets, or other criteria
Simple User Interface – When SMS/Debug is started, the product dynamically adds a JCL and TSO command extension to the system. The SMSDEBUG keyword parameter can then be used to activate the debug facilities on both batch and TSO data set allocations. For example, the following batch job uses the SMSDEBUG keyword to activate tracing.
//JOBNAME JOB… // EXEC PGM=IEFBR14 //DD1 DD DSN=TEST.DATASET,SPACE=(TRK,1), // STORCLAS=STC1,SMSDEBUG=YES
Trace Output Returned to User – The trace output is returned directly to the user. For batch jobs, the trace messages are included in the JES output message log. If a TSO trace is requested, the messages are returned directly to the TSO user. For VSAM IDCAMS defines, output is returned to the SYSPRINT DD statement.
No Rules Language – Unlike most of the other DTS Software products, SMS/Debug does not require any installation setup or product configuration.
ACS/QA ISPF Interface – ACS/QA test cases can be created, updated, and executed from an ISPF interface. The ISPF interface allows the user to define new test cases in a testcase library, select desired test cases to view or alter, or interactively execute one or more test cases.
SMS/Debug is actually a feature that’s been available in ACC for many years. Not all companies need the power and sophistication of ACC, but many SMS installations are still struggling to debug ACS rules and figure out “Why did SMS pick THAT volume?”
In early 2003, DTS cloned the SMS debugging features from ACC and wrote a very short manual for a very simple product – SMS/Debug.