Added December 2019
This setting is recommended for most situations. It outputs messages for each ASB error, indicating whether or not it was trapped, along with other details. The only case where you may not want this trace is in an environment where it is normal to use ^C to terminate programs, since otherwise this will generate a lot of Error #1 traces. The typical trace looks like this:
27-Dec-19 11:46:04 [p26428-16]<REGSC2:0x246d> Trapped ASB error #6 (RETURN without GOSUB) last line # 3380 (location 246D)
27-Dec-19 11:46:04 [p26428-16]<REGSC2:0x246d> Call stack trace, from program REGSC2 : ...
Notes:
• | For programs without line #'s, the location counter will allow you to locate the exact source line, provided you have an LSX file corresponding to to the compiled module. See COMPIL /LF switch for information on generating the LSX file and Call Stack Tracing for information on interpreting the stack trace details. |
• | Some errors may log additional forensic details beyond what could otherwise be determined from the error code alone, so even if your programs log their own errors, you may find the ashlog traces useful. For example, in the case of subscript out of range (error #8), the ashlog trace will indicate the array index being referenced, along with the dimensionality of the array. Or in the case of out-of-memory (error #3) it will likely note the context of the memory request and the amount being requested. |