This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Introduction Fault Analyzer files, setup, and optionsReal-time fault analysis reportUsing the online interfaceFault reanalysis
Interactive reanalysis tourInteractive reanalysis example Batch reanalysis
CICS, DB2, & IMS supportSaving and using program source informationUsing optionsHints & tips
Presenter
Presentation Notes
You can use this course to learn how Fault analyzer will help you research program abnormal terminations. By taking the tutorial you will understand the features of fault analyzer and how you can use it to understand why a program running on a zOS system has abnormally terminated. Take a look at how the course is structured. It is broken down into sections. If you have not already used Fault Analyzer, it is best to take each section in order. If you have already been using it, and want to learn more about a particular topic, you may want to go directly to that section. This section is an introduction to fault analyzer. The next section describes how Fault analyzer may be set up on your system. Take that section to understand the different features that are available when fault analyzer is installed. The "real time fault analysis report” section describes the analysis report that is produced automatically when a program abends. Then take the "Using the on-line interface" section to understand the TSO and CICS interfaces to fault analyzer. A feature called reanalysis is typically the best way to research an abend. There are several sections that discuss reanalysis. First, a tour of reanalysis, then a section that shows an example of an interactive reanalysis including a root-cause analysis of an abend. And there is also a section that describes the batch reanalysis utility. ��If you have CICS, DB2, or IMS applications, you will want to take the sections that describes the additional information that is reported for applications running in those environments. If you are not sure how to make the IBM compilers create and save source information files, you should take the section titled “Saving and using program source information”. It starts with an overview of the different ways IBM compilers can save source information for fault analyzer to use. If you are responsible for modifying your compile processes, then you should review this section in detail. The "Using options" section describes how you can use Fault analyzer options to automate certain functions, such as how to make fault analyzer automatically search your source information files to perform source mapping. Finally, the "Hints and tips” section gives you a few extra pointers and describes some helpful utilities. Now it is time to start with an introduction to IBM's fault analyzer for zOS.
Fault Analyzer is a tool that helps you determine the cause of an application abend
so you can more quickly identify and resolve the problem
Delivers information about an application when it has abended, to help you assess:
What happened, and why?What program?What line of source code?What source variables were involved?
Presenter
Presentation Notes
Fault analyzer is software that helps you understand why a program has abnormally terminated or abended. It helps you to perform root cause analysis, so you can fix the problem. As you are doing your research, fault analyzer helps answer questions such as what happened, with program was running, what program statement ran that cause the abend, and what were the values of variables. And of course it will help you understand more in depth questions, such as "what were the programs on the call chain?", and "what files and databases were being used?".
Source information can be mapped for these IBM compilers:
Fault Analyzer can capture abends in these environments:
Presenter
Presentation Notes
One of the most imnportant features of fault analyzer is that it can map program source information and show you source statements and variables. This is a big time saver for you since it eliminates the need to perform abend analysis the old-fashioned way, where you read a dump and calculate offsets into your program to find your variables and statements. Fault analyzer can perform this source mapping for programs compiled using the IBM COBOL, PLI, and C and C++ compilers, and the IBM assembler. It is accomplished by using a source information file created by a compiler such as a compiler listing or something called a Sysdebug file. Information is reported for programs running under the zOS or OS390 operating systems, in addition to detailed information about the environment where the application was running. Details are reported for language environment, CICS and IMS transaction managers, and Unix System Services. It reports DB2 and IMS data base, and MQ Series queue activity.
Real-Time AnalysisDetailed information is captured automatically when an application abendsAn analysis report is generated
Online InterfaceView an analysis reportPerform a reanalysis
Interactive ReanalysisQuick point-and-shoot navigation of abend info Apply program source information
Batch ReanalysisRun a utility to generate a new analysis reportApply program source information
Easiest way to research an abend
Easiest way to research an abend
Presenter
Presentation Notes
Fault analyzer has several features. When a program abends, fault analyzer automatically captures abend information and generates an analysis report. That is called real time analysis. The on-line interface is available in both TSO and CICS. You can use the on-line interface to manage your abend information, view analysis reports, and to perform a function called reanalysis. ��Interactive reanalysis is the easiest way to research an abend. It provides point-and-shoot navigation of abend information, which makes it much easier and faster than just viewing a report. When you do a reanalysis, you also have the option of mapping program source information. ��Finally, a feature called batch reanalysis is a utility program that lets you produce a fresh copy of an analysis report. ��
1. An application abends. The system intercepts the abend and calls a Fault Analyzer exit. The exit invokes FA.
z/OS
FaultAnalyzer
Application(batch or
online)
Options
FA Invocation Exit
Abend
Real-Time Analysis
2. FA reads options that control whether it will analyze the abend, how to process, and which Fault History file to use
Installation options are specified for the systemOptions can be overridden for a job step or online region
Presenter
Presentation Notes
Here is how it works. First an application abends. This could be, for example, a batch job or a CICS transaction. The system intercepts the abend, and invokes fault analyzer. Notice that fault analyzer does not get involved, meaning that it does not have any system overhead, if the program does not abend. After it is invoked, it reads options customized for your system to determine, among other things, whether it should process the abend. And, of course, for this example assume that it will.
Source info can be a Sysdebug file, a side file, or a compiler listingMultiple data sets can be searched
z/OS
FA Invocation Exit
FaultAnalyzer
Application
Sysdebug files, Compiler Listings, or Side Files
Options
Real-Time Analysis
3. Fault Analyzer examines programs and the environment in the application address space
Application
Abend
Presenter
Presentation Notes
Next, fault analyzer examines the application address space and performs its’ data collection and analysis. Part of that analysis is the mapping of program source data. Fault Analyzer system options can be set up to locate source information files created your compiler, such as compiler listings or sysdebug files. It is important that the installers of Fault Analyzer set up these options correctly so that source mapping can be performed automatically. Source mapping will be described in more detail in later sections.
5. A new Fault Entry is written to a Fault History File. The entry contains:
Info about the applicationThe Analysis ReportA “mini-dump” of the application (this enables reanalysis)
6. The Analysis Report is written to SYSOUT (batch jobs only)
z/OS
FaultAnalyzer
ApplicationFault History File
FaultEntry
Sysdebug files, Compiler Listings, or Side Files
Options
FA Invocation Exit
Abend
Real-Time Analysis
Presenter
Presentation Notes
Next, fault analyzer writes an entry into a fault history file. A fault history file is a file, a repository where all abend information is stored. The fault entry contains a full copy of the real time analysis report, and something called a mini dump. But do not let the word "mini" fool you, because an extensive amount of information is collected. Finally, but only for batch jobs, fault analyzer automatically writes a copy of the real time analysis report to sysout.
The online interface is available in TSO and CICSUse online interface to:
Display a list of abendsView real-time reportsPerform reanalysisDelete fault entries
The CICS interface looks the same as the TSO interface, with minor restrictionsAny abend can be viewed from either interface
FaultAnalyzer
Fault History Files
FaultEntries
Compiler Listings
Sysdebug, Side Files
ISPF
FaultAnalyzer
TSO
CICSCICS
Presenter
Presentation Notes
You can use the on-line interface to view abend information. The same on-line interface is available in both TSO and CICS. ��Use the on-line interface to see a list of abends, view Real Time Reports, perform a reanalysis, or manage fault entries. You can view any abend from either interface. Do not think that you have to use the CICS interface to view a CICS abend. You can view any abend from either interface.
Here is an example of the on-line interface. It looks the same in both TSO and CICS. Towards the top, you see the name of the fault history file that is displayed. Below that, it shows a list of all of the available line commands. You can use a line commands next to any of the abends that you see on the screen. For example, if you type an “I” next to an abend, it will do an interactive reanalysis. ���
abending programactive line of source codeactive variables
Explanation of error messages / codes
File and Database detail
Program details:Variables / storageCompile, link, load, and entry point information
System information:z/OS, CICS, DB2, IMS
Presenter
Presentation Notes
A real time report is produced automatically when an abend occurs. The first section of a real time report is the synopsis, which contains the most critical information, such as the name of the program that abended and, if available, the program statement that abended and the values of variables referenced. Sometimes the synopsis is all you need, if you are familiar with an application. But often you need more information, and the rest of the report contains details about the application and the environment, such as an explanation of the abend code and messages, details about files and databases, such as a copy of the current record of a file, the values of program variables, and system and subsystem information. For example, a picture of what a CICS user saw on their screen just before the abend.
There are many ways to view a real time report. Remember that a copy of the report is written to the fault entry in the fault history file, and it can be viewed from there. Most people use the TSO or CICS on-line interface. There is also a Web browser interface to fault analyzer, which can be implemented to allow people without access to either TSO or CICS to view real-time reports. For batch jobs, a copy of the real time report is written to sysout, and you can view it directly from there.
SynopsisAny program in the call chainProgram variables and their valuesFile and database detailCICS, DB2, and IMS infoProgram source listingStorage areas
The easiest way to research an abendA function of the online interfaceQuickly navigate to:
Point and Shoot navigation
Point and Shoot navigation
Presenter
Presentation Notes
The real time report provides detailed information about your abend. However, there is an easier way to research a problem: interactive reanalysis. This is feature of fault analyzer's on-line interface, so you can do a reanalysis from either TSO or CICS. You can see all the same information that is available in the real time report, and even a little more. Your research is much easier because of point and shoot navigation, which lets you very quickly get to the information that you are looking for. Point and shoot navigation works by putting your cursor on any of the yellow highlighted fields, and hitting enter.
You can apply source information, even if source info was not available when the program abended
A source info file can becreated after the abend
You do NOT have to reproduce the abend
FaultAnalyzer
Online Interface
Fault History File
FaultEntry
Sysdebug Files, Side Files, or Compiler Listings
Options
CompilerProgram Source
Optional
Onlineinterface
Presenter
Presentation Notes
When you do an interactive reanalysis, you can enable source mapping by pointing to a source information file. This capability of interactive reanalysis is very important, because if a source information file was not available when an abend occurred, you can point to the right file when you do your interactive reanalysis. That means that you can apply source information to your abend after the fact, without having to re-create the abend. Even if you do not have a source information file, sometimes you can use this trick... recompile your program after the abend, to create, for example a new compiler listing. Then you can use this new listing when you perform your interactive reanalysis. It is a great way to expedite your research, but just make sure to use the exact same source code and compiler when you recompile.
Apply source information, even if the source info was not available during Real-Time analysis
Fault Analyzer generates JCL
JCL can be edited, submitted, and saved
Fault History File
FaultEntry
ISPF
CompilerProgram Source
Optional
Use the online interface to generate and submit JCL for a batch reanalysis job
Use the online interface to generate and submit JCL for a batch reanalysis job
Fault Analyzer Batch
Reanalysis JobAnalysisReport
(SYSOUT)
Sysdebug Files, Side Files, or Compiler Listings
Onlineinterface
Presenter
Presentation Notes
The last feature that will be covered in this introduction is batch reanalysis. This is not used as often as interactive reanalysis, but a lot of people find it very helpful. It is simply a batch utility program that you can run to get a fresh copy of a fault analysis report. You might use it if source information was not available when the abend occurred, and the original real time report was produced. You just specify the names of your source information files in your options, and it will produce a new report with source mapping. Probably the easiest way use it is to make it automatically generate JCL from the TSO on-line interface. JCL is automatically generated, and you just submit the JCL to run the utility.
IBM PD Tools (including Fault Analyzer) information is on the Web
Select Fault Analyzer from the list.
Select Fault Analyzer from the list.
Presenter
Presentation Notes
You can get more information about fault analyzer, and all of the IBM PD tools, on the Web. Direct your browser to this URL: www.ibm.com/software/awdtools/deployment . To get to the fault analyzer page, select fault analyzer from the “Select a product” pull-down.
You can view or download fault analyzer manuals from the Web site. From the fault analyzer page, there is a link to the fault analyzer library. Just click on the word library on the left side of the screen to get there.
You can get Fault Analyzer manuals from the IBM Web site
Click to viewClick to viewRight-click to downloadRight-click to download
Presenter
Presentation Notes
From the library page, you can view a manual by clicking a link either in the PDF or book manager column, or you can download a manual by right clicking the link in the PDF column.