$T DEBUG - Set the JES2 DEBUG option

Function

Use the $T DEBUG=YES|NO command to start or stop the monitoring and recording of JES2 activities.

Use the command, with its other parameters, to selectively request that JES2 monitor and record only certain JES2 activities.

Syntax

Read syntax diagramSkip visual syntax diagram$T DEBUG=(YN)$T DEBUG DEBUG CHOICES
DEBUG CHOICES
Read syntax diagramSkip visual syntax diagram,BERT= YESNO ,CKPT= YESNO ,ENCR = YESNO ,MISC= YESNO ,POLICY= YESNO ,SECURITY= YESNO ,STORAGE= YESNO ,SYMREC= YESNO ,VERSION= YESNO ,VERBOSE= YESNO ,MEMBER_STATUS= YESNO ,TIMECLOCK= YESNO ,EDS = YESNO ,QVERIFY = YESNO
Notes:

Parameters

BERT={YES|NO}
Specifies whether (YES) or not (NO) JES2 provides error code $BR3 to inform the operator that a data error has been detected in a chain of BERTs.
CKPT={YES|NO}
Specifies whether (YES) or not (NO) JES2 should verify the integrity of the checkpoint data set and protect the storage containing JQEs, JOEs, and other checkpoint data when a member releases the checkpoint.
EDS={YES|NO}
Specifies whether (YES) or not (NO) JES2 email sender task in JES2 EDS address space should provide more diagnostic information during communication with the z/OSMF server.
Start of changeENCR={YES|NO}End of change
Start of changeSpecifies whether (YES) or not (NO) JES2 should verify if encryption and or/compression data has been incorrectly modified outside the scope of the encryption service. ABEND 02A reason code x‘78’ denotes a problem has been found. End of change
DEBUG=Yes|No
Specifies whether (Yes) or not (No) you require JES2 to record certain JES2 events and to monitor certain JES2 activities. Specifying DEBUG=Yes requests JES2 to record all events that are listed individually on this statement except VERBOSE= and MEMBER_STATUS= (which are unaffected). Specifying DEBUG=No requests JES2 to stop recording all events that are listed individually on this statement except MEMBER_STATUS= (which is unaffected).

Modification: $T DEBUG operator command.

MEMBER_STATUS=={YES|NO}
Specifies whether (YES) or not (NO) JES2 issues the $HASP1701 message whenever the status of a MAS member changes.
MISC={YES|NO}
Specifies whether (YES) or not (NO) JES2 provides occurrence counting of certain JES2 events.
Start of changeStart of changePOLICY={YES|NO}End of changeEnd of change
Start of changeSpecifies whether (YES) or not (NO) JES2 policy management functions should provide more diagnostic information.End of change
QVERIFY=Yes|No
Specifies whether (Yes) or not (No) JES2 is to perform a verification of the job, output, and BERT data areas and queues every time the JES2 checkpoint is read. This is intended to detect various types of errors in the checkpoint data read by the current system. If an error is detected, JES2 issues a disastrous error with label KVRFYERR.

JES2 does not attempt to correct the error, report it and continue. This might result in the KVRFYERR disastrous error being issued every time that the checkpoint is read until the error is corrected (for example by a hot start).

Due to the significant more overhead of this process, it is intended for use only in a test environment or to capture data for which all other diagnostic tools have failed.

SECURITY={YES|NO}
Specifies whether (YES) or not (NO) JES2 indicates that the security product (ex: RACF®) is to log information contained in the $HASP186 message, or if in WARN mode. This applies JES2 output selection when the security authorization fails.
STORAGE={YES|NO}
Specifies whether (YES) or not (NO) JES2 provides $HASP095 error code GW3 to inform the operator that $RETWORK macro processing detected that the storage being returned was modified beyond the length that is specified by its associated $GETWORK macro invocation.
SYMREC={YES|NO}
Specifies whether (YES) or not (NO) JES2 should issue the $HASP805 message when it invokes the MVS™ SYMREC service to indicate a possible error.
TIMECLOCK={YES|NO}
Specifies whether (YES) or not (NO) JES2 takes a disastrous error (TIMERROR) when a job’s hold time + SCHENV-delay time added to arrival time exceeds the current clock value.
VERBOSE={YES|NO}
Specifies whether (YES) or not (NO) JES2 sends $BLDMSG system log-only messages to the console.
VERSION={YES|NO}
Specifies whether (YES) or not (NO) JES2 should verify the integrity of a newly created checkpoint version.

Authority Required

This command requires system authority. The description of the $T RDRnn command explains how to ensure that the authority of the appropriate MVS system command group is assigned.

This command requires control security access authority. For a description of assigning command input authority, see z/OS JES2 Initialization and Tuning Guide.

Processing Considerations

Start of changeBe aware that if you specify YES for the CKPT, VERSION, or ENCR parameters in a production environment, these options affect JES2 performance because there is a noticeable increase in the processor cycles JES2 uses.End of change

By using the DEBUG command with the CKPT, or VERSION parameters, you can detect some incorrect updates resulting from checkpoint serialization programming errors in JES2 modules or installation exits.

Use the DEBUG command, with the CKPT parameter specified, for testing installation exits that update checkpointed information. Some common program errors such as failing to use the $QSUSE macro before updating checkpointed information, or failing to use the $CKPT macro after updating the checkpoint might be found by using CKPT=YES. However, you should not rely on CKPT=YES since timing and the order of events play a large part in surfacing serialization errors.

Scope

Single member. This command is in effect for this member only.

However, you might want this command to be applied to all members of the MAS (to ensure a consistent environment across the MAS). If so, you can use the MVS ROUTE *ALL command to issue this command to all active members (if the JES2 command character is the same on all members). See z/OS MVS System Commands for more information on using the ROUTE *ALL command.

Messages

The $HASP827 message displays the current setting of the DEBUG option.

Start of change

Examples

 1 
 $t debug=y 

 $HASP827 DEBUG 
 $HASP827 DEBUG  BERT=YES,CKPT=YES,MISC=YES,SECURITY=YES,
 $HASP827        STORAGE=YES,SYMREC=YES,VERSION=YES,VERBOSE=NO,
 $HASP827        MEMBER_STATUS=NO,QVERIFY=YES,EDS=YES,ENCR=YES
 $HASP827        TIMECLOCK=YES
End of change
Start of change

JES2 monitors all specifiable JES2 activities.

End of change
Start of change
 2 
 $T DEBUG,STORAGE=N,MISC=N,SECURITY=Y

 $HASP827 DEBUG  BERT=YES,CKPT=YES,MISC=NO,
 $HASP827        SECURITY=YES,STORAGE=NO,SYMREC=YES,
 $HASP827        VERSION=YES,ENCR=NO
End of change
Start of change

JES2 monitors all JES2 activities except MISC, STORAGE, and ENCR.

End of change