IBM Fault Analyzer For z/OS: Tutorial
IBM Fault Analyzer For z/OS: Tutorial
Tutorial
This is the tutorial for IBM’s Fault Analyzer for z/OS®, one of the IBM zSeries® problem
determination tools.
FAv12s01Introduction.ppt Page 1 of 26
Fault Analyzer tutorial
� Introduction
� Fault Analyzer overview
This course will show you the features of Fault Analyzer and how you can use it to
understand why a program running on a z/OS system has abnormally terminated.
This course 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 can go directly to that section.
This section is an introduction to fault analyzer. The next section describes files that it
uses to store abend information, and files it reads to get program source information. The
"real time abend processing” section describes what happens automatically when an
abend occurs, and introduces the analysis report that is produced. Then take the "Using
the on-line interface" section to understand the TSO and CICS® interfaces to fault
analyzer.
FAv12s01Introduction.ppt Page 2 of 26
Fault Analyzer tutorial
� Interactive reanalysis
� Interactive reanalysis tour
� How to use the File Manager interface
The next section, "viewing a real-time fault analysis report" shows an example of how
you can view a report using the on-line interface, and goes into detail about the
information available in the report.
A feature called "reanalysis" is typically the best and fastest way to research an abend.
Take the "interactive reanalysis" section to learn about this feature and to see an example
of how it can be used to perform a root-cause analysis of an abend.
The next section describes how Fault Analyzer can read special side files and compiler
listings to enable source mapping to show program statements and variables. There are
topics that cover how you can apply these files, and how to automate the search for them.
FAv12s01Introduction.ppt Page 3 of 26
Fault Analyzer tutorial
If you work with CICS, DB2, or IMS applications, take the sections that describe the
additional information that is reported for applications running in those environments.
The "Working with fault entries" section describes how you can move or copy fault entries
to your own fault history file.
FAv12s01Introduction.ppt Page 4 of 26
Fault Analyzer tutorial
� Batch reanalysis
� Example of batch reanalysis
The "batch reanalysis section" describes how to perform a batch reanalysis to reproduce
an analysis report. There is a section that describes how to access real-time reports from
a web browser. And finally, take the "Fault Analyzer tips” section for a few extra pointers.
FAv12s01Introduction.ppt Page 5 of 26
What is Fault Analyzer ?
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, what program was running, what program statement ran that cause the
abend, and what were the values of variables. And it will help you understand more in
depth questions, such as "what were the programs on the call chain?", and "what
processing was occurring against files and databases?".
FAv12s01Introduction.ppt Page 6 of 26
Environments and languages supported
Fault Analyzer can capture Side files and compiler listings can
abends in these environments: be mapped for these IBM compilers:
� z/OS � COBOL
� LE (Language Environment) � PL/I
� CICS � Assembler
� IMS � C/C++
� DB2
� MQSeries®
� UNIX System Services
Fault Analyzer can map program source information to show source statements and
variables. This is a big time saver 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. It can perform source mapping for programs compiled
using the IBM COBOL, PLI, and C and C++ compilers, and the IBM assembler. It uses a
side file, such as something called a Sysdebug file, or a compiler listing created by a
compiler.
Fault Analyzer works with programs running under the z/OS operating system, and
provides detailed information about the environment where an application runs. 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.
FAv12s01Introduction.ppt Page 7 of 26
What features does Fault Analyzer have?
� Real-Time Analysis
� Detailed information is captured automatically when an application abends
� An analysis report is generated
Easiest
Easiestway
waytoto
� Interactive Reanalysis research
researchan
anabend
abend
� Quick point-and-shoot navigation of abend information
� Apply files for program source mapping
� Batch Reanalysis
� Run a utility to generate a new analysis report
� Apply files for program source mapping
� Online Interface
� Use the online interface to:
� View a real-time analysis report
� View a fault using interactive reanalysis
� Generate JCL to perform batch reanalysis
IBM Fault Analyzer for z/OS - V12 Tutorial
8 © 2012 IBM Corporation
Fault analyzer has several features. When a program abends, it automatically captures
information and generates an analysis report. That is called real time analysis. The on-line
interface is available in 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.
A feature called batch reanalysis is a utility that lets you produce a fresh copy of an
analysis report.
FAv12s01Introduction.ppt Page 8 of 26
Real-Time analysis … how it works
Application
(batch or
Abend online)
2. FA reads options that
control whether it will
analyze the abend, how to FA Invocation Exit
process, and which Fault
History file to use
Options Fault
� Installation options are
specified for the system Analyzer
� Options can be overridden for a
job step or online region
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.
FAv12s01Introduction.ppt Page 9 of 26
Real-Time analysis … how it works
Real-Time Analysis
3. Fault Analyzer examines
programs and the
environment in the z/OS
application address space
Application
Abend
4. Files for source mapping
are read
FA Invocation Exit
� It searches for matching
Sysdebug files, side files, and
compiler listings
Options Fault
� Multiple libraries can be
searched Analyzer
Sysdebug files, compiler
listings, and side files
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 customized so that it automatically locates side files or compiler listings
created your compiler. Source mapping is described in more detail in later sections.
FAv12s01Introduction.ppt Page 10 of 26
Real-Time analysis … how it works
Analysis
Sysdebug files, Compiler Report
Listings, or Side Files
Next, fault analyzer writes an entry into a fault history file. A fault history file is a repository
where 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 extensive information is collected.
Finally, but only for batch jobs, fault analyzer automatically writes a copy of the real time
analysis report to sysout.
FAv12s01Introduction.ppt Page 11 of 26
The online 3270 interface
Use the 3270 on-line interface to see a list of abends, view real time reports, perform a
reanalysis, and manage fault entries. The same on-line interface is available in TSO and
CICS. You can view any abend from either interface.
FAv12s01Introduction.ppt Page 12 of 26
The online 3270 interface display
Specify
Specifythe
thehistory
historyfile
file Available
Availableline
line
commands
commandsare areshown
shown
AAlist
listof
ofabends
abendsininaa
fault Fault
Faultentries
fault historyfile
history file entries
Batch
Batchand
andonline
onlineabends
abends
may
may be in thesame
be in the samelist
list
Here is an example of the on-line interface. It looks the same in both TSO and CICS. Near
the top, you see the name of the fault history file that is displayed. Below that is a list of all
of the available line commands, and below that is the list of fault entries in the file. You can
enter a line command next to any of the entries in the list. For example, typing “I” next to
one will start an interactive reanalysis.
FAv12s01Introduction.ppt Page 13 of 26
The GUI Eclipse plug-in for Fault Analyzer
� Use it to:
Fault
� Display a list of abends Entries
� View real-time reports
Compiler
� Apply program source Listings
� Delete fault entries RDz on the
workstation
z/OS RDz
� The plug-in and CICS server
Explorer are both free, Sysdebug,
and can be downloaded Side Files
from the IBM web site
FAv12s01Introduction.ppt Page 14 of 26
The Fault Analyzer Eclipse plug-in
Specify
Specifythe
thehistory
historyfile
file
Fault
Faultentries
entries
Here is an example of the graphical user interface. It has several views that you can see
at the same time, and you can resize and reposition the views on the screen. In this
example, the view in the upper left is where the name and location of a history file was
specified. The view at the bottom shows a list of faults in the selected history file. One of
the faults was selected by clicking it, and the view at the top is displaying the selected real-
time analysis report.
FAv12s01Introduction.ppt Page 15 of 26
The real-time analysis report
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, the values of program
variables, subsystem information, and much more.
FAv12s01Introduction.ppt Page 16 of 26
View a real-time analysis report
There are several ways to view a real time report. A copy of the report is stored in the fault
entry in a fault history file, and it can be viewed from the TSO or CICS 3270 on-line
interface. Or it can be viewed using the Fault Analyzer Eclipse plug-in graphical user
interface. Or optionally, the real-time report can be viewed from a web browser. For batch
jobs, a copy of the real time report is written to sysout, and you can view it with a sysout
viewer such as SDSF.
FAv12s01Introduction.ppt Page 17 of 26
Interactive reanalysis
� The easiest
way to
research an
abend
� A function of
the 3270
online
interface Point
Pointand
andShoot
Shoot
� Quickly navigation
navigation
navigate to:
� Synopsis
� Any program in the call chain
� Program variables and their values
� File and database detail
� CICS, DB2, and IMS information
� Program source listings
� Storage areas
IBM Fault Analyzer for z/OS - V12 Tutorial
18 © 2012 IBM Corporation
The real time report provides detailed information about an abend. However, there is an
easier way to research a problem: interactive reanalysis. This is a feature of the 3270 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 pressing enter.
FAv12s01Introduction.ppt Page 18 of 26
Interactive reanalysis
Compiler
Program
Source
When you do an interactive reanalysis, you can enable source mapping by specifying a
side file or compiler listing. Even if these files were not available when an abend occurred,
you can name the right file at this point, without having to re-create the abend. Even if you
do not have a side file or listing, sometimes you can recompile your program after the
abend, to create, for example a new compiler listing. Then the new listing can be used for
source mapping during interactive reanalysis. That is a good way to expedite your
research, but just be sure to use the exact same source code and compiler when you
recompile.
FAv12s01Introduction.ppt Page 19 of 26
Batch reanalysis
Use
Usethe
theonline
onlineinterface
interfacetoto
� A batch utility to generate
generate a new analysis generate and submitJCL
and submit JCLforfor
aabatch reanalysis job
batch reanalysis job
report Fault
History File
Online
� Apply side files or interface
listings, even if they ISPF Fault
were not available when
Entry
the program abended
� Fault Analyzer Fault Analyzer
generates JCL Batch
Reanalysis Job
� JCL can be edited, Analysis
submitted, and saved Sysdebug Files, Report
Side Files,
or Compiler Listings (SYSOUT)
Optional
Compile
r Program Source
The last feature covered in this introduction is batch reanalysis. It is not used as often as
interactive reanalysis, but it can be useful. It is a batch utility program that you can run to
produce a fresh copy of a fault analysis report. You might use it if a side file or listing was
not available when the abend occurred and the original real time report was produced.
You specify the names of these files in your options, and the utility produces a new
analysis report with source mapping. The TSO on-line interface will automatically generate
JCL for it. Then just submit the JCL to run the utility.
FAv12s01Introduction.ppt Page 20 of 26
IBM PD tools (including Fault Analyzer)
information and manuals are on the web
http://www.ibm.com/software/awdtools/deployment/
Select
SelectFault
FaultAnalyzer
Analyzer
from
from thelist
the list
Manuals for the IBM problem determination tools, including Fault Analyzer, are available
on the IBM web site. Direct a browser to this URL
(www.ibm.com/software/awdtools/deployment) and click the link to Fault Analyzer.
FAv12s01Introduction.ppt Page 21 of 26
You can get the Fault Analyzer manuals
from the IBM website
http://www.ibm.com/software/awdtools/faultanalyzer
Click
ClickLibrary
Library
FAv12s01Introduction.ppt Page 22 of 26
You can get the Fault Analyzer manuals
from the IBM website
http://www.ibm.com/software/awdtools/faultanalyzer
Right-click
Right-clickto
todownload
download
User’s
User’sGuide
Guideand
andReference
Reference
FAv12s01Introduction.ppt Page 23 of 26
Fault Analyzer User’s Guide and Reference
Then the User's Guide is available in case you have any questions.
That is the end of this section, an introduction to IBM Fault Analyzer for z/OS.
FAv12s01Introduction.ppt Page 24 of 26
Feedback
You can help improve the quality of IBM Education Assistant content by providing
feedback.
FAv12s01Introduction.ppt Page 25 of 26
Trademarks, copyrights, and disclaimers
IBM, the IBM logo, ibm.com, CICS, CICS Explorer, DB2, IMS, MQSeries, Rational, System z, z/OS, and zSeries are trademarks or registered trademarks
of International Business Machines Corp., registered in many jurisdictions worldwide. Other product and service names might be trademarks of IBM or
other companies. A current list of other IBM trademarks is available on the web at "Copyright and trademark information" at
http://www.ibm.com/legal/copytrade.shtml
UNIX is a registered trademark of The Open Group in the United States and other countries.
Other company, product, or service names may be trademarks or service marks of others.
THE INFORMATION CONTAINED IN THIS PRESENTATION IS PROVIDED FOR INFORMATIONAL PURPOSES ONLY. WHILE EFFORTS WERE
MADE TO VERIFY THE COMPLETENESS AND ACCURACY OF THE INFORMATION CONTAINED IN THIS PRESENTATION, IT IS PROVIDED "AS
IS" WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED. IN ADDITION, THIS INFORMATION IS BASED ON IBM’S CURRENT PRODUCT
PLANS AND STRATEGY, WHICH ARE SUBJECT TO CHANGE BY IBM WITHOUT NOTICE. IBM SHALL NOT BE RESPONSIBLE FOR ANY
DAMAGES ARISING OUT OF THE USE OF, OR OTHERWISE RELATED TO, THIS PRESENTATION OR ANY OTHER DOCUMENTATION. NOTHING
CONTAINED IN THIS PRESENTATION IS INTENDED TO, NOR SHALL HAVE THE EFFECT OF, CREATING ANY WARRANTIES OR
REPRESENTATIONS FROM IBM (OR ITS SUPPLIERS OR LICENSORS), OR ALTERING THE TERMS AND CONDITIONS OF ANY AGREEMENT OR
LICENSE GOVERNING THE USE OF IBM PRODUCTS OR SOFTWARE.
FAv12s01Introduction.ppt Page 26 of 26