TRACE=SIGHUP

Added December 2019

This setting is recommended for most situations. It generates messages indicating when a session shutdown is triggered by a SIGHUP (disconnect) or SIGTERM (kill) signal. For example:

26-Dec-19 10:02:58 [tsk:96643-53]<POS:CRTO:a4f> SIGHUP trapped on: TSKACA (fulano)

26-Dec-19 10:02:58 [tsk:96643-53]<POS:CRTO:a4f> (Waiting for kbd wait or tcki to generate error; tinstate=1, rlock=0)

26-Dec-19 10:02:58 [tsk:96643-53]<POS:CRTO:a4f> (Now in kbd wait; setting basic error #250)

26-Dec-19 10:02:58 [tsk:96643-53]<POS:CRTO:a4f> Trapped Basic Error #250 (Hangup signal (SIGHUP) received) at location counter A4F

26-Dec-19 10:02:58 [tsk:96643-53]<POS:CRTO:a4f> Call stack trace, from program LEDGER : ...

26-Dec-19 10:03:02 [tsk:96643-53]<POS:CRTO:bc9> SIGTERM trapped on: TSKACA (fulano)

26-Dec-19 10:03:02 [tsk:96643-53]<POS:CRTO:bc9> Out: Nodes Remaining = 74P/80L, 153230 reads, 84 writes, 39717 kbd bytes

26-Dec-19 10:03:02 [tsk:96643-53]<POS:CRTO:bc9> shut miame...

26-Dec-19 10:03:02 [tsk:96643-53]<POS:CRTO:bc9> Forced abort; qflock & miame shutdown complete.

 

Notes

•   SIGHUP (SIGnal HangUP) only occurs with SSH or Telnet connections, indicating that the connection between the server and client has been lost. The signal is typically trapped by A-Shell (see the various -h* switches in the Command Line Switches topic) in order to allow the program to complete any activity that it may be in the middle of. Since the session no longer has a client connection, it gets turned into a background process and may continue running that way until it stops for keyboard input or gets another error. Note during this period, the program is not aware of the change of status. Once it asks for keyboard input, A-Shell will generate error 250 to force the program to take some action to shut down, since it can't receive keyboard input without a connection.

•   Assuming TRACE=BASERR was active, the error 250 will generate its own trace message with details about the call stack.

•   Finally, assuming the session shuts down, you'll see the Out: line, possibly with a couple of confirming details as shown above.

•   If the log contains the SIGHUP message but no Out: message, that suggests the session failed to shut down (either because it went into a loop without any need for keyboard input), or due to some other malfunction deserving further investigation.