Fault Diagnosis Advanced Topics 2
This tutorial will guide you through the following capabilities within BMC AMI DevX Abend-AID:
- Starting BMC AMI DevX Abend-AID
- BMC AMI DevX Abend-AID for Db2
- BMC AMI DevX Abend-AID for WebSphere MQ
- 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 for Eclipse experience.
The main menu of Abend-AID is the gateway to many useful views of your Fault Analysis data. We are going to start by looking at the Fault Summary of a specific job (HCCAC013) to spotlight how you can leverage Abend-AID to quickly understand the root cause of a reported abend.
All entries associated with region HCCAC013 are listed (not shown). Let's zero in on one to look at it in more detail.
This will provide you access to up to 12 reports about this specific entry, from the diagnostic summary to a CICS Trace and Language Environment information. Feel free to look around at the different reports available, but please choose the Db2 Information report when you are ready to proceed on your journey.
BMC AMI DevX Abend-AID for Db2
Abend-AID for Db2 provides support for IBM's relational database manager, Db2. It presents the information needed to solve not only everyday but also unique, complex Db2 abends in a few concise report pages.
The Abend-AID for Db2 report provides a diagnostic report containing information about the statement in error and the specific SQL command that failed. It identifies the cause of the error and suggests a course of action.
A comprehensive Db2 Environment section under TSO, CALL, or RRSAF (Recoverable Resource Manager Services Attachment Facility) attach mode processing contains a summary of information to assist you in resolving the problem.
This section includes:
- SQL code interpretation
- SQL statement in error
- Interpreted contents of the SQLCA
- Contents of the SQLDA, for dynamic SQL
- Display of the referenced columns
- Names and contents of the host variables
- Plan name, bind time, and bind date
- Package bind information and package precompile information
- Db2 release, subsystem, and authorization ID
- Related information
Db2 Information Screen
The information screen displays the release of Db2, authorization ID, Db2 subsystem, and attach mode.
Diagnostic Summary
The Diagnostic Summary provides information about the last Db2 call. If the last SQL return code was not 0, Abend-AID provides an explanation of the SQLCODE and, in some of the more common cases, provides corrective action.
In this example, the data types were not compatible.
Scroll down to see the rest of the Db2 Diagnosis Summary.
Because Abend-AID has access to the Db2 catalog and DBRM, the report will show the SQL statement returning the SQLCODE cited at the top of the Db2 Diagnosis Summary. It will also show the SQL statement that defined the cursor CUST_CURSOR (in this case – the OPEN as well as the DECLARE).
Additional Db2 Information Areas
Abend-AID provides a wealth of information to the developer for tracking down the root cause of problems. Try each of these sections on the Db2 Information screen and think about how this could help you solve problems faster!
Db2 Information Area | What it is used for |
---|---|
Host Variables | Examine the state of the Host Variables at the time of the abend for clues about what might have triggered the event. |
Bind Information | Plan and package information. Normally, this information would be found by running SPUFI or 3rd party utilities. Abend-AID retrieves this information from the Db2 catalogs during report generation. |
Precompile Information | Precompile information retrieved from the DBRM. |
Columns Referenced | Columns referenced in the Db2 request. |
Dependencies | Plan or package dependencies. |
SQL Communications Area | The SQLCA control block DSECT is displayed with values from the last SQL statement (FETCH). |
RCT Detail | The Resource Control Table (RCT) screen is only visible when the abend occurred in a CICS transaction. |
Integration With BMC AMI DevX File-AID
Abend-AID is integrated directly with BMC AMI DevX File-AID for Db2, giving developers powerful ways to quickly dig into the data affected by the program. This insight will often help you find problems with invalid or malformed data.
A File-AID Browse request is launched to provide insight into the data being processed at the time of the abend.
As you can see, Abend-AID provides the Db2 developer a powerful and integrated set of tools to quickly analyze and solve most common Db2 related abends. Putting all of this information together in one place makes it easier and quicker to solve problems, increasing velocity and improving quality.
When you are finished checking out the File-AID integration, close the File-AID Browse tab. Next, double-click the Abend-AID tab twice to maximize your Abend-AID view. Lastly, press <F3> five times to return to the Abend-AID Main Menu.
BMC AMI DevX Abend-AID for WebSphere MQ
Abend-AID for MQ provides support for IBM's WebSphere MQSeries. When a Batch or CICS transaction abends or a SNAP dump is invoked (and an MQ call was initiated), Abend-AID will generate a report that provides information about the last MQ call, reason, and return code, as well as other information.
We are going to look at a job called SARCTS553 to learn what Abend-AID can offer the WebSphere developer.
This brings up a list of entries associated with job SARCTS53. Let's take a close look at one of these, 0018135.
The WebSphere MQ Information screen displays the queue manager name for the transaction, authorization ID, MQ release, and the MQ connection type. The four hyperlinked sections provide a significant amount of information pertaining to the last call, the reason and return codes, queues open at the time of the dump, and general MQ environment data.
Abend-AID provides an explanation for any MQ reason code. For many reason codes, it also offers recommended corrective action. From here, press <F3> to return to the 'WebSphere MQ Information' screen.
The last two links provide valuable information to the programmer about the environment in which your program is operating. The environment can impact why an abend occurs.
Try clicking on both of these links to become familiar with how they'll help you resolve abends.
Tasks Opened Queues at Dump Time
Displayed are any queues open at the time that Abend-AID was invoked. Since the cause of the abend was the open failure of the queue CF.R170000.SMPE3.SAMPLE.QUEUE2, there were no other open queues prior to the abend.
For any open queues you would be able to see detail and handle information.
WebSphere MQ Systems Information
This screen contains information about the MQ environment and the MQ control blocks (for use by systems programmers to diagnose the issue).
Wrap-up
This concludes our look at how Abend-AID provides powerful analysis tools and data integration for the Db2 and WebSphere programmer. 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 solutions 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: TestDrive