? tab(-10, AG_TRACE);" op, {trflags}; chr(127);
AG_TRACE (76) allows the application on the server to clear, set, or query the trace flags on the ATE client in real time. This is mainly useful for debugging, but in such a case, can be very handy since it is not often practical to arrange for users to change the trace flags on individual copies of ATE.
MAP1 OPCODE,B,1 ! 0=clear, 1=set, 2=query
MAP1 TRFLAGS,B,4 ! Flags to clear, set or query
In all cases, start by setting TRFLAGS to be the combination of one or more flags that you are interesting in clearing, setting, or querying. You can also specify them directly, using the TROP_xxxx symbols from the file SOSLIB:ashell.def. For example, to set the XTREE and XDEBUG flags:
? TAB(-10,AG_TRACE);"1,";(TROP_XTREE or XTROP_XDEBUG);chr(127);
To specify all flags, you can use the shorthand -1:
? TAB(-10,AG_TRACE);"2,-1";chr(127); ! query all flags
input "",TRFLAGS ! for query, retrieve results
? "Current ATE trace flags: ";Fn'Dec2Hex$(TRFLAGS); ! display in hex
if (TRFLAGS and TROP_ATE) then "ATE trace set"
if (TRFLAGS and TROP_XTREE) then "XTREE trace set"
etc.