Debug Tool V10.1 Customization Guide
Debug Tool V10.1 Customization Guide
Customization Guide
Version 10.1
GC14-7257-00
Debug Tool for z/OS
Customization Guide
Version 10.1
GC14-7257-00
Note!
Before using this information and the product it supports, be sure to read the
general information under “Notices” on page 115.
| This edition applies to Debug Tool for z/OS, Version 10.1 (Program Number 5655-V50), which supports the
| following compilers:
v AD/Cycle® C/370™ Version 1 Release 2 (Program Number 5688-216)
v C/C++ for MVS/ESA Version 3 (Program Number 5655-121)
v C/C++ feature of OS/390 (Program Number 5647-A01)
v C/C++ feature of z/OS (Program Number 5694-A01)
v OS/VS COBOL, Version 1 Release 2.4 (5740-CB1) - with limitations
v VS COBOL II Version 1 Release 3 and Version 1 Release 4 (Program Numbers 5668-958, 5688-023) - with
limitations
v COBOL/370 Version 1 Release 1 (Program Number 5688-197
v COBOL for MVS & VM Version 1 Release 2 (Program Number 5688-197)
v COBOL for OS/390 & VM Version 2 (Program Number 5648-A25)
v Enterprise COBOL for z/OS and OS/390 Version 3 (Program Number 5655-G53)
| v Enterprise COBOL for z/OS Version 4.2 and earlier (Program Number 5655-S71)
v High Level Assembler for MVS & VM & VSE Version 1 Release 4, Version 1 Release 5, and Version 1 Release 6
(Program Number 5696-234)
v OS PL/I Version 2 Release 1, Version 2 Release 2, Version 2 Release 3 (Program Numbers 5668-909, 5668-910) -
with limitations
v PL/I for MVS & VM Version 1 Release 1 (Program Number 5688-235)
v VisualAge PL/I for OS/390 Version 2 Release 2 (Program Number 5655-B22)
| v Enterprise PL/I for z/OS and OS/390 Version 3.9 or earlier (Program Number 5655-H31)
This edition also applies to all subsequent releases and modifications until otherwise indicated in new editions or
technical newsletters.
You can order publications online at www.ibm.com/shop/publications/order, or order by phone or fax. IBM
Software Manufacturing Solutions takes publication orders between 8:30 a.m. and 7:00 p.m. Eastern Standard Time
(EST). The phone number is (800) 879-2755. The fax number is (800) 445-9269.
You can find out more about Debug Tool by visiting the IBM Web site for Debug Tool at: http://www.ibm.com/
software/awdtools/debugtool
© Copyright International Business Machines Corporation 1992, 2009.
US Government Users Restricted Rights – Use, duplication or disclosure restricted by GSA ADP Schedule Contract
with IBM Corp.
Contents
About this document . . . . . . . . vii Defining Debug Tool to VTAM . . . . . . . 21
Who might use this document . . . . . . . . vii Defining the terminals used by Debug Tool. . . 22
Accessing z/OS licensed documents on the Internet vii Configuring the TN3270 Telnet Server . . . . 22
Using LookAt to look up message explanations . . viii Verifying the customization of the facility to debug
How this document is organized . . . . . . . viii full-screen mode using a dedicated terminal . . . 24
Terms used in this document . . . . . . . . ix Debug Tool Terminal Interface Manager . . . . . 25
How to read syntax diagrams . . . . . . . . xi Example: a debugging session using the Debug
Symbols. . . . . . . . . . . . . . . xi Tool Terminal Interface Manager . . . . . . 25
Syntax items . . . . . . . . . . . . . xi | Enabling full-screen mode using a dedicated
Syntax examples . . . . . . . . . . . . xi | terminal with Debug Tool Terminal Interface
How to send your comments . . . . . . . . xiii | Manager . . . . . . . . . . . . . . 26
| Defining the Terminal Interface Manager APPL
Summary of changes . . . . . . . . xv | definition statements . . . . . . . . . . 27
Starting the Debug Tool Terminal Interface
| Changes introduced with Debug Tool V10.1 . . . xv
Manager . . . . . . . . . . . . . . 27
Configuring the TN3270 Telnet Server to access
Chapter 1. Customizing Debug Tool: the Terminal Interface Manager. . . . . . . 28
checklist . . . . . . . . . . . . . . 1 Example: Connecting a VTAM network with
multiple LPARs with one Terminal Interface
Chapter 2. Product Registration . . . . 5 Manager . . . . . . . . . . . . . . 29
Running the Terminal Interface Manager on more
Chapter 3. Installing the Dynamic Debug than one LPAR on the same VTAM network . . 30
| Configuring Terminal Interface Manager as an
facility . . . . . . . . . . . . . . . 7 | IBM Session Manager application . . . . . . 30
Installing the SVCs without using a system IPL. . . 8 Verifying the customization of the Terminal
Verifying the installation of the SVCs . . . . . . 8 Interface Manager . . . . . . . . . . . 31
Checking the level of the Dynamic Debug facility
SVCs . . . . . . . . . . . . . . . . 8
Running the installation verification programs . . . 9
Chapter 7. Specifying the TEST runtime
Using the Authorized Debug facility for protected options through the Language
programs . . . . . . . . . . . . . . . 9 Environment user exit . . . . . . . . 33
Editing the source code of CEEBXITA . . . . . 34
Chapter 4. Setting up the Modifying the naming pattern . . . . . . . 34
APF-authorized system link list data Modifying the message display level . . . . . 35
Comparing the two methods of linking CEEBXITA 36
set (SEQABMOD) . . . . . . . . . . 11 Linking the CEEBXITA user exit into a private copy
of a Language Environment runtime module . . . 36
Chapter 5. Setting up the link list data
set (SEQAMOD) . . . . . . . . . . . 13 | Chapter 8. Installing the browse mode
| RACF facility . . . . . . . . . . . . 39
Chapter 6. Enabling debugging in
full-screen mode using a dedicated Chapter 9. Customizing Debug Tool
terminal . . . . . . . . . . . . . . 15 Utilities . . . . . . . . . . . . . . 41
| How Debug Tool uses full-screen mode using a Choosing a method to start Debug Tool Utilities . . 41
| dedicated terminal . . . . . . . . . . . . 15 Customizing the data set names in EQASTART . . 43
Enabling full-screen mode using a dedicated Adding Debug Tool Utilities to the ISPF menu . . 43
terminal . . . . . . . . . . . . . . . 16 Customizing Debug Tool Setup Utility . . . . . 44
| Defining the VTAM EQAMVnnn APPL definition Customizing for JCL for Batch Debugging utility . . 44
| statements . . . . . . . . . . . . . . 16 Parameters you can set . . . . . . . . . 45
Defining terminal LUs used by Debug Tool. . . 18 Customizing JCL for Batch Debugging for
Configuring the TN3270 Telnet Server to access multiple systems . . . . . . . . . . . 46
the terminal LUs . . . . . . . . . . . 19 Customizing for the Problem Determination Tools 46
Example: Activating full-screen mode using a Parameters you can set . . . . . . . . . 46
dedicated terminal when using TCP/IP TN3270 Customizing Problem Determination Tools for
Telnet Server . . . . . . . . . . . . . . 21 multiple systems . . . . . . . . . . . 47
Contents v
vi Debug Tool V10.1 Customization Guide
About this document
Debug Tool combines the richness of the z/OS® environment with the power of
Language Environment® to provide a debugger for programmers to isolate and fix
their program bugs and test their applications. Debug Tool gives you the capability
of testing programs in batch, using a nonprogrammable terminal in full-screen
mode, or using a workstation interface to remotely debug your programs.
This document describes the tasks you must do to customize Debug Tool.
Debug Tool runs on the z/OS operating system and supports the following
subsystems:
v CICS®
v DB2®
v IMS™
v JES batch
v TSO
v UNIX® System Services in remote debug mode or full-screen mode using a
dedicated terminal only
v WebSphere® in remote debug mode or full-screen mode using a dedicated
terminal only
Licensed documents are available only to customers with a z/OS license. Access to
these documents requires an IBM Resource Link user ID and password, and a key
code. With your z/OS order you received a Memo to Licensees, (GI10-0671), that
includes this key code.
To obtain your IBM Resource Link user ID and password, log on to:
http://www.ibm.com/servers/resourcelink
Note: You cannot access the z/OS licensed documents unless you have registered
for access to them and received an e-mail confirmation informing you that
your request has been processed.
You can use LookAt from the following locations to find IBM message
explanations for z/OS elements and features, z/VM®, VSE/ESA, and Clusters for
AIX® and Linux®:
v The Internet. You can access IBM message explanations directly from the LookAt
Web site at http://www.ibm.com/eserver/zseries/zos/bkserv/lookat/.
v Your z/OS TSO/E host system. You can install code on your z/OS or z/OS.e
systems to access IBM message explanations, using LookAt from a TSO/E
command line (for example, TSO/E prompt, ISPF, or z/OS UNIX System
Services running OMVS).
v Your Microsoft® Windows® workstation. You can install code to access IBM
message explanations on the z/OS Collection (SK3T-4269), using LookAt from a
Microsoft Windows command prompt (also known as the DOS command line).
v Your wireless handheld device. You can use the LookAt Mobile Edition with a
handheld device that has wireless access and an Internet browser (for example,
Internet Explorer for Pocket PCs, Blazer, or Eudora for Palm OS, or Opera for
Linux handheld devices). Link to the LookAt Mobile Edition from the LookAt
Web site.
You can obtain code to install LookAt on your host system or Microsoft Windows
workstation from a disk on your z/OS Collection (SK3T-4269), or from the LookAt
Web site (click Download, and select the platform, release, collection, and location
that suit your needs). More information is available in the LOOKAT.ME files
available during the download process.
The last several topics list notices, bibliography, and glossary of terms.
Notes:
1. The PL/I program must be compiled with and run in one of the following
environments:
v Compiled with Enterprise PL/I for z/OS, Version 3.6 or later, and run with
the following versions of Language Environment:
Debug Tool provides facilities that apply only to programs compiled with specific
levels of compilers. Because of this, Debug Tool Customization Guide uses the
following terms:
assembler
Refers to assembler programs with debug information assembled by using
the High Level Assembler (HLASM).
COBOL
Refers to the all COBOL compilers supported by Debug Tool except the
COBOL compilers described in the term non-Language Environment COBOL.
disassembly or disassembled
Refers to high-level language programs compiled without debug
information or assembler programs without debug information. The
debugging support Debug Tool provides for these programs is through the
disassembly view.
Enterprise PL/I
Refers to the Enterprise PL/I for z/OS and OS/390® and the VisualAge®
PL/I for OS/390 compilers.
non-Language Environment COBOL
Refers to any of the following COBOL programs:
v Programs compiled with the IBM OS/VS COBOL compiler.
v Programs compiled with the VS COBOL II compiler with the NOTEST
compiler option and linked with a non-Language Environment library.
Syntax diagrams pictorially display the order and parts (options and arguments)
that comprise a command statement. They are read from left to right and from top
to bottom, following the main path of the horizontal line.
Symbols
The following symbols may be displayed in syntax diagrams:
Symbol Definition
─── Indicates the beginning of the syntax diagram.
─── Indicates that the syntax diagram is continued to the next line.
─── Indicates that the syntax is continued from the previous line.
─── Indicates the end of the syntax diagram.
Syntax items
Syntax diagrams contain many different items. Syntax items include:
v Keywords - a command name or any other literal information.
v Variables - variables are italicized, appear in lowercase and represent the name
of values you can supply.
v Delimiters - delimiters indicate the start or end of keywords, variables, or
operators. For example, a left parenthesis is a delimiter.
v Operators - operators include add (+), subtract (-), multiply (*), divide (/), equal
(=), and other mathematical operations that may need to be performed.
v Fragment references - a part of a syntax diagram, separated from the diagram to
show greater detail.
v Separators - a separator separates keywords, variables or operators. For example,
a comma (,) is a separator.
Syntax examples
The following table provides syntax examples.
Optional choice.
KEYWORD
An optional choice (two or more items) appears in a optional_choice1
vertical stack below the main path of the horizontal line. optional_choice2
You may choose one of the items in the stack.
Default.
default_choice1
Default items appear above the main path of the KEYWORD
horizontal line. The remaining items (required or optional_choice2
optional) appear on (required) or below (optional) the optional_choice3
main path of the horizontal line. The following example
displays a default with optional items.
Variable.
KEYWORD variable
Variables appear in lowercase italics. They represent
names or values.
Repeatable item.
IBM Corporation
H150/090
555 Bailey Avenue
San Jose, CA 95141-1003
USA
v Fax your comments to this U.S. number: (800)426-7773.
When you send information to IBM, you grant IBM a nonexclusive right to use or
distribute the information in any way it believes appropriate without incurring any
obligation to you.
After you gather this information, review the following checklists. As you read
each item on the checklist, you use the information you gathered to determine if
you need to do that customization task. If the task is not applicable to your site,
you can skip that task.
If you are using Debug Tool Utilities, you must do the following required
customization tasks:
__ v “Choosing a method to start Debug Tool Utilities” on page 41.
__ v “Customizing the data set names in EQASTART” on page 43.
__ v “Adding Debug Tool Utilities to the ISPF menu” on page 43.
__ v For the JCL for Batch Debugging utility, you must specify default values for
the yb1dtmod and yb1dtbin parameters. See “Customizing for JCL for Batch
Debugging utility” on page 44.
If you are using any of the following utilities in Debug Tool Utilities, you must do
an additional customization task:
__ v If you are using Debug Tool Setup Utility, see “Customizing Debug Tool
Setup Utility” on page 44.
__ v If you are using other Problem Determination Tools (File Manager for z/OS),
see “Customizing Problem Determination Tools for multiple systems” on page
47.
If you are debugging DB2 stored procedures, CICS program, or IMS programs, you
must do the following required customization tasks:
__ v If your site debugs DB2 stored procedures, see Chapter 10, “Preparing your
environment to debug a DB2 stored procedures,” on page 55.
__ v If your site debugs CICS programs, see Chapter 11, “Adding support for
debugging under CICS,” on page 57.
__ v If your site debugs IMS programs, see Chapter 12, “Adding support for
debugging under IMS,” on page 77 and implement scenario A.
__ v If your site debugs non-Language Environment IMS programs, see
Chapter 12, “Adding support for debugging under IMS,” on page 77 and
implement scenario C.
| As you review the rest of the checklist, if you need to do an item that requires a
| change to the EQAOPTS options file, record your selection on the form at the
| beginning of Chapter 14, “Defining EQAOPTS options: checklist and instructions,”
| on page 83. When you are done reviewing the checklist, you can make the all
| changes to EQAOPTS at one time as described in “Creating EQAOPTS load
| module” on page 97.
Do the customization tasks in the following list only if your site needs the features
described:
__ v If your site uses z/OS XLC C/C++, Version 1 Release 11, and you want
Debug Tool to retrieve source and debug information from .mdbg files, see
“MDBG” on page 90.
__ v If you need to debug non-Language Environment programs that start under
Language Environment or your site has any host products that might use
SVC screening when Debug Tool is started, see “SVCSCREEN” on page 93.
__ v If your site debugs assembler programs and you want to control whether the
statements that make up a macro are displayed in the Source window, see
“DEFAULTVIEW” on page 88.
Do the customization tasks in the following list only if you want to modify the
behavior described:
| __ v If you want to reduce Debug Tool’s CPU consumption in certain cases, see
| “CACHENUM” on page 85.
__ v If your site wants to change the default names, which are
userid.DBGTOOL.SAVESETS and userid.DBGTOOL.SAVEBPS, of the data sets that
store settings, breakpoints, and monitor values, see “SAVEBPDSN,
SAVESETDSN” on page 92.
__ v To modify Debug Tool’s behavior when a full-screen mode using a dedicated
terminal or a remote debugger is not available, see “NODISPLAY” on page
91.
__ v If your site is using the EQAUEDAT user exit to direct Debug Tool to the
location of source, listing, or separate debug files, see Chapter 13, “Enabling
the EQAUEDAT user exit,” on page 81.
__ v If your site wants to control the appearance or settings, through Debug Tool
commands, of all debugging sessions, create a global preferences file. The
global preferences file is a file that is processed at the beginning of every
debugging session and contains Debug Tool commands. See “GPFDSN” on
page 89 for instructions on how to create a global preferences file.
__ v If your site needs to issue a NAMES command for the initial load module or
any of its compile units, see “NAMES” on page 90.
__ v If your site wants Debug Tool to suppress the prompt that Language
Environment displays every time statements like STOP RUN, GOBACK, or
EXEC CICS RETURN are run, see “THREADTERMCOND” on page 96. These
statements can occur quite frequently in an application program, creating
unnecessary interruptions for a user trying to debug the application program.
__ v If your site needs to change the defaults for NATLANG, LOCALE, or
LINECOUNT, see “Changing the default and allowable values in
EQACUIDF” on page 99.
The Dynamic Debug facility requires the installation of the Dynamic Debug facility
SVC programs EQA00SVC(IGC0014E) and EQA01SVC(IGX00051):
v EQA00SVC is a type 3 SVC with a reserved number of 145 (x’91’).
v EQA01SVC is a type 3 using SVC number 109 (X’6D’) with function code 51.
The Dynamic Debug facility SVCs from this version of Debug Tool are compatible
with all previous releases of Debug Tool to Debug Tool for z/OS, Version 6 Release
1 (Program Number 5655-P14).
To install the SVCs, you can select one or both of the following alternatives:
v Install the SVCs through a system IPL. The SMP/E APPLY operation, which you
run when you install Debug Tool or apply a PTF, updates the library
hlq.SEQALPA with the SVCs. To place hlq.SEQALPA in the LPA list, add it to an
LPALSTxx member of parmlib that is used for IPL. If you have earlier releases of
Debug Tool installed at your site, remove any other SEQALPA data sets. The
next time you IPL your system, the SVCs are automatically installed.
Check SYS1.LPALIB for the following members and, if you find them, remove
them:
– EQA00SVC
Information about EQA00SVC that is similar to the following is displayed. Verify that
the version and compile date that are displayed are the same or higher than what
is shown here.
| x4.y.EQA00SVC 2009.277Licensed Materials - Property of IBM 5655-V50 Debug Tool Version 05 EQA00SVC-C7572Copyright Copyright
| IBM Corp. All Rights Reserved
| ***> EQA00SVC is Version 05 with compile date 4 Oct 2009
Information about EQA01SVC that is similar to the following is displayed. Verify that
the version and compile date that are displayed are the same or higher than what
is shown here.
| x4.y.EQA01SVC 2009.2772Licensed Materials - Property of IBM 5655-V50 Debug Tool Version 08 EQA01SVC-C7572Copyright Copyright I
| BM Corp. All Rights ReservedU
| ***> EQA01SVC is Version 08 with compile date 4 Oct 2009
1. To APF-authorize a data set, add an APF ADD statement for the data set to a PROGxx member of parmlib that is used for IPL. To
immediately APF-authorize the data set, use the SETPROG APF MVS command.
Important: Before you do this task, you must have installed and verified the SVCs.
Issue the SETROPTS LIST command to verify that FACILITY class is active.
5. Refresh the FACILITY class by issuing the SETROPTS RACLIST command:
SETROPTS RACLIST(FACILITY) REFRESH
2. To add a data set to the link list, add a LNKLST ADD statement for the data set to a PROGxx member of parmlib that is used for
IPL. To immediately add a data set to the link list, use the SETPROG LNKLST MVS command. Then, if the link list data set is
managed by LLA, enter a F,LLA REFRESH MVS command to refresh the Library Lookaside Directories.
3. If you do this copy, you must repeat this copy after you apply any service to Debug Tool. SMP/E does not do this copy for you.
In all other cases, unless you put hlq.SEQAMOD in the system link list
concatenation, the user will have to alter the execution environment of any
program being debugged so that hlq.SEQAMOD is in the load module search path
(such as placing it in JOBLIB, STEPLIB, ISPLLIB or via use of TSOLIB). Therefore,
it is recommended that you add the hlq.SEQAMOD data set to the system link list
concatenation2.
| A dedicated terminal has specific set up requirements so that it can interact with
| Debug Tool in these environments. Thus, the terminal is dedicated for use by
| Debug Tool. Users do not typically use it to access other services.
NETID identifies the network in which the second terminal emulator resides.
For example, in the string NETA.LU001, NETA is the NETID.
| 5. Submit the batch job. Debug Tool completes the following tasks:
| a. Debug Tool allocates a VTAM ACB (EQAMVnnn) for its end of a VTAM
| session.
| b. Debug Tool uses VTAM to initiate a session with the terminal LU to which
| the second terminal emulator is connected.
| c. A VTAM session is then conducted between Debug Tool and the terminal
| LU.
| This technique requires you to define and configure a number of items in the z/OS
| Communications Server. Section “Enabling full-screen mode using a dedicated
| terminal” describes these definitions and configuration.
| Tip: The EQAMVnnn names are used internally by Debug Tool. Do not confuse these
| names with the terminal LU names. The user needs to know only the
| terminal LU name, which he specifies with the MFI% suboption of the TEST run
| time option.
| The number of APPL names you define must be sufficient to allow for the
| maximum number of concurrent Debug Tool full-screen mode using a dedicated
| terminal sessions. (Debug Tool uses one of these APPL names for its end of each
| VTAM session that is initiated with a terminal LU.)
| The EQAWAPPL member in the hlq.SEQASAMP data set predefines 50 APPL names,
| EQAMV001 to EQAMV050. You can do one of the following tasks to add this member to
| the VTAM definitions library (VTAMLST).
| v Copy EQAWAPPL into a new member:
1. Create a new member in the VTAM definitions library (VTAMLST). The VTAM
definitions library is often stored in the data set SYS1.VTAMLST.
2. Copy the contents of the EQAWAPPL member into the new member.
| 3. Add the new member’s name to the VTAM start options configuration file,
| ATCCONxx, so that VTAM activates the Debug Tool APPL definitions at
| initialization.
| v Copy EQAWAPPL into an existing member that is already defined in VTAMLST:
1. Select a member in the VTAM definitions library (VTAMLST) that contains the
major node definitions.
| 2. Copy the APPL definition statements for Debug Tool from the EQAWAPPL
| member into the selected member.
| Tip: The existing member has the VBUILD TYPE=APPL statement, so do not
| copy this statement from EQAWAPPL.
| If you are running VTAM in a multi-domain environment and you require the
| ability to debug full-screen mode using a dedicated terminal on more than one
| host, edit the copy of EQAWAPPL on each system to make the names for Debug Tool
| major and minor nodes unique for each system.
| For example, if you have hosts SYSA, SYSB, and SYSC, and need to provide
| definitions for up to 50 concurrent users debugging programs in full-screen mode
| using a dedicated terminal on each system, you can code the following entries:
v SYSA VTAMLST EQAWAPPL entry:
EQAAPPLA VBUILD TYPE=APPL
EQAMV001 APPL AUTH=(PASS,ACQ),PARSESS=NO
EQAMV002 APPL AUTH=(PASS,ACQ),PARSESS=NO
...
| EQAMV050 APPL AUTH=(PASS,ACQ),PARSESS=NO
v SYSB VTAMLST EQAWAPPL entry:
| EQAAPPLB VBUILD TYPE=APPL
| EQAMV051 APPL AUTH=(PASS,ACQ),PARSESS=NO
| EQAMV052 APPL AUTH=(PASS,ACQ),PARSESS=NO
| ...
| EQAMV100 APPL AUTH=(PASS,ACQ),PARSESS=NO
v SYSC VTAMLST EQAWAPPL entry:
EQAAPPLC VBUILD TYPE=APPL
EQAMV101 APPL AUTH=(PASS,ACQ),PARSESS=NO
EQAMV102 APPL AUTH=(PASS,ACQ),PARSESS=NO
...
EQAMV150 APPL AUTH=(PASS,ACQ),PARSESS=NO
| You can have up to 999 unique APPL names for full-screen mode using a
| dedicated terminal spread across your network.
As an alternative to coding each minor node name, you can use the Model
Application Names function. With this function, VTAM dynamically creates the
Terminal LU specifications
| All terminal LUs that are used to debug programs in full-screen mode using a
| dedicated terminal must have a default log mode specified in the corresponding
| VTAM definitions. This log mode must match the characteristics of the terminal
| emulator session that is attached to this terminal LU. Use the DLOGMOD= operand on
| the APPL definition for the terminal logical unit (LU) to specify the default log
| mode.
| If your terminal emulator session cannot provide this information, select a log
| mode that matches your terminal emulator session characteristics. For example, if
| you have a TN3270 emulator that does not respond to a query, select one of the
| following log modes that matches the terminal size that the user will be using:
v D4C32782 24x80
v D4C32783 32x80
v D4C32784 43x80
v D4C32785 27x132
When you specify these types of log modes, the user must select a terminal size
that matches your DLOGMOD specification.
| An example of a set of terminal LU definitions for the terminal side of the VTAM
| session is hlq.SEQASAMP(EQAWTRML). See the log mode definitions in the IBM
| Communications Server SNA Resource Definition Reference for further information
| about log modes. The MODETAB log mode table load module that contains the
| DLOGMOD default log mode specification must be available to VTAM via the
| VTAMLIB DD statement.
You need to VARY on these new terminal LU definitions, similar to the way it was
done in “Activating the VTAM EQAMVnnn APPLs.”
| One way to enable this support is to set up a new TN3270 telnet port. The
| following instructions guide you through setting up a new port and the changes
| you must make to the PROFILE.TCPIP data set. The examples in “Configuring the
TN3270 Telnet Server” on page 22 show several variations of this support.
1. Select an unused port, such as 2023. If you have a firewall installed, ensure that
this port is allowed through the firewall.
2. Do one of the following steps:
v If you are running the TN3270 Telnet Server in the TCP/IP address space,
specify a PORT num TCP INTCLIEN statement to reserve the new port for the
TN3270 Telnet Server.
| v If you are running the TN3270 Telnet Server in a separate address space
| (optional on z/OS Communications Server Version 1.6 through 1.8, required
| on Version 1.9 or later), specify a PORT num TCP jobname NOAUTOLOG statement
| to reserve the new port for the TN3270 Telnet Server.
3. Create a new set of TELNETPARMS and BEGINVTAM blocks for the new port
by copying the existing TELNETPARMS and BEGINVTAM blocks for port 23.
After you make these changes to the TCP/IP configuration data set, you must
instruct TCP/IP to use this updated definition and start the new port. The Telnet
server uses the VARY command to change Telnet functions. One of the following
commands can help you change Telnet functions:
VARY TCPIP,,OBEYFILE
To start, restart or change a port by updating the Telnet profile. If you are
running a TN3270 Telnet Server in a separate address space, you need to
include the TN3270 Telnet Server jobname in the command. For example,
VARY TCPIP,jobname,OBEYFILE.
VARY TCPIP,,TELNET,STOP and VARY TCPIP,,OBEYFILE
To stop a Telnet port, and then restart that port or a new port without
stopping the TCP/IP stack.
See IBM Communication Server IP Configuration Reference for more information about
the VARY TCPIP command.
After making these changes, your users can set up a unique terminal emulator
session that connects to this new port, and debug programs that require the use of
full-screen mode using a dedicated terminal.
After you code these definitions, you need activate these changes by using the
VARY NET and VARY TCPIP commands as described previously.
Note that the DLOGMOD operand is specified. Change the TRMLUnnn names on the
terminal LU APPL definition statements to names that meet your site convention
for terminal LU names. These names must match the entries in the LUGROUP
statements in the BEGINVTAM blocks shown in “Example 1,” “Example 2” on
page 23, and “Example 3” on page 23.
Example 1
The example defines a new port (2023). When a user connects a terminal emulator
session to this port, the Netview Access Services (NVAS) menu appears when the
| LU is created. The user copies the LU name that appears on the NVAS screen and
| specifies it as the value for the MFI%LU_name suboption of the TEST run-time option.
After the user copies the LU name, the user exits NVAS and returns to the Telnet
Solicitor Logon panel to make the terminal LU available to Debug Tool.
;
; Define Telnet pool for Debug Tool
;
TELNETPARMS
4 PORT 2023
... the rest of this should be a copy of port 23
ENDTELNETPARMS
BEGINVTAM
4 PORT 2023
LUGROUP DBGTOOL
| 5c TRMLU001..TRMLU050
IPGROUP EVERYONE
5d 0.0.0.0:0.0.0.0
ENDIPGROUP
Example 2
The example defines a new port (2023). When a user connects a terminal emulator
session to this port, a USSMSG10 panel is displayed. The USSTCP statement is
coded to point to a customized USSMSG10 panel that you defined that displays
| the LU name. The user copies this LU name and assigns it to the MFI%LU_name
| suboption of the TEST run time option. When the USSMSG10 panel is displayed,
the terminal LU is available to Debug Tool.
;
; Define Telnet pool for Debug Tool
;
TELNETPARMS
4 PORT 2023
... the rest of this should be a copy of port 23
ENDTELNETPARMS
BEGINVTAM
4 PORT 2023
LUGROUP DBGTOOL
| 5c TRMLU001..TRMLU050
ENDLUGROUP
IPGROUP EVERYONE
5d 0.0.0.0:0.0.0.0
ENDIPGROUP
Example 3
The example defines a new port (2023). When the user connects a terminal
emulator session to this port, the Telnet Solicitor Logon panel is displayed, and the
| terminal LU is available to Debug Tool. The user copies the LU name from the
| terminal emulator session’s information area and assigns it to the MFI%LU_name
| suboption of the TEST run time option.
;
; Define Telnet pool for Debug Tool
;
TELNETPARMS
4 PORT 2023
... the rest of this should be a copy of port 23
ENDTELNETPARMS
BEGINVTAM
4 PORT 2023
LUGROUP DBGTOOL
| 5c TRMLU001..TRMLU050
ENDLUGROUP
IPGROUP EVERYONE
5d 0.0.0.0:0.0.0.0
ENDIPGROUP
| To help you verify the installation of the facility to debug full-screen mode using a
| dedicated terminal, the hlq.SEQASAMP data set contains the following installation
| verification program (IVP) jobs:
v EQAWIVP5 (COBOL)
v EQAWIVP6 (C)
v EQAWIVP7 (PL/I)
v EQAWIVP9 (Enterprise PL/I)
v EQAWIVPB (Language Environment assembler)
v EQAWIVPD (non-Language Environment assembler)
v EQAWIVPW (OS/VS COBOL)
v EQAWIVPY (non-Language Environment VS COBOL II)
Note: You are not logging on TSO. You are indicating that you want your user
ID associated with this terminal LU.
A panel similar to the following panel is then displayed on the second terminal
emulator session:
PF3=EXIT PF12=LOGOFF
The terminal is now ready to receive a Debug Tool full-screen mode using a
dedicated terminal session.
4. Edit the PARM string of your batch job so that you specify the TEST run time
parameter as follows:
TEST(,,,VTAM%userid:*)
5. Submit the batch job.
The tasks completed are similar to the tasks described in step 5 on page 15
except that first the batch job communicates with the Terminal Interface
Manager to correlate the user ID to the terminal LU of the second terminal
emulator session. The remaining steps are the same as described in step 5 on
page 15.
6. On the second terminal emulator session, a full-screen mode debugging session
is displayed. Interact with it the same way you would with any other
full-screen mode debugging session.
7. After you exit Debug Tool, the second terminal emulator session displays the
panel and messages you saw in step 3 on page 25. This indicates that Debug
Tool can use this session again. (this will happen each time you exit from
Debug Tool).
8. If you want to start another debugging session, return to step 5. If you are
finished debugging, you can do one of the following tasks:
v Close the second terminal emulator session.
v Exit the Terminal Interface Manager by choosing one of the following
options:
– Press PF12 to display the Terminal Interface Manager logon panel. You
can log in with the same ID or a different user ID.
– Press PF3 to exit the Terminal Interface Manager.
To activate the new definitions, enter the following command from the console:
VARY NET,ACT,ID=member-name
| The following example starts the Debug Tool Terminal Interface Manager for
| alternate ACB EQASESS2 and instructs it to provide an extra entry field for use
| with IBM Session Manager:
| START EQAYSESM,OPTS='-a EQASESS2 -s'
Example 4
The example below shows the modified “Example 1” on page 22, with the changes
highlighted with an asterisk (*).
PORT
...
* 2024 TCP INTCLIEN ; Telnet Server - Debug Tool
...
TELNETPARMS
* PORT 2024 ; Debug Tool
... the rest of this should be a copy of the existing Port 23
ENDTELNETPARMS
BEGINVTAM
* PORT 2024
; Define the VTAM terminal LUs to use for this port (see EQAWTRML)
; Allow anyone with access to this system to use the LUs above
IPGROUP EVERYONE
0.0.0.0:0.0.0.0
ENDIPGROUP
ENDVTAM
After you make these changes, your users can set up a unique terminal emulator
session that connects to this new port, and debug programs that require the use of
full-screen mode using a dedicated terminal with the Debug Tool Terminal
Interface Manager. The user does the following steps:
1. Starts a terminal emulator session that connects to this new port. The Debug
Tool Terminal Interface Manager is displayed.
| 2. The user enters his user ID and password and then presses Enter. The terminal
| is now ready to receive a Debug Tool full-screen mode using a dedicated
| terminal session.
3. On another terminal emulator session, the user starts his program with the TEST
run-time option and specifies the VTAM%userid suboption. The terminal
emulator session connected to this new port displays a full-screen mode using
a dedicated terminal session.
Do the following steps for each additional instance of the Terminal Interface
Manager:
| 1. In “Defining the Terminal Interface Manager APPL definition statements” on
page 27, after you have copied EQAWSESS into a new or existing member,
modify it so that you specify an ACB name other than the default EQASESSM.
By default, Debug Tool assumes you work in an environment where you use
only one instance of Terminal Interface Manager and the default ACB name
used by this instance of Terminal Interface Manager and Debug Tool is
EQASESSM. By specifying the ACB name used by the Terminal Interface
Manager (instead of using the default name), you can create a unique ACB
name for each instance of the Terminal Interface Manager.
2. In “Starting the Debug Tool Terminal Interface Manager” on page 27, after you
copy the EQAYSESM member to the SYS1.PROCLIB data set, modify it to
specify the new ACB name you created in step 1 by specifying OPTS='-a
XXXXXXXX', where XXXXXXXX is the new ACB name.
3. In “Configuring the TN3270 Telnet Server to access the Terminal Interface
Manager” on page 28, when you modify the TCP/IP TN3270 server's
configuration file, modify the DEFAULTAPPL statement to specify the ACB
name you created in step 1, instead of EQASESSM.
| 4. Specify the EQAXOPT TIMACB option in the EQAOPTS option file, as
| described in “TIMACB” on page 96, using the new ACB name you created in
| step 1 for ACB-name.
The user exit extracts the TEST runtime option from a user controlled data set with
a name that is constructed from a naming pattern. The naming pattern can include
the following tokens:
&USERID
Debug Tool replaces the &USERID token with the user ID of the current user.
Each user can specify an individual TEST runtime option when debugging an
application. This token is optional.
&PGMNAME
Debug Tool replaces the &PGMNAME token with the name of the main program
(load module). Each program can have its own TEST runtime options. This
token is optional.
Notes:
1. EQADDCXT is supported for DB2 version 7 or later. If DB2 RUNOPTS is
specified, EQADDCXT takes precedence over DB2 RUNOPTS.
2. For BTS, you need to specify Environment command (./E) with the user ID of
the IO PCB. For example, if the user ID is ECSVT2, then the Environment
command is ./E USERID=ECSVT2.
Your users can use the user exit in the following ways:
To learn about the advantages and disadvantages of each method, see “Comparing
the two methods of linking CEEBXITA” on page 36.
To prepare your site to use the Language Environment user exit, do the following
tasks:
1. “Editing the source code of CEEBXITA.”
2. “Linking the CEEBXITA user exit into a private copy of a Language
Environment runtime module” on page 36.
v Create a private load module for the customized exit. Copy the assembler user
exit that has the same name as the user exit from hlq.SEQASAMP to a local data
set. Edit the patterns or message display level. Customize and run the JCL to
generate a load module.
In some cases, the first character of a user ID is not valid for a name qualifier. A
character can be concatenated before the &USERID token to serve as the prefix
The following table shows examples of naming patterns and the corresponding
data set names after Debug Tool substitutes the token with a value.
Table 4. Data set naming patterns, values for tokens, and resulting data set names
Naming pattern User ID Program name Name after user ID substitution
&USERID.DBGTOOL.EQAUOPTS JOHNDOE JOHNDOE.DBGTOOL.EQAUOPTS
P&USERID.EQAUOPTS 123456 P123456.EQAUOPTS
DT.&USERID.TSTOPT TESTID DT.TESTID.TSTOPT
DT.&USERID.&PGMNAME.TSTOPT TESTID IVP1 DT.TESTID.IVP1.TSTOPT
To customize the naming pattern of the data set that has TEST runtime option,
change the value of the DSNT DC statement in the sample user exit. For example:
* Modify the value in DSNT DC field below.
*
* Note: &USERID below has one additional '&', which is an escape
* character.
*
DSNT_LN DC A(DSNT_SIZE) Length field of naming pattern
DSNT DC C'&&USERID.DBGTOOL.EQAUOPTS'
DSNT_SIZE EQU *-DSNT Size of data set naming pattern
*
To customize the message display level, change the value of the MSGS_SW DC
statement in the sample user exit. For example:
* The following switch is to control WTO message display level.
*
* x'00' - no messages
* x'01' - error and warning messages
* x'02' - error, warning, and diagnostic messages
*
MSGS_SW DC X'00' message level
*
Chapter 7. Specifying the TEST runtime options through the Language Environment user exit 35
Comparing the two methods of linking CEEBXITA
You can link in the user exit CEEBXITA in the following ways:
v Link it into the application program.
Advantage
The user exit affects only the application program being debugged. This
means you can control when Debug Tool is started for the application
program. You might also not need to make any changes to your JCL to
start Debug Tool.
Disadvantage
You must remember to remove the user exit for production or, if it isn't
part of your normal build process, you must remember to relink it to the
application program.
v Link it into a private copy of a Language Environment runtime load module
(CEEBINIT, CEEPIPI, or both)
Advantage
You do not have to change your application program to use the user
exit. In addition, you do not have to link edit extra modules into your
application program.
Disadvantage
You need to take extra steps in preparing and maintaining your runtime
environment:
– Make a private copy of one or more Language Environment runtime
routines
– Only for the modules you might debug, customize your runtime
environment to place the private copies in front of the system
Language Environment modules in CEE.SCEERUN in the load
module search path
– When you apply maintenance to Language Environment, you might
need to relink the routines.
– When you upgrade to a new version of Language Environment, you
must relink the routines.
If you link the user exit into the application program and into a private copy of a
Language Environment runtime load module, which is in the load module search
path of your application execution, the copy of the user exit in the application load
module is used.
Chapter 7. Specifying the TEST runtime options through the Language Environment user exit 37
38 Debug Tool V10.1 Customization Guide
|
| If you want to use RACF to enforce one of the following situations, you must
| install the browse mode RACF facility:
| v Debug programs in a production environment (or some other environment)
| where you want to control whether Debug Tool users can modify the contents of
| storage or alter program flow
| The following RACF facilities are associated with the browse mode facility:
| v EQADTOOL.BROWSE.MVS
| v EQADTOOL.BROWSE.CICS
| You can install either or both facilities. The first facility controls browse mode for
| non-CICS MVS jobs. The second controls browse mode access in CICS regions.
| In most cases, if you install the browse mode RACF facility, then specify
| UACC(READ). However, assigning fac_uacc any of the following values creates the
| corresponding result:
| NONE
| Only users specifically authorized to the facility can use Debug Tool in any
| way.
| READ Only users specifically authorized to the facility can use Debug Tool in the
| normal (non-browse mode) way.
| UPDATE
| Users specifically authorized to the facility can be limited to using Debug
| Tool in browse mode but all other users can use Debug Tool in either the
| normal (non-browse mode) way or in browse mode, depending on an
| entry in the EQAOPTS option file.
| When you assign usr_acc any of the following values to grant access to a specific
| user, you create the corresponding result:
| NONE
| The user cannot use Debug Tool in any way.
| READ The user can use Debug Tool only in browse mode.
| Do the following steps to give individual users or user groups specific access to
| the browse mode facility:
| 1. Give a user permission to use the browse mode facility by entering the
| following command, where DUSER1 is the name of a RACF-defined user or
| group profile:
| PERMIT EQADTOOL.BROWSE.xxx CLASS(FACILITY) ID(DUSER1) ACCESS(usr_acc)
| Issue the SETROPTS LIST command to verify that FACILITY class is active.
| 3. Refresh the FACILITY class by issuing the SETROPTS RACLIST command:
| SETROPTS RACLIST(FACILITY) REFRESH
| Refer to the following topics for more information related to the material discussed
| in this topic.
| Related tasks
| “BROWSE” on page 84
Table 7. For uppercase English, data sets that need to be included or copied into the
specified DD concatenations
DD concatenation Data set name
SYSEXEC or SYSPROC hlq.SEQAEXEC
ISPMLIB hlq.SEQAMENP
ISPLLIB hlq.SEQAMOD
ISPPLIB hlq.SEQAPENP
ISPSLIB hlq.SEQASENP
ISPTLIB hlq.SEQATLIB
4. See Appendix A, “SMP/E USERMODs,” on page 101 for an SMP/E USERMOD for this customization.
Table 9. For Korean, data sets that need to be included or copied into the specified DD
concatenations
DD concatenation Data set name
SYSEXEC or SYSPROC hlq.SEQAEXEC
ISPMLIB hlq.SEQAMKOR
ISPLLIB hlq.SEQAMOD
ISPPLIB hlq.SEQAPKOR
ISPSLIB hlq.SEQASKOR
ISPTLIB hlq.SEQATLIB
5. See Appendix A, “SMP/E USERMODs,” on page 101 for an SMP/E USERMOD for this customization.
If you copied Debug Tool Utilities to system data sets or concatenated them to
existing DDnames (as described in Method 2 in “Choosing a method to start
Debug Tool Utilities” on page 41), then change line 1 to the following:
D,'CMD(%EQASTART)' /* Debug Tool Utilities */
For more information about configuring your ISPF Primary Option Menu panel,
see z/OS ISPF Planning and Customizing.
For example, to add the LOCAL.PROCLIB procedure library name, do the following
steps:
1. Edit the EQAZPROC6 member of the hlq.SEQATLIB data set.
2. Add the LOCAL.PROCLIB procedure library name. The result looks like the
following:
LOCAL.PROCLIB
SYS1.PROCLIB
3. Save and close the file.
See the EQAZDSYS member of the hlq.SEQATLIB data set for the complete list of
parameters and the syntax convention for these parameters.
6. See Appendix A, “SMP/E USERMODs,” on page 101 for an SMP/E USERMOD for this customization.
7. See Appendix A, “SMP/E USERMODs,” on page 101 for an SMP/E USERMOD for this customization.
8. See Appendix A, “SMP/E USERMODs,” on page 101 for an SMP/E USERMOD for this customization.
9. See Appendix A, “SMP/E USERMODs,” on page 101 for an SMP/E USERMOD for this customization.
To give users access to the proper compilers and development utilities, do the
following steps:
1. Edit the EQAZDFLT11 member of the hlq.SEQATLIB data set.
2. Modify the data set names to match what you use at your site.
3. Add parameters required by your site. You can add parameters by doing one of
the following alternatives:
v Use the INCLUDE 'any.data.set.name'; statement to include statements from
a data set that you created.
v Use the INCLUDE membername; statement to include parameters from other
members in the data set hlq.SEQATLIB.
See the EQAZDSYS and EQAZDUSR members of the hlq.SEQATLIB data set for the
complete list of parameters and the syntax convention for these parameters.
If your users use terminals that cannot display mixed-case English text, you
must enter all parameters in uppercase English.
If your site uses CCCA and requires that you use the VOLUMES parameter when
you define private data sets (for example, a cluster is not managed by SMS),
you must include the VOLUMES parameter when you define private data sets.
Modify the following variables to include the VOLUMES parameter:
v yccctla1
10. See Appendix A, “SMP/E USERMODs,” on page 101 for an SMP/E USERMOD for this customization.
11. See Appendix A, “SMP/E USERMODs,” on page 101 for an SMP/E USERMOD for this customization.
To place the load modules in an APF-authorized data set, do one of the following
alternatives:
v Mark the hlq.SEQAAUTH data set as APF-authorized1 and do one of the following:
– Limit access to only system programmers.
– Create Resource Access Control Facility (RACF) profiles to restrict access to
these load modules.
v Do not mark the hlq.SEQAAUTH data set as APF-authorized. Copy3 the following
load modules into an APF-authorized data set that only system programmers
can access:
– EQACUOIN (SVC installer)
– EQACUOSV (SVCs)
12. See Appendix A, “SMP/E USERMODs,” on page 101 for an SMP/E USERMOD for this customization.
The commands above restrict access to EQACUOIN and EQACUOSV by granting read
access to only id. The following list describes the operands used in this example:
notify
TSO user ID of the person who is notified of a RACF access failure.
authlib
Name of the APF-authorized data set that contains EQACUOIN and EQACUOSV.
volser
Volume serial of authlib data set or ****** to specify the current SYSRES
volume.
owner
TSO user ID or RACF group name of the person or persons that own this
profile.
id TSO user ID or RACF group name of the person or persons who have the
ability to install the SVCs.
The monitor SVCs use some common system storage, as described below. In
addition, each user session uses ECSA storage. See Appendix B of the Debug Tool
Coverage Utility User’s Guide and Messages for more information about the amount
of ECSA storage used by each user session.
CSA 13248 bytes
SQA 25496 bytes
13. See Appendix A, “SMP/E USERMODs,” on page 101 for an SMP/E USERMOD for this customization.
If you do not include the IMS load library in the search path, your users will see
one or both of the following messages and they will not be able to use the IMS
TM Setup - Manage LE Runtime Options function in Debug Tool Utilities:
v EQAZ60E REXX IMS SPOC environment is not available. Return Code = nnn
v IKJ56500I COMMAND CSLULXSB NOT FOUND
After updating the JCL, the DB2 administrator must refresh the DB2 or WLM
address space so that these updates take effect.
Refer to the following topics for more information related to the material discussed
in this topic.
Related references
DB2 UDB for z/OS Application Programming and SQL Guide
14. Add hlq.SEQAMOD to STEPLIB only if it is not already in the system search path (for example, link list). If you create a custom
EQAOPTS (as described in Chapter 14, “Defining EQAOPTS options: checklist and instructions,” on page 83) that is not stored in
hlq.SEQAMOD, then place the data set containing it in STEPLIB (ahead of hlq.SEQAMOD if it is in STEPLIB).
15. Add CEE.SCEERUN to STEPLIB only if it is not already in the system search path (for example, link list). If you create a private
copy of the Debug Tool Language Environment user exit for DB2 that is linked into CEEPIPI (as described in Chapter 7,
“Specifying the TEST runtime options through the Language Environment user exit,” on page 33), then place the data set
containing it in STEPLIB (ahead of CEE.SCEERUN if it is in STEPLIB).
Note: You can use DTCN or CADP to add support for debugging, depending on
the version of CICS:
v CICS version 2.2 or earlier: you must use DTCN.
v CICS version 2.3 or later: either DTCN or CADP.
Important: Users must allocate files with the correct attributes to optimize the
performance of Debug Tool.
11. (Optional) Increase the DSALIM and EDSALIM sizes in your CICS region so
that Debug Tool functions properly with multiple concurrent users. The
amount of increase is based on the current workload in the CICS region.
See the Debug Tool User’s Guide for information about how to debug CICS
programs.
After you enter DTCXXO, a series of messages are displayed on your screen. If all
exits are activated successfully, the following messages are displayed:
EQA9972I - DT XPCFTCH CICS exit now ON.
EQA9972I - DT XEIIN exit now ON.
EQA9972I - DT XEIOUT exit now ON.
EQA9972I - DT XPCTA exit now ON.
EQA9972I - DT XPCHAIR exit now ON.
EQA9970I - CICS exit activation successful.
If there is a problem starting or activating one of the exits, an error message like
the following is displayed:
EQA9974I Error enabling XPCFTCH - EQANCFTC
If you see this error message, verify that the CICS CSD is properly updated to
include the latest Debug Tool resource definitions, and that the Debug Tool
SEQAMOD data is in the DFHRPL DD concatenation for the CICS region.
You can start the exits during region initialization by using a sequential terminal or
any other mechanism that runs transactions during CICS startup. You are not
required to shut down the exits before or during a region shutdown.
PLT: The non-Language Environment exits can also be activated during CICS
region initialization by using the CICS Program List Table (PLTPI) program
EQA0CPLT (supplied by Debug Tool). In addition to adding EQA0CPLT to your
CICS region PLT, you must specify the CICS startup parameter
INITPARM=(EQA0CPLT='NLE'). EQA0CPLT supersedes the function provided earlier
by PLTPI program EQANCPLT. See step 9 on page 59 for instructions on using
EQA0CPLT. For more information about PLT processing, see the CICS Resource
Definition Guide.
Do the following steps to instruct DTCN to store its debugging profiles in a VSAM
data set:
Figure 1. A sample TSMODEL resource definition that gives a region access to the
queue-owning region called P6.
DTCD userid
*
userid
Delete the debug profile associated with a specific CICS user ID.
* Deletes debug profiles from the VSAM data set. This option requires specific
RACF authority; therefore, reserve it for CICS administrators.
To deactivate all debugging profiles in the VSAM data set, use the DTCI
transaction. The following diagram describes the syntax of the DTCI transaction:
DTCI userid
*
Refer to the following topics for more information related to the material discussed
in this topic.
Related tasks
“Authorizing DTCD and DTCI transactions to delete or deactive debug
profiles” on page 76
| If you want the access method to avoid using CICS SPI and API to access these
| files, enable the QSAM access method.
| To enable the QSAM access method, use the following INITPARM in your CICS
| start up parameters:
| INITPARM=(DFHLETRU='USEQSAM')
| You also need to apply the following PTFs to the appropriate products:
| v For CICS Transaction Server for z/OS, Version 3.1, apply the PTF for PK67329
| v For CICS Transaction Server for z/OS, Version 3.2, apply the PTF for PK68401
| v For Enterprise COBOL compilers, apply the PTF for PK71852 to Language
| Environment, Version 1.8 through 1.10
| v For Enterprise PL/I compilers, apply the PTF for PK93564 to Language
| Environment, Version 1.8 through 1.11
If you are using CICS Transaction Server Version 4, Debug Tool selects the interface
according to the following rules:
v If the CICS Socket Domain is active, Debug Tool selects the CICS Socket
Domain.
v If the CICS Socket Domain is inactive and the TCP/IP Socket Interface for CICS
is active, Debug Tool selects the TCP/IP Socket Interface for CICS.
If you are using CICS Transaction Server Version 2 or Version 3, Debug Tool selects
the interface according to the following rules:
v If the TCP/IP Socket Interface for CICS is active, then Debug Tool selects the
TCP/IP Socket Interface.
v If the TCP/IP Socket Interface for CICS is inactive and the CICS Socket Domain
is active, then Debug Tool selects the CICS Socket Domain.
If you are using CICS Transaction Server Version 4 and the IPv6 protocol, you
must activate the CICS Socket Domain. If you are using CICS Transaction Server
Version 2 or Version 3 and the IPv6 protocol, you must activate the TCP/IP Socket
Interface for CICS.
To activate the TCP/IP Socket Interface for CICS, see the z/OS Communications
Server IP CICS Sockets Guide.
The default setting of DEBUGTOOL=NO indicates that Debug Tool will not use
CADP profiles and will use DTCN-defined profiles. With DEBUGTOOL=NO, you
can use CADP to update or add debugging profiles, but these profiles will not be
used by Debug Tool.
You can dynamically switch between the CADP and DTCN debug profiles that are
used by Debug Tool. After the CICS region is started, enter CEMT SET DEBUG to have
CADP profiles used and CEMT SET NODEBUG to have DTCN profiles used.
IVP Task
EQAWIVCI Dynamic Debug facility and Enterprise PL/I
TEST(ALL,SYM,NOHOOK,SEPARATE)
EQAWIVCP Dynamic Debug facility and COBOL TEST(NONE,SYM,SEPARATE) or
TEST(NOHOOK,SEPARATE)
EQAWIVC2 C TEST(ALL)
For this scenario to work, the CICS system administrator must complete the
following tasks for the region CICSAOR2:
v Define Debug Tool resources in the CICS CSD and install them in the CICS
region, as described in Chapter 11, “Adding support for debugging under CICS,”
on page 57, step 1.
v Provide access to these resources, as described in Chapter 11, “Adding support
for debugging under CICS,” on page 57, step 2a on page 57.
If you want to debug an application that runs in another AOR region, like
CICSAOR1, you must log on to that region and verify that the system
administrator completed the above tasks for that region.
For this scenario to work, the CICS system administrator must complete the
following tasks for both AORs:
v Define Debug Tool resources in the CICS CSD and install them in the CICS
region, as described in Chapter 11, “Adding support for debugging under CICS,”
on page 57, step 1.
v Provide access to these resources, as described in Chapter 11, “Adding support
for debugging under CICS,” on page 57, step 2a on page 57.
v Run the correct programs and use the correct CICS start up parameters for each
type of profile, as described in the following steps:
CADP Chapter 11, “Adding support for debugging under CICS,” on page 57,
step 5d on page 58, 6b on page 59, 9b on page 60, and “Enabling the
CADP transaction” on page 67.
DTCN
Chapter 11, “Adding support for debugging under CICS,” on page 57,
step 5a on page 58 and 9b on page 60.
For this scenario to work, the CICS system administrator must complete the
following tasks for both AORs and the TOR:
v Define Debug Tool resources in the CICS CSD and install them in the CICS
region, as described in Chapter 11, “Adding support for debugging under CICS,”
on page 57, step 1.
v Provide access to these resources, as described in Chapter 11, “Adding support
for debugging under CICS,” on page 57, step 2a on page 57.
v Designate a single CICS region as the QOR and define the queue accessible
remotely, as described in “Sharing DTCN debug profile repository among CICS
systems” on page 62.
Variation on this scenario: The temporary storage queue (EQADTCN2) does not
need to be located in a QOR. It can be located in the
TOR, any of the AORs, or in the coupling facility.
Wherever you put the temporary storage queue, keep
the following considerations in mind:
v Place the queue where it can be accessed efficiently
when the application programs begin, since it is
referenced at that point to determine whether the
program should be debugged.
For this scenario to work, the CICS system administrator must complete the
following tasks for the AOR:
v Define Debug Tool resources in the CICS CSD and install them in the CICS
region, as described in Chapter 11, “Adding support for debugging under CICS,”
on page 57, step 1 on page 57.
v Provide access to these resources, as described in Chapter 11, “Adding support
for debugging under CICS,” on page 57, step 2a on page 57.
v If you are using CADP to manage debugging profiles, then run the correct
programs and use the correct CICS start up parameters, as described in
Chapter 11, “Adding support for debugging under CICS,” on page 57,
Chapter 11, “Adding support for debugging under CICS,” on page 57, step 5d
on page 58, 6b on page 59, 9b on page 60, and “Enabling the CADP transaction”
on page 67.
For this scenario to work, the CICS system administrator must complete the
following tasks for the TOR:
v If you are using DTCN to manage debugging profiles, do the following tasks:
–
– Define Debug Tool resources in the CICS CSD and install them in the CICS
region, as described in Chapter 11, “Adding support for debugging under
CICS,” on page 57, step 1 on page 57.
– Provide access to these resources, as described in Chapter 11, “Adding
support for debugging under CICS,” on page 57, step 2a on page 57.
v If you are using CADP to manage debugging profiles, then run the correct
programs and use the correct CICS start up parameters, as described in
Chapter 11, “Adding support for debugging under CICS,” on page 57,
Chapter 11, “Adding support for debugging under CICS,” on page 57, step 5d
on page 58, 6b on page 59, 9b on page 60, and “Enabling the CADP transaction”
on page 67.
v Enable routing of the terminal traffic to the correct terminal by configuring the
Debug Tool transaction CDT# as DYNAMIC(YES).
For this scenario to work, the CICS system administrator must complete the
following tasks for the AOR:
v If you are using DTCN to manage debugging profiles, do the following tasks:
– Define Debug Tool resources in the CICS CSD and install them in the CICS
region, as described in Chapter 11, “Adding support for debugging under
CICS,” on page 57, step 1 on page 57.
– Provide access to these resources, as described in Chapter 11, “Adding
support for debugging under CICS,” on page 57, step 2a on page 57.
Enter the SETROPTS LIST command to verify that FACILITY class is active.
5. Refresh the FACILITY class by entering the following SETROPTS RACLIST
command:
SETROPTS RACLIST(FACILITY) REFRESH
To authorize DTCD and DTCI users so they can delete or deactivate debug profiles
stored in a VSAM data set, do the following steps:
1. Establish profiles in the FACILITY class by entering the following RDEFINE
commands:
RDEFINE FACILITY EQADTOOL.DTCDDELETEALL UACC(NONE)
RDEFINE FACILITY EQADTOOL.DTCIINACTALL UACC(NONE)
2. Verify that generic profile checking is in effect for the class FACILITY by
entering the following command:
SETROPTS GENERIC(FACILITY)
3. Give a user permission to delete or deactivate debug profiles stored in a VSAM
data set by entering the following commands, where DUSER1 is the name of a
RACF-defined user or group profile:
PERMIT EQADTOOL.DTCDDELETEALL CLASS(FACILITY) ID(DUSER1) ACCESS(UPDATE)
PERMIT EQADTOOL.DTCIINACTALL CLASS(FACILITY) ID(DUSER1) ACCESS(UPDATE)
Enter the SETROPTS LIST command to verify that FACILITY class is active.
5. Refresh the FACILITY class by entering the following SETROPTS RACLIST
command:
SETROPTS RACLIST(FACILITY) REFRESH
You can select more than one scenario. If you select more than one scenario,
some steps are repeated. Perform those steps only once.
3. After you have selected the method that your site will use to manage TEST run
time options, notify your application programmers of the chosen method.
Ensure that the application programmers follow the directions described in
"Preparing an IMS program" in the Debug Tool User’s Guide and choose the
Scenario A: Running IMS and managing TEST run time options with a
user exit
Do the following steps to enable this scenario:
| 1. Include the Debug Tool hlq.SEQAMOD16 data set and the Language Environment
| CEE.SCEERUN17 run-time library in the STEPLIB concatenation of your IMS
| region.
2. To give IMS users enough time to run and debug their applications, increase
the time-out limit in the message-processing region (MPR) region to 1440.
Scenario B: Running IMS and managing TEST run time options with
CEEUOPT or CEEROPT
Do the following steps to enable this scenario:
| 1. Include the Debug Tool hlq.SEQAMOD18 data set and the Language Environment
| CEE.SCEERUN run-time library in the STEPLIB concatenation of your IMS
| region.
2. To give IMS users enough time to run and debug their applications, increase
the time-out limit in the message-processing region (MPR) region to 1440.
16. Add hlq.SEQAMOD to STEPLIB only if it is not already in the system search path (for example, link list). If you create a custom
EQAOPTS (as described in Chapter 14, “Defining EQAOPTS options: checklist and instructions,” on page 83) that is not stored in
hlq.SEQAMOD, then place the data set containing it in STEPLIB (ahead of hlq.SEQAMOD if it is in STEPLIB).
17. Add CEE.SCEERUN to STEPLIB only if it is not already in the system search path (for example, link list). If you create a private
copy of the Debug Tool Language Environment user exit for IMS that is linked into CEEBINIT (as described in Chapter 7,
“Specifying the TEST runtime options through the Language Environment user exit,” on page 33), then place the data set
containing it in STEPLIB (ahead of CEE.SCEERUN if it is in STEPLIB).
18. Add hlq.SEQAMOD to STEPLIB only if it is not already in the system search path (for example, link list). If you create a custom
EQAOPTS (as described in Chapter 14, “Defining EQAOPTS options: checklist and instructions,” on page 83) that is not stored in
hlq.SEQAMOD, then place the data set containing it in STEPLIB (ahead of hlq.SEQAMOD if it is in STEPLIB).
19. Add hlq.SEQAMOD to STEPLIB only if it is not already in the system search path (for example, link list). If you create a custom
EQAOPTS (as described in Chapter 14, “Defining EQAOPTS options: checklist and instructions,” on page 83) that is not stored in
hlq.SEQAMOD, then place the data set containing it in STEPLIB (ahead of hlq.SEQAMOD if it is in STEPLIB).
20. Add hlq.SEQAMOD to STEPLIB only if it is not already in the system search path (for example, link list). If you create a custom
EQAOPTS (as described in Chapter 14, “Defining EQAOPTS options: checklist and instructions,” on page 83) that is not stored in
hlq.SEQAMOD, then place the data set containing it in STEPLIB (ahead of hlq.SEQAMOD if it is in STEPLIB).
This sample is designed to operate only under the Language Environment. If you
require an exit to run at any time in a non-Language Environment environment,
you must replace the CEEENTRY and CEETERM macro invocations with the proper
prologue and epilogue code for your environments. If Debug Tool detects a
Language Environment-enabled EQAUEDAT when the Language Environment is not
active, the exit will not be started.
21. See Appendix A, “SMP/E USERMODs,” on page 101 for an SMP/E USERMOD for this customization.
| After you have made all of you selections, define the options as described in
| “Creating EQAOPTS load module” on page 97.
| BROWSE
| Debug Tool browse mode can be controlled by either the browse mode RACF
| facility, through the EQAOPTS options file, or both. For an overview of how to
| control browse mode, see “Debugging in browse mode” in Debug Tool User’s Guide.
| Users who have sufficient RACF authority to the applicable browse mode RACF
| facility (see Chapter 8, “Installing the browse mode RACF facility,” on page 39) can
| control whether the current invocation of Debug Tool is to be in browse mode by
| an entry in EQAOPTS. The following diagram shows how to code this invocation
| of the EQAXOPT macro:
| The following list describes the parameters of the EQAXOPT BROWSE macro:
| RACF
| Indicates that you want Debug Tool to use the browse mode access as
| determined by the current user’s RACF access to the applicable RACF profile.
| If no EQAXOPT BROWSE statement is included in the EQAOPTS data set, a
| default of RACF is used.
| ON
| Indicates that unless the user’s RACF access is NONE, set BROWSE MODE to
| ON.
| OFF
| Indicates that if no RACF profile exists or if the user has UPDATE access or
| higher, set BROWSE MODE to OFF.
| If you choose to implement this option, remember to record your selection on the
| form at the beginning of Chapter 14, “Defining EQAOPTS options: checklist and
| instructions,” on page 83.
| CACHENUM
| To reduce CPU consumption, Debug Tool uses a cache to store information about
| the application programs being debugged by a task. By default, for each debug
| session, Debug Tool stores the information for a maximum of 10 programs.
| Application programs that do a LINK or XCTL to more than 10 programs can
| degrade Debug Tool's CPU performance. You can enhance Debug Tool's CPU
| performance for these application programs by specifying an increased
| CACHENUM value in EQAOPTS. An increased value causes Debug Tool to use
| more storage for each debugged task.
| CODEPAGE
The default code page used by Debug Tool and the remote debuggers is 037. For
any of the following situations, you need to use a different code page:
v Application programmers are debugging in remote debug mode and the source
or compiler use a code page other than 037.
If your C/C++ source contains square brackets or other special characters, you
might need to specify a CODEPAGE option to override the Debug Tool default
code page (037). Check the code page specified when you compiled your source.
The C/C++ compiler uses a default code page of 1047 if you do not explicitly
specify one. If the code page used is 1047 or a code page other than 037, you
need to specify a CODEPAGE option specifying that code page.
v Application programmers are debugging in full screen mode and encounter one
of the following situations:
– They use the STORAGE command to update COBOL NATIONAL variables.
Debug Tool uses the z/OS Unicode Services to process characters that need code
page conversion.
The following diagram describes the syntax of the EQAXOPT CODEPAGE option:
If you choose to implement this option, remember to record your selection on the
form at the beginning of Chapter 14, “Defining EQAOPTS options: checklist and
instructions,” on page 83.
You might need to create your own conversion images as described in “Creating a
conversion image for Debug Tool.”
Notes:
1. For compatibility with earlier versions, 1390 and 1399 are used.
For each suboption, a pair of conversion images are needed for bidirectional
conversion.
v The conversion technique, also called the technique search order. Debug Tool
uses the technique search order RECLM, which means roundtrip, enforced
subset, customized, Language Environment-behavior, and modified language.
RECLM is the default technique search order, so you do not have to specify the
technique search order in the JCL.
You might need to create a conversion image so that users debugging COBOL
programs in full screen or batch mode can modify NATIONAL variables with the
STORAGE command or to properly display C/C++ variables that contain characters
in a code page other than 037. To create the conversion image, you need to do the
following steps:
1. Ask your system programmer for the host's CCSID.
2. Submit a JCL job that specifies the conversion image between the host CCSID,
which you obtained in step 1, and CCSID 1200 (UTF-16).
“Example: JCL for generating conversion images” describes how one JCL creates
the conversion images for both situations.
Debug Tool uses the character conversion services but not the case conversion or
the normalization services of Unicode conversion services. You do not need to
include CASE or NORMALIZE control statements unless other applications require
them.
| DEFAULTVIEW
A user can control whether to display the statements of an assembler macro in the
Source window by entering the SET DEFAULT VIEW command. Every time a
LOADDEBUGDATA command is run for an assembler compile unit, Debug Tool uses the
setting of this command to determine whether to display the macro's statements.
You can make the setting of this command applicable to all debugging sessions by
setting the DEFAULTVIEW operand of the EQAXOPT macro.
Each of these fields corresponds to the similar field in the SET DEFAULT VIEW
command. If EQAXOPT DEFAULTVIEW is not coded, the initial setting for
DEFAULTVIEW is STANDARD.
If you choose to implement this option, remember to record your selection on the
form at the beginning of Chapter 14, “Defining EQAOPTS options: checklist and
instructions,” on page 83.
| DTCNFORCExxxx
| If your users use DTCN to specify debugging profiles, the following list describes
| each resource type you can require your users to specify:
| v DTCNFORCECUID or DTCNFORCEPROGID, which requires the user to specify
| the name of a compile unit or compile units.
v DTCNFORCEIP, which requires the user to specify the IP name or address.
| v DTCNFORCELOADMODID, which requires the user to specify the name of a
| load module or load modules.
v DTCNFORCENETNAME, which requires the user to specify the four character
name of a CICS terminal or a CICS system.
v DTCNFORCETERMID, which requires the user to specify the CICS terminal.
| v DTCNFORCETRANID, which requires the user to specify a transaction ID.
v DTCNFORCEUSERID, which requires the user to specify a user ID.
| If any of the statements are not included, the statement defaults to NO. The
| following diagram describes the syntax of this option:
If you choose to implement this option, remember to record your selection on the
form at the beginning of Chapter 14, “Defining EQAOPTS options: checklist and
instructions,” on page 83.
| EQAQPP
This topic describes one of the tasks you need to do to enable Debug Tool to
debug MasterCraft Q++ programs, provided by Tata Consultancy Services Ltd. For
more information about how to enable Debug Tool to support MasterCraft Q++,
contact Tata Consultancy Services Ltd.
| If the statement is not included, the statement defaults to OFF. The following
| diagram describes the syntax of the EQAXOPT EQAQPP option:
| EQAXOPT EQAQPP , ON
OFF
If you choose to implement this option, remember to record your selection on the
form at the beginning of Chapter 14, “Defining EQAOPTS options: checklist and
instructions,” on page 83.
| GPFDSN
You can create a global preferences file that runs a set of Debug Tool commands at
the start of all Debug Tool sessions. For example, a global preferences file can have
a command that sets PF keys to specific values. If your site uses the PF6 key as the
program exit key, you can specify the SET PF6 "EXIT" = QUIT; command, which
assigns the Debug Tool QUIT command to the PF6 key, in the global preferences
file. (See “Customizing your full-screen session” in Debug Tool User’s Guide for a
description of the interface features you can change.) To create a global preferences
file, do the following steps:
1. Create a preferences file that is stored as a sequential file or a PDS member.
Refer to Debug Tool User’s Guide for a description of preferences files.
The rules for the preferences file are dependant on the language of the first
program Debug Tool encounters. Because you might not know what language
Debug Tool will encounter first, we recommend you use the following rules
when you create the preferences file:
v Put the commands in columns 8 - 72.
v Do not put line numbers in the file.
v Use COMMENT or /* */ to delimit comments.
2. Specify the GPFDSN option in the EQAOPTS option file. The following
diagram describes the GPFDSN option:
For file_name, specify the name of the data set where the global preferences file
will be stored.
Whenever a user starts Debug Tool, the commands in the global preferences file
are run first. The user can also create his or her own preferences file and a
commands file. In this situation, Debug Tool processes the files in the following
order:
1. Global preferences file
2. User preferences file
3. Commands file
If you choose to implement this option, remember to record your selection on the
form at the beginning of Chapter 14, “Defining EQAOPTS options: checklist and
instructions,” on page 83.
| MDBG
| If you are using z/OS XLC C/C++, Version 1 Release 11, you can indicate that
| Debug Tool always searches for .mdbg files to retrieve the source and debug
| information by setting the EQAXOPTS option MDBG to YES. When you set MDBG
| to YES, Debug Tool retrieves the debug information from an .mdbg file and does
| not try to find the debug information from the following sources, even if they
| exist:
| v a .dbg file
| v if the program was compiled with the ISD compiler option, the object
| If you do not specify MDBG or set it to NO, Debug Tool retrieves the debug
| information from either the .dbg file or, if the program was compiled with the ISD
| compiler option, the object.
| If you choose to implement this option, remember to record your selection on the
| form at the beginning of Chapter 14, “Defining EQAOPTS options: checklist and
| instructions,” on page 83.
| NAMES
The Debug Tool User’s Guide describes how the NAMES command can be used to
perform several specific functions dealing with load module and compile unit
names recognized by Debug Tool. However, the NAMES command cannot be used
to alter the behavior of load module or compile unit names that have already been
seen by Debug Tool at the time the NAMES command is processed.
One or more invocations of the EQAXOPT macro with the NAMES operand can be
used for this purpose. The syntax of this macro is shown in the following diagram:
Each of these fields corresponds to the similar field in the NAMES command.
If you choose to implement this option, remember to record your selection on the
form at the beginning of Chapter 14, “Defining EQAOPTS options: checklist and
instructions,” on page 83.
| NODISPLAY
In the following two situations, in which a user can request a specific user
interface, that interface may not be available:
v full-screen mode using a dedicated terminal (with or without the Terminal
Interface Monitor). If the terminal is not available, the program being debugged
terminates with a U4038 abend.
v remote debugger. If the remote debugger is not available, Debug Tool will use
full-screen mode if the user is running under TSO. If the user is not using TSO,
Debug Tool will use batch mode.
You can modify these behaviors by specifying the EQAXOPT NODISPLAY option
so that Debug Tool continues processing as if the user immediately entered a QUIT
DEBUG command. This modification prevents any forced abend or the debugger
from starting, which is often preferable.
The following invocation of the EQAXOPT macro with the NODISPLAY operand can
be used for this purpose. The syntax of this macro is shown in the following
diagram:
DEFAULT
Debug Tool follows the default behavior.
QUITDEBUG
Debug Tool displays a message that indicates that Debug Tool will quit, and
that the user interface could not be used. Debug Tool processing continues as if
the user entered a QUIT DEBUG command.
If you choose to implement this option, remember to record your selection on the
form at the beginning of Chapter 14, “Defining EQAOPTS options: checklist and
instructions,” on page 83.
| To change the default name for either or both of these data sets, you need to
| specify the SAVESETDSN and SAVEBPDSN option in the EQAOPTS option file,
| along with a corresponding naming pattern for the data set. The following diagram
| describes the SAVESETDSN and SAVEBPDSN options:
| For file-name-pattern, specify a naming pattern for the data set that stores this
| information.
| In most environments, you should choose one of the following rules for the
| naming pattern:
| v Any data set name that includes &&USERID. as one of the qualifiers. Debug Tool
| substitutes the user ID of the current user for this qualifier when it creates the
| data set.
v A DD name (Reminder: DD names are not supported under CICS)
v The string NULLFILE to indicate that saving and restoring this information is
not supported
If you choose to implement this option, remember to record your selection on the
form at the beginning of Chapter 14, “Defining EQAOPTS options: checklist and
instructions,” on page 83.
| SUBSYS
This topic describes when and how to specify the SUBSYS allocation parameter in
the EQAOPTS option file.
If the following conditions apply at your site, you need specify the
SUBSYS=library_subsystem_name allocation parameter in the EQAOPTS option file:
v The source code is managed by a library system that requires that you specify
the SUBSYS=library_subsystem_name allocation parameter when you allocate a
data set.
v Your users are debugging C, C++, or Enterprise PL/I programs compiled
without the SEPARATE suboption of the TEST compiler option.
You must run Debug Tool and the specified subsystem on the same system. You
cannot use this feature to debug programs that run under CICS.
| EQAXOPT SUBSYS
, ’ four-character-name ’
SVCSCREEN
In a non-CICS environment, Debug Tool requires SVC screening for the following
situations:
v Invoking Debug Tool by using EQANMDBG to debug programs that start
outside Language Environment including non-Language Environment COBOL
programs.
v Debugging programs that do not run in Language Environment and are started
by programs that begin in Language Environment.
v Detecting services such as MVS LINK, LOAD and DELETE.
If you need to run Debug Tool in any of the following situations, you must specify
the actions that Debug Tool must take regarding SVC screening:
v Start Debug Tool by using EQANMDBG in an environment that already uses
SVC screening.
v Run Debug Tool when debugging programs that do not run in Language
Environment and are started by programs that begin in Language Environment.
v Run Debug Tool when you need to detect services such as MVS LINK, LOAD
and DELETE.
v Run Debug Tool in a situation that requires SVC screening and SVC screening is
already in use by a program with which Debug Tool supports MERGE SVC
screening as described by the MERGE operand that follows.
The following diagram shows how to code an invocation of the EQAXOPT macro:
NOMERGE
, MERGE
= ( COPE )
The following list describes the parameters of the EQAXOPT SVCSCREEN macro:
ON
Indicates that you want Debug Tool to use SVC screening in order to support
MVS LOAD, DELETE, and LINK SVCs.
OFF
Indicates that you want Debug Tool to not use SVC screening. Debug Tool will
not know about programs started through MVS LOAD, DELETE, and LINK
SVCs.
CONFLICT=
Specifies what you want Debug Tool to do when ON is specified or defaulted
and SVC screening is already used by another program.
OVERRIDE
Indicates that you want Debug Tool to override the current SVC screening and
take control of SVC screening.
The default parameters for the EQAXOPT SVCSCREEN macro is one of the
following situations:
v If Debug Tool is started by using the EQANMDBG program:
SVCSCREEN,ON,CONFLICT=NOOVERRIDE,NOMERGE
v If Debug Tool is started by any other method:
SVCSCREEN,OFF,CONFLICT=NOOVERRIDE,NOMERGE
If Debug Tool is started by using the EQANMDBG program, the OFF setting is
ignored.
| After you review the syntax, use Table 11 on page 95 as a guide to select the
| appropriate suboptions.
If you choose to implement this option, remember to record your selection on the
form at the beginning of Chapter 14, “Defining EQAOPTS options: checklist and
instructions,” on page 83.
Each user or group can control this behavior by creating their own copy of
EQAOPTS with their desired options and placing it in the load module search path
before hlq.SEQAMOD.
| THREADTERMCOND
You can indicate that Debug Tool should not prompt the user when a FINISH,
CEE066, or CEE067 thread termination condition is raised by Language
Environment, regardless of the suboptions used in the TEST runtime option. These
conditions are raised by statements like STOP RUN, GOBACK, or EXEC CICS
RETURN, which can occur frequently in an application program. Suppressing the
display of these prompts can reduce the number of times your users are
interrupted by this prompt during a debugging session.
| If the statement is not included, the statement defaults to PROMPT. The following
| diagram describes the syntax of the THREADTERMCOND option:
If you choose to implement this option, remember to record your selection on the
form at the beginning of Chapter 14, “Defining EQAOPTS options: checklist and
instructions,” on page 83.
| TIMACB
| TIMACB identifies the name of an ACB, other than EQASESSM, that Debug Tool
| uses to make full-screen mode using a dedicated terminal with Terminal Interface
| Manager work in an environment where you want to run the Terminal Interface
| Manager on more than one LPAR in the same VTAM network. You specify
| TIMACB as the last step in “Running the Terminal Interface Manager on more than
| one LPAR on the same VTAM network” on page 30.
Place this customized EQAOPTS module in the load module search path in front
of hlq.SEQAMOD for the Debug Tool users who are using this new instance of the
Terminal Interface Manager.
If you choose to implement this option, remember to record your selection on the
form at the beginning of Chapter 14, “Defining EQAOPTS options: checklist and
instructions,” on page 83.
To this minimum source you add each EQAXOPT option you selected on the
list on page 83.
| 3. Follow the directions in sample EQAOPTS data set to generate a new
| EQAOPTS load module. These directions describe how to assemble the source
and link-edit the generated object into a load module named EQAOPTS.
4. Place the EQAOPTS load module in a private data set that is in the load
module search path and appears before hlq.SEQAMOD.
22. See Appendix A, “SMP/E USERMODs,” on page 101 for an SMP/E USERMOD for this customization.
This topic describes the allowable values for these parameters, how to change the
default values, and how to enable additional languages for some Debug Tool
components.
If the default values for these parameters are the values that you want to use, you
can skip this section.
23. See Appendix A, “SMP/E USERMODs,” on page 101 for an SMP/E USERMOD for this customization.
Sample JCL is provided in the EQACUIID member of the hlq.SEQASAMP data set to
perform steps 3 and 4.
The SEQABMOD from this version of Debug Tool is compatible with earlier
versions of Debug Tool. If you have multiple versions of Debug Tool installed on
your system, you need only the SEQABMOD from this version installed in your
system link list concatenation.
For example:
UEN Language UEN
JPN Language JPN
6. If you want to change the default value for NATLANG, edit the EQACUIDF
member and change the DfltLang value. For example, making JPN the default
for NATLANG would be as follows:
EQACUIDF InstDflt DfltLang=JPN, +
7. Assemble and link a new copy of EQACUIDF into the private SEQABMOD by
editing and submitting the JCL that is supplied in member EQACUIID.
8. Copy the EQACUIDF member from the private SEQABMOD into
hlq.SEQABMOD.
For more information, see “Changing the default and allowable values in
EQACUIDF” on page 99.
24. See Appendix A, “SMP/E USERMODs,” on page 101 for an SMP/E USERMOD for this customization.
25. See Appendix A, “SMP/E USERMODs,” on page 101 for an SMP/E USERMOD for this customization.
SMP/E
USERMOD in
hlq.SEQAEXEC hlq.SEQATLIB hlq.SEQASAMP hlq.SEQAMOD hlq.SEQASAMP
EQACUDFT EQAUMOD1
EQASTART EQAUMOD2
EQALMPFX EQAUMOD3
EQALMPGM EQAUMOD4
EQAZDFLT EQAUMOD5
EQAZDSYS EQAUMOD6
EQAZDUSR EQAUMOD7
EQAZPROC EQAUMOD8
1 2
EQACUIDF EQACUIDF EQAUMOD9
EQACUIDM EQAUMODA
1,3 2
EQADBCXT EQADBCXT EQAUMODB
1,3 2
EQADDCXT EQADDCXT EQAUMODC
1,3 2
EQADICXT EQADICXT EQAUMODD
1 2
EQAOPTS EQAOPTS EQAUMODE
1 2
EQAUEDAT EQAUEDAT EQAUMODF
Notes:
1. The source for these parts is in hlq.SEQASAMP. The executable (the part
updated by the USERMOD) is in SEQAMOD.
2. The Debug Tool User’s Guide and Debug Tool Customization Guide discussion of
these parts typically shows generating a private copy of these load modules. If
you want to update hlq.SEQAMOD so that all users see these customizations,
you should use the SMP/E USERMOD method.
3. Debug Tool SMP/E USERMODs for these parts are only available if you choose
the method that updates hlq.SEQAMOD. They are not available if you choose
to update CEE.SCEERUN.
You may also receive a list of prerequisite APARs or PTFs, which you must apply
to your system before applying the current APAR. These prerequisite APARs or
PTFs might relate to Debug Tool or any other licensed product you have installed,
including z/OS.
Accepting the earlier service allows you to use the SMP/E RESTORE command to
return to your current level if you encounter a problem with the service you are
currently applying. You can do this either from the SMP/E dialogs in ISPF, or
using a batch job.
To learn more about how to use the search facility provided in the IBM System z
Enterprise Development Tools & Compilers information center, you can view the
multimedia presentation at http://publib.boulder.ibm.com/infocenter/pdthelp/
v1r1/index.jsp?topic=/com.ibm.help.doc/InfoCenterTour800600.htm.
To search multiple Internet resources for your product using the information
center, click Troubleshooting and support in the left navigation pane and select
Searching IBM support Web sites for a solution. You can select one or more
products, specify keywords, and search a variety of resources, including the
following:
v IBM technotes
v IBM downloads and fixes
v IBM problem reports (APARs) and flashes
v IBM Redbooks®, whitepapers, articles, and tutorials
v IBM developerWorks®
v Forums and newsgroups
v Google
There is also a search facility provided on the product support page. The search
facility provided on the product support page allows you to narrow the search
scope and search only product support documents for that product.
In addition, you can use the built in Updater facility in IBM Support Assistant to
obtain IBM Support Assistant upgrades and new features to add support for
additional software products and capabilities as they become available.
For more information, and to download and start using the IBM Support Assistant
for IBM System z Enterprise Development Tools & Compilers products, please visit
http://www.ibm.com/support/docview.wss?rs=2300&context=SSFMHB&dc=D600
&uid=swg21242707&loc=en_US&cs=UTF-8&lang=en.
Obtaining fixes
A product fix might be available to resolve your problem. To determine what fixes
and other updates are available, the following information is available on the
respective product support site:
v Latest PTFs for Application Performance Analyzer for z/OS
v Latest PTFs for Debug Tool for z/OS
v Latest PTFs for Fault Analyzer for z/OS
v Latest PTFs for File Export for z/OS
v Latest PTFs for File Manager for z/OS
v Latest fixes for Optim Move for DB2
v Latest PTFs for WebSphere Studio Asset Analyzer for Multiplatforms
v Latest PTFs for Workload Simulator for z/OS and OS/390
When you find a fix that you are interested in, click the name of the fix to read its
description and to optionally download the fix.
For more information about the types of fixes that are available, see the IBM
Software Support Handbook at http://techsupport.services.ibm.com/guides/
handbook.html.
If you experience problems with the My notifications feature, click the Feedback
link in the left navigation panel and follow the instructions provided.
Before contacting IBM Software Support, your company must have an active IBM
software maintenance contract, and you must be authorized to submit problems to
IBM. The type of software maintenance contract that you need depends on the
type of product you have:
v For IBM distributed software products (including, but not limited to, Tivoli®,
Lotus®, and Rational products, as well as DB2 and WebSphere products that run
on Windows, or UNIX operating systems), enroll in Passport Advantage® in one
of the following ways:
Online
Go to the Passport Advantage Web site at http://www.lotus.com/
services/passport.nsf/ WebDocs/Passport_Advantage_Home and click
How to Enroll.
By phone
For the phone number to call in your country, go to the IBM Software
Support Web site at http://techsupport.services.ibm.com/guides/
contacts.html and click the name of your geographic region.
v For customers with Subscription and Support (S & S) contracts, go to the
Software Service Request Web site at https://techsupport.services.ibm.com/ssr/
login.
v For customers with IBMLink, CATIA, Linux, S/390®, iSeries®, pSeries®, zSeries®,
and other support agreements, go to the IBM Support Line Web site at
http://www.ibm.com/services/us/index.wss/so/its/a1000030/dt006.
If you are not sure what type of software maintenance contract you need, call
1-800-IBMSERV (1-800-426-7378) in the United States. From other countries, go to
the contacts page of the IBM Software Support Handbook on the Web at
http://techsupport.services.ibm.com/guides/contacts.html and click the name of
your geographic region for phone numbers of people who provide support for
your location.
To save time, if there is a Mustgather document available for the product, refer to
the Mustgather document and gather the information specified. Mustgather
documents contain specific instructions for submitting your problem to IBM and
gathering information needed by the IBM support team to resolve your problem.
To determine if there is a Mustgather document for this product, go to the product
support page and search on the term Mustgather. At the time of this publication,
the following Mustgather documents are available:
If the product does not have a Mustgather document, please provide answers to
the following questions:
v What software versions were you running when the problem occurred?
v Do you have logs, traces, and messages that are related to the problem
symptoms? IBM Software Support is likely to ask for this information.
v Can you re-create the problem? If so, what steps were performed to re-create the
problem?
v Did you make any changes to the system? For example, did you make changes
to the hardware, operating system, networking software, and so on.
v Are you currently using a workaround for the problem? If so, be prepared to
explain the workaround when you report the problem.
Submitting problems
You can submit your problem to IBM Software Support in one of two ways:
Online
Click Open service request on the IBM Software Support site at
http://www.ibm.com/software/support/probsub.html. In the Other
support tools section, select IBMLink to open an Electronic Technical
Response (ETR). Enter your information into the appropriate problem
submission form.
By phone
Call 1-800-IBMSERV (1-800-426-7378) in the United States or, from other
countries, go to the contacts page of the IBM Software Support Handbook at
http://techsupport.services.ibm.com/guides/contacts.html and click the
name of your geographic region.
If the problem you submit is for a software defect or for missing or inaccurate
documentation, IBM Software Support creates an Authorized Program Analysis
Report (APAR). The APAR describes the problem in detail. Whenever possible,
IBM Software Support provides a workaround that you can implement until the
APAR is resolved and a fix is delivered. IBM publishes resolved APARs on the
After a Problem Management Record (PMR) is open, you can submit diagnostic
MustGather data to IBM using one of the following methods:
v FTP diagnostic data to IBM
v If FTP is not possible, email diagnostic data to [email protected]. You
must add PMR xxxxx bbb ccc in the subject line of your email. xxxxx is your
PMR number, bbb is your branch office, and ccc is your IBM country code. Click
here http://itcenter.mainz.de.ibm.com/ecurep/mail/subject.html for more
details.
Always update your PMR to indicate that data has been sent. You can update your
PMR online or by phone as described above.
The IBM System z Enterprise Development Tools & Compilers Information Center, and
its related publications, are accessibility-enabled. The accessibility features of the
information center are described at http://publib.boulder.ibm.com/infocenter/pdthelp/
v1r1/topic/com.ibm.help.doc/accessibility_info.html.
Syntax diagrams start with the word Format or the word Fragments. Each diagram
is preceded by two images. For the first image, the screen reader will say ″Read
syntax diagram″. The associated link leads to an accessible text diagram. When you
return to the document at the second image, the screen reader will say ″Skip visual
syntax diagram″ and has a link to skip around the visible diagram.
For BookManager users only: A screen reader might say the lines, symbols, and
words in a diagram, but not in a meaningful way.
For example, you might hear ″question question
dash dash MOVE dash dash plus dash dash
IBM may have patents or pending patent applications covering subject matter in
this document. The furnishing of this document does not give you any license to
these patents. You can send license inquiries, in writing, to:
IBM Corporation
J46A/G4
555 Bailey Avenue
San Jose, CA 95141-1003
U.S.A.
For license inquiries regarding double-byte (DBCS) information, contact the IBM
Intellectual Property Department in your country or send inquiries, in writing, to:
The following paragraph does not apply to the United Kingdom or any other
country where such provisions are inconsistent with the local law:
Other company, product, and service names, which may be denoted by a double
asterisk (**), may be trademarks or service marks of others.
Adobe, the Adobe logo, PostScript, and the PostScript logo are either registered
trademarks or trademarks of Adobe Systems Incorporated in the United States,
and/or other countries.
Microsoft, Windows, Windows NT®, and the Windows logo are trademarks of
Microsoft Corporation in the United States, other countries, or both.
UNIX is a registered trademark of The Open Group in the United States and other
countries.
CADP. A CICS-supplied transaction used for load module. A program in a form suitable for
managing debugging profiles from a 3270 terminal. loading into main storage for execution. In this
document this term is also used to refer to a Dynamic
compile. To translate a program written in a high Load Library (DLL).
level language into a machine-language program.
logical window. A group of related debugging
compile unit. A sequence of HLL statements that information (for example, variables) that is formatted
make a portion of a program complete enough to so that it can be displayed in a physical window.
compile correctly. Each HLL product has different rules
for what comprises a compile unit. LU. See “logical unit.”
compiler. A program that translates instructions logical unit. (1) A type of network accessible unit that
written in a high level programming language into enables users to gain access to network resources and
machine language. communicate with each other. (2) A name used by
VTAM to identify a terminal or other resource.
D N
data set. The major unit of data storage and retrieval,
consisting of a collection of data in one of several network identifier. In TCP/IP, that part of the IP
prescribed arrangements and described by control address that defines a network. The length of the
information to which the system has access. network ID depends on the type of network class (A, B,
or C).
debug. To detect, diagnose, and eliminate errors in
programs. node name. The name assigned to a node during
network definition. The format for the node name is
DTCN. Debug Tool Control utility, a CICS transaction netid.cpname.
that enables the user to identify which CICS programs
to debug. P
debugging profile. Data that specifies a set of
parameter. Data passed between programs or
application programs which are to be debugged
procedures.
together.
S
secondary logical unit. (1) In SNA, the logical unit
(LU) that contains the secondary half-session for a
particular LU-LU session. An LU may contain
secondary and primary half-sessions for different active
LU-LU sessions. (2) A VTAM Secondary Logical Unit
(i.e., terminal).
IMS
IMS Application Programming: Database
Manager, SC27-1286
IMS Application Programming: EXEC DLI
Commands for CICS & IMS, SC27-1288
IMS Application Programming: Transaction
Manager, SC27-1289
TSO/E
Command Reference, SA22-7782
Programming Guide, SA22-7788
System Programming Command Reference,
SA22-7793
User’s Guide, SA22-7794
z/OS
W
workstation debugging
See remote debug mode
Index 123
124 Debug Tool V10.1 Customization Guide
Readers’ Comments — We’d Like to Hear from You
Debug Tool for z/OS
Customization Guide
Version 10.1
We appreciate your comments about this publication. Please comment on specific errors or omissions, accuracy,
organization, subject matter, or completeness of this book. The comments you send should pertain to only the
information in this manual or product and the way in which the information is presented.
For technical questions and information about products and prices, please contact your IBM branch office, your
IBM business partner, or your authorized remarketer.
When you send comments to IBM, you grant IBM a nonexclusive right to use or distribute your comments in any
way it believes appropriate without incurring any obligation to you. IBM or any other organizations will only use
the personal information that you supply to contact you about the issues that you state on this form.
Comments:
If you would like a response from IBM, please fill in the following information:
Name Address
Company or Organization
_ _ _ _ _ _ _Fold
_ _ _and
_ _ _Tape
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _Please
_ _ _ _ _do
_ _not
_ _ staple
_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _Fold
_ _ _and
_ _ Tape
______
NO POSTAGE
NECESSARY
IF MAILED IN THE
UNITED STATES
IBM Corporation
Silicon Valley Laboratory
Department J87/D325
555 Bailey Ave.
San Jose, CA
95141-9989
_________________________________________________________________________________________
Fold and Tape Please do not staple Fold and Tape
Cut or Fold
GC14-7257-00 Along Line
Printed in USA
GC14-7257-00