You are on page 1of 6

Advanced debugging of composite applications on System z

IBM Debug Tool for z/OS, V13.1


IBM® Debug Tool for z/OS®,
V13.1 is an interactive source-level
debugging tool for compiled
applications. It is a program testing
and analysis aid that helps you
examine, monitor, and control the
execution of applications written in
C, C++, COBOL, PL/I or
assembler on a z/OS system.

It provides debugging capability for


applications running in a variety of
environments, such as batch,
TSO, IBM CICS®, IBM IMS™, IBM
DB2®, IBM DB2 stored
procedures and IBM z/OS UNIX®
System Services.
Figure 1: Debug Tool environment
Debug Tool also includes features
In an increasingly complex and
to help you identify old OS/VS and
Highlights competitive environment with
VS COBOL II applications and to
challenging business demands,
upgrade the source code
application developers are faced
• Provides a single debugging automatically to IBM Enterprise
with constant pressure to deliver
tool for batch, TSO, CICS, COBOL. It also supplies tools to
function-rich applications quickly.
DB2,DB2 stored procedures help you determine how
and IMS applications written in thoroughly your code has been
Regardless of whether it was
COBOL,PL/I, C/C++ and tested.
designed to perform routine or
assembler
critical tasks, the underlying code
Debug Tool for z/OS, V13.1
• Offers more productivity that drives your applications is
replaces all prior versions of both
enhancements when used with highly complex. Application
IBM Debug Tool for z/OS and IBM
Rational Developer for System developers have to work quickly to
Debug Tool Utilities and Advanced
z (available separately) meet demand, with minimal errors
Functions for z/OS. This single
— even adapting code on the fly
• Includes tools to quickly as your business needs evolve.
Debug Tool for z/OS, V13.1
identify and convert OS/VS product includes all of the function
COBOL code to ANSI 85 in the previous separate products
To effectively build and service
standard as well as the new V13.1 function.
applications, you need robust,
Delivering this single
• Supplies tools to help you easy-to-use tools to compile, test
comprehensive product provides
determine how thoroughly and debug your applications.
significantly more function to
your code has been tested existing Debug Tool for z/OS
• Workstation GUI interface customers, and will help simplify
ordering and installation.
Debug Tool is tightly integrated • The Log window records and window.
with IBM Rational® Developer for displays your interactions with In the automonitor section of the
System z® and other tools in the Debug Tool and can show Monitor window, you can display
IBM portfolio of problem program output. The information the value of a variable in the
determination tools, so that you you see in this window is variable’s declared data type and
can develop, test and debug included in the log file. displaying the user register names
traditional and SOA applications • The Memory window (swappable in assembler AUTOMONITOR
from the same user interface. with the Log window) helps you output, when possible.
display and scroll through
Data at your fingertips sections of memory. You can Control debugging
update memory by typing over environment
Debug Tool provides an existing data with new data. The
interactive, full-screen, IBM 3270 Memory window also keeps track With Debug Tool, you can choose
system-based terminal interface of addresses for easier how you view and manage the
with four windows that enable navigation. process of debugging your
single-step debugging, dynamic applications. Using the full-screen
patching and breakpoints: Debug Tool gives you great interface, you can interactively
flexibility to choose how to display debug almost any application as it
• The Monitor window displays the monitored variables and lets you runs — including batch
status of items you select, update large or small variables applications.
variables and registers. You can directly in the monitor window.
view, monitor and alter You can start Debug Tool when an
application variables or storage For COBOL character variables application starts or during an
in real-time. displayed using the automonitor abend. Alternatively, you can write
• The Source window displays the command, Debug Tool displays applications so that they start the
program code, highlighting the values in character format tool automatically — at specified
statement being run. In the prefix regardless of whether the string times — interrupting the running of
area of this window, you can contains unprintable characters. the application.
enter commands to set, display You can change these values by
and remove breakpoints. typing over them in the Monitor

Figure 2: Rational Developer for System z works with Debug Tool to help mainframe developers be more productive.

2
Using the setup utility, you can remove breakpoints as you debug services. Users can display the
create a setup file that contains the the application. This means that information, even if it is not being
program information you need — you don’t have to know where you referenced by the application
including file allocations, runtime want to set a breakpoint before program being debugged.
options, program parameters and you start debugging.
application name — to run your Debug Tool now provides support
application and start Debug Tool. In CICS, Debug Tool supports for invoking the z/OS XML parser
“pattern matching breakpoints” that to parse complete XML 1.0 or 1.1
Setup files can save you time use the program or compile unit documents in memory. If the
when you are debugging a names specified in CADP or document is syntactically valid, the
program that you have to restart DTCN profiles to start Debug Tool XML is formatted and shown in the
multiple times. You can create and provides commands to enable Debug Tool log. Otherwise,
several setup files for each and disable the breakpoints. diagnostic information is provided
program. Each setup file can store to help identify the syntax error.
information about starting and You can also debug applications
running your program under written in a mix of COBOL, C, C++ Enhanced debugging
different circumstances. or PL/I languages without leaving capabilities
the tool. You can also include
IBM Language Environment® user assembler programs in this mix Debug Tool provides a rich set of
exits can be linked with the and, using the disassembly view, commands, tools and utilities to
application or with a private copy you can debug programs compiled help you to debug your programs.
of a Common Execution with the NOTEST compiler option When used with the setup utility in
Environment (CEE) runtime load or applications that include other Debug Tool, these can help to:
module. languages. Prepare your high-level language
and programs for debugging by
Review source while you For each programming language converting, compiling (or
debug you can use a set of interpreted assembling) and linking your
commands to specify actions to be COBOL, PL/I, C/C++ and
Debug Tool enables you to focus taken. These commands are assembler source code.
on a particular problem area by subsets of the languages — so -Conduct analysis on your test
checking your application for they’re easy to learn, and you can cases to determine how thoroughly
errors one line at a time. By using modify the flow of your application they validate your programs.
single-step debugging — and while you are debugging it. You
setting dynamic breakpoints — can use the commands to In complex applications, it’s easy
you can monitor, interrupt and dynamically patch (or alter) the to forget how you reached a
continue the flow of the application value of variables and structures particular point in your program.
to identify errors easily. and to control the flow of an Debug Tool commands enable you
application. to replay statements that have
A basic breakpoint indicates a already run. If you compile your
stopping point in your program. SOA development and program with the IBM COBOL for
For example, you can use a debugging OS/390® and VM compiler, or the
breakpoint to stop on a particular Enterprise COBOL for z/OS
line of code. Breakpoints can also Debug Tool supports debugging of compiler, you can review the
contain instructions, calculations monolithic, composite, and SOA values of variables and replay the
and application changes. For applications. Customers creating statements while debugging.
example, you can set a breakpoint new Web services — whether
to have Debug Tool display the newly written or refactored using For programs compiled with the
contents of a variable when the existing application assets that use COBOL for OS/390 and VM
debugging process reaches a Rational Developer for System z compiler, the Enterprise COBOL
particular line of code. — can immediately debug them for z/OS compiler, or the
using the Debug Tool plug-in Enterprise PL/I for z/OS compiler,
You can also use a breakpoint to provided. you can automatically monitor the
patch the flow of the program values of variables referenced at
dynamically. You can set DESCRIBE CHANNEL and LIST the current statement. When the
breakpoints in an application to CONTAINER commands can automonitor function is active, any
monitor variables for changes, and display CICS channels and variables that are referenced by
watch for specified exceptions and containers, including containers the current statement are
conditions while an application that hold state information for Web automatically selected for
runs. You can set, change and
3
monitoring. You can view these
variables in the monitor window.

Move to Enterprise COBOL


to reuse and extend
existing code
Previously, to create faster, more
efficient applications, you had to
sacrifice debugging support. With
Debug Tool you can debug
Enterprise COBOL for z/OS
applications that have been
compiled with standard or full-
optimization compiler options.

You can also analyze your load


modules to help you identify
candidate OS/VS COBOL
programs for conversion and then
to convert these OS/VS COBOL Figure 3: Formatted XML structure using List Storage command
applications to Enterprise COBOL You can also use the Interactive IBM Rational Developer for
for z/OS. You can then compile System Productivity Facility (ISPF) System z works with Debug Tool,
and debug these applications to panels in Debug Tool to invoke to give your developers a fully
extend the life of your existing File Manager Base, DB2 or IMS
code. functions and a user exit enables integrated development, test and
you to specify a TEST run-time debugging environment for all
Debug Tool software also provides option string in the DB2, IMS or applications running on z/OS,
coverage tools that enable you to batch environments. whether traditional, SOA or Web-
conduct analysis on your test based.
cases and determine how
thoroughly they exercise your Debug in many
A CICS utility transaction (CADP
programs. environments or DTCN) enables you to control
debugging in the CICS
Combine with other IBM Debug Tool can help you environment. For example, you
debug an application while it runs
development tools to can debug based on a specific
in a host environment, such as a program or transaction name,
optimize applications batch application, TSO, ISPF, while other CICS-specific
CICS, IMS or DB2 (including IBM capabilities enable you to specify
Debug Tool shares a number of DB2 stored procedures)
side files with IBM Fault Analyzer, the span of a debug session or
environments. Debug Tool can view — or edit CICS storage and
making it easier for you to test and help you debug almost any
manage abends in new and diagnose storage violations.
application and almost any host
existing applications. For example, language, including COBOL, PL/I,
the IDILANGX file produced by Display and alteration of 64-bit
C/C++ and Assembler applications general purpose registers in
Fault Analyzer can be used by running on z/OS systems.
Debug Tool to debug assembler assembler expressions is provided
programs, and you can create a on hardware that supports 64-bit
With Debug Tool, you can compile addressing. Debug Tool correctly
readable listing from a Fault and link your COBOL, PL/I, C and
Analyzer side file or a SYSDEBUG displays data items according to
C++ programs, and assemble and type, including three floating-point
file generated by the COBOL link Assembler programs — as
compiler. data types: binary (IEEE), decimal
well as pre-process and compile and hexadecimal.
your CICS and DB2 programs.

4
New in V13.1 is started from the web and is executable code, and produce a
associated with a generic ID. summary of the targeted lines
This enables Debug Tool to with selectable HTML links.
• A new method for gathering debug these transactions that • Adds IMS information to start
code coverage is added for the use a generic ID. The user ID and stop messages generated by
generation, viewing, and from the cross-reference table the EQAOPTS
reporting of code coverage is used to find the user's Debug STARTSTOPMSG command.
using the Debug Tool Tool user exit data set • Adds EQAOPTS
mainframe interface (MFI) as (userid.DBGTOOL.EQAUOPT STARTSTOPMSGDSN
the engine. This support is S), which specifies the TEST command and a new Debug
provided for applications runtime parameters and the Tool Utilities option 'Non-CICS
written in Enterprise COBOL display device address. A new Debug Session Start and Stop
and Enterprise PLI that are option is added to the Debug Message Viewer' to collect and
compiled with the TEST Tool Utilities ISPF panel, "C view Debug Tool debugger
compile option and its IMS Transaction and User ID session start and stop
suboption SEPARATE. This is Cross Reference Table" to information.
enabled via the new EQAOPTS allow each user to update the
CCPROGSELECTDSN, • Enhanced delay debug mode
new cross reference table.
with a new EQAOPTS
CCOUTPUTDSN and • Support is added for tracing DLAYDBGCND command to
CCOUTPUTDSNALLOC load modules loaded by an
commands. control CONDITION trapping.
application. New commands In addition, a new EQAOPTS
• Debug Tool is enhanced to TRACE LOAD and LIST DLAYDBGXRF command is
provide the automatic start of TRACE LOAD are added added so that delay debug mode
IMS message processing for Debug Tool's MFI mode. can use the 'IMS Transaction
program (MPP) regions and This set of commands allows and User ID Cross Reference
dynamic routing the user to get a trace of load Table'. Further, NOTEST is
of transactions. This allows a modules loaded by the now handled in delay debug
developer to dynamically start application. Start the trace by mode.
an MPP region, route a issuing TRACE LOAD START.
transaction to that MPP region • A confirmation message is
Use LIST TRACE LOAD to
and at the end of the added to Debug Tool Utilities
display the trace. The trace
transaction shutdown the MPP option 6 'Debug Tool User Exit
includes load modules known to
region created for the developer Data Set' to indicate that the
Debug Tool at the time the
thus reducing system resources. updates have been saved into
TRACE LOAD
the EQAUOPTS data set.
• To help with the ease of use of START command is entered
the MFI mode of Debug Tool and all that are loaded while • The ON and AT
for some users, an option is the trace is active. End the trace OCCURRENCE commands are
added that enables breakpoints, by issuing TRACE LOAD END. enhanced for Enterprise PL/I to
the current line, and the line Note that when the trace is support qualifying data.
with found text to be identified ended, all trace information is • Commands are added, LIST
by a character indicator. This deleted. LDD and CLEAR LDD,
feature is enabled via a new • Support is added for that display and remove LDD
EQAOPTS ALTDISP terminating an idle Debug Tool commands known to Debug
command. session that uses the Terminal Tool, and LIST CC and CC
• Supports Enterprise COBOL Interface Manager. Debug Tool (START and STOP) that tell the
for z/OS, V5.1; Enterprise PL/I supports a time-out option (via Debug Tool debugger to gather
for z/OS, V4.4; CICS TS V5.1; the new and display code coverage data.
DB2 V11; IMS V13; z/OS, EQAOPTS SESSIONTIMEOU • Other customer-requested
V2.1; and C/C++ V2.1. T command), which allows the capabilities and usability
• Debug Tool now supports JCL system programmer to establish improvements to enhance the
for Batch Debugging in the a maximum wait time for debug debugging session.
DTSP plug-in. This facility is sessions using a dedicated
used to instrument JCL to terminal or the Terminal
initiate a debug session from Interface Manager. If the
the DTSP plug-in. debug session exceeds the
• Support is added for an IMS specified time limit without any
transaction that is associated user interaction, the session will
with a generic ID. A new be terminated with either a
feature is added to the QUIT or QUIT DEBUG.
consolidated • Enhanced Debug Tool
Language Environment user Coverage Utility 'Create HTML
exit (EQAD3CXT) to search a Targeted Coverage Report'
new cross-reference table for allows the user to select from a
the user ID of a user who wants list of COBOL Program-IDs,
to debug a IMS transaction that ignore changes to non-

5
IBM Debug Tool for z/OS, V13.1, at a glance
Hardware requirements
• Any hardware configuration capable of running IBM z/OS
Software requirements
• IBM z/OS, V1.12 (5694-A01) or later
• Depending on the functions used in the product, other related
products may be required. See the product Web site, listed below, © Copyright IBM Corporation 2013
for more detailed software requirements
IBM Corporation
Part of a leading-edge For more information 555 Bailey Ave
family of z/OS tools San Jose, CA 95141, U.S.A.
To learn more about IBM problem
Debug Tool for z/OS is part of the determination tools, contact your Produced in the U.S.A.
IBM Problem Determination family IBM representative or October 2013
of products. These include IBM IBM Business Partner, or visit the All Rights Reserved
Application Performance Analyzer following Web sites:
for z/OS, IBM Debug Tool for IBM, the IBM logo, ibm.com, and
z/OS, IBM Fault Analyzer for z/OS, IBM Problem Determination Tools WebSphere are trademarks of IBM
IBM File Manager for z/OS, and family: Corporation, registered in many
IBM Workload Simulator for ibm.com/software/awdtools/ jurisdictions worldwide. A current
OS/390 and z/OS. deployment/ list of IBM trademarks is available
on the Web at “Copyright and
Designed to help you maximize IBM Application Performance trademark information” at
your investment in IBM System z Analyzer for z/OS: ibm.com/legal/copytrade.shtml .
products, these products are a ibm.com/software/awdtools/apa/
robust suite of integrated Java and all Java-based
development tools that enable you IBM Debug Tool for z/OS: trademarks and logos are
to improve IT operational efficiency ibm.com/software/awdtools/ trademarks of Sun Microsystems,
and transform applications to debug tool/ Inc, in the United States, other
achieve greater business flexibility. countries, or both.
IBM Fault Analyzer for z/OS:
The IBM Problem Determination ibm.com/software/awdtools/ Microsoft and Windows are
tools help application developers faultanalyzer trademarks of Microsoft
to improve application delivery Corporation, in the United States,
throughout the application life IBM File Manager for z/OS: other countries, or both.
cycle. You can use these tools to ibm.com/software/awdtools/
help increase productivity and IT filemanager UNIX is a registered trademark of
effectiveness across source code The Open Group in the United
debugging, application ABEND IBM Workload Simulator for z/OS States and other countries
analysis, data management and and OS/390:
application performance analysis. ibm.com/software/awdtools/ Other company, product and
workloadsimulator service names may be trademarks
The IBM Problem Determination or service marks of others.
tools do much more than support
traditional applications. They References in this publication to
include capabilities that enable you IBM products or services do not
to build SOA applications. They imply that IBM intends to make
are tightly integrated with other them available in all countries in
tools in the IBM problem which IBM operates.
determination tools portfolio, as
well as other tool sets. The tools The IBM home page on the
also continue to support and make internet can be found at ibm.com
the most of the latest subsystem
levels. These capabilities help
make IBM problem determination
tools an excellent choice for your
business.

You might also like