Batch Assembler Fault Diagnosis
This tutorial will guide you through some of the capabilities within BMC AMI DevX Abend-AID, including:
- Using BMC AMI DevX Abend-AID to examine a batch Assembler abend.
- Utilizing Abend-AID's features to view storage, compiled listings, variable values.
- Taking advantage of Abend-AID's link to BMC AMI DevX File-AID to view formatted VSAM, QSAM, etc., files.
Table of Contents
- Starting BMC AMI DevX Abend-AID
- The Diagnostic Summary
- Program Detail Screen
- File Summary Screen
- Program Summary Screen
- Wrap-up
Starting BMC AMI DevX Abend-AID
To access Abend-AID for Batch within BMC AMI DevX Workbench for Eclipse:
This opens a view into Abend-AID within your BMC AMI DevX Workbench for Eclipse IDE. Integration of the tools needed for developers to do their daily jobs is a key feature of the Workbench experience.
The main menu of Abend-AID is the gateway to many useful views of your Fault Analysis data. We'll start by looking at the Fault Summary of a specific job (CWEZXXXX) to spotlight how you can leverage Abend-AID to quickly understand the root cause of a reported abend.
Fault Summary provides you easy, hyperlinked access to your generated batch, CICS, IMS, and SVC dumps sortable by job name, CICS region name, IMS message region name, etc. Each column provides a masking field (asterisks) to shorten the time needed to find your dump.
You now have filtered to only jobnames that begin with CWEZ. Next, we'll dig a little deeper using Abend-AID's hyperlinks.
We've now filtered down to entries only for jobname CWEZXXXX. Next, we'll select one of the entries to begin diagnosing an abend.
The Diagnostic Summary
The Diagnostic Summary provides the information needed to diagnose a batch program error. The summary analyzes the abend, provides a probable reason why it occurred, and usually suggests a resolution. For COBOL, PL/I, and Assembler programs compiled with source support, the statement number and source code of the statement in error are shown.
We'll use the Diagnostic Summary as a window into details about the program, the listing, storage areas, a narrative explanation of the error code, and other information valuable in diagnosing an abend.
The source code of the statement in error is displayed in the Analysis of Error section. For data-related errors, all Assembler variables for the statement in error are shown with their current values. The abending line of code is displayed in red.
Program Detail Screen
The Program Detail screen provides detailed information about the selected program and gives you hyperlinks to source listings, concatenations and storage areas.
The STEPLIB Concatenation screen displays the datasets and their associated volsers for the JOBLIB or STEPLIB DD statement defined in the JCL at the time of this abend. The highlighted dataset name is the load library from where the module was loaded.
The Assembler Listing screen displays the source listing statements of the selected program, highlighting the active statement (abending offset, program call, etc.). For Assembler programs, Abend-AID displays the entire source listing.
The Assembler Storage Areas menu gives you consolidated access to the storage areas that were available during a program call or at the time of abend.
Abend-AID gives you clear and concise access to the entire CSECT of the program and the individual DSECTs defined within the load module or program object.
The Assembler Storage Area screen displays for you the fields contained within the selected program storage area. It provides information about each field such as the field offset, field label, statement number, and field contents.
As with the 'Select Active Using' option when looking at the CSECT, here you can find the field address and offset, the statement number and field contents for the selected DSECT.
- The abending line of code is highlighted, easily found and you can access the Assembler listing with hyperlinks to the surrounding statements.
- Abend-AID produces for you a narrative explanation of the abend and IBM messages that accompany the abend.
- The Program Information subsection provides information about the load library or program object library the module was loaded from, the bind date/time, with hyperlinks to the Program Detail screen and the STEPLIB Concatenation screen.
- The Call Trace Summary spells out the sequence of programs called from the initial program to the abend. Hyperlinks take you to the Program Detail screen for each program, or to the Call Detail screen (discussed next) for each offset.
Abend-AID highlights for you the CALL Statement where CWAACOB calls CWAADATE. Included are the call statement argument definitions and values. Hyperlinks on this screen provide you quick access to the COBOL listing (in this case the calling program is a COBOL module) or to the Expanded Data field for the argument values.
Here you can see all the module names, libraries from which they were loaded, for all programs (both application and LE) that appear in the calling chain. Abend-AID indicates when modules are loaded from the LINKLIST and details the library set to help with your diagnosis.
This is another path to the STEPLIB Concatenation screen (earlier we used a hyperlink from the Program Detail screen). As you saw previously, the library from where the modules loaded is highlighted.
If your system runs JES2, Abend-AID shows you the submitted JCL that produced the abend.
File Summary Screen
The FILE command displays information about the files allocated to the abending program and their DD statements.
For DD statements that are sequential, QSAM or VSAM files, the operating system stores the current (and possibly the previous) record read or written. Record images (if they exist) for any non-spooled DD statement are viewable.
The File Detail screen provides detailed information about the selected file associated with the abending job. The file can be browsed or edited using the quick access to BMC AMI DevX File-AID (if licensed).
The File-AID Data Editor (browse mode) is invoked in a new editor view and provides you formatted, readable data.
Program Summary Screen
The Program Summary Information screen identifies all active modules involved in an abending application.
From here you have links to extensive information about the application programs that comprise the active calling chain:
- The Program Detail, Program Listing, and Program Storage options have all been covered in this document previously.
- Clicking on the Compiler Options shows the language and version the program was compiled or assembled under, as well as the compile options (if the program was compiled with COBOL).
- The remaining options will be covered in later BMC AMI DevX Abend-AID Test Drive tutorials.
Wrap-up
This concludes our look at how Abend-AID provides powerful tools for diagnosing Assembler batch abends. We hope that you have enjoyed your look at these capabilities and look forward to working with you to implement some or all of the solution within your systems. Please remember to complete the Test Drive survey, as both your sponsor and our team are very interested in your feedback on the Test Drive Experience.
You can choose from any of the available scripts from the panel to the left or return to the main page here: Welcome to Test Drive