The following assumes traditional error handling.
If structured error handling is used (first introduced in OpenEdge 10.1C), also refer to article
How to log the line number of code that raises an error when using structured error handling.
Starting in 9.1D01, the Client Logging startup parameters(should be setup at Client side) -debugalert and -clientlog were introduced. Using the client session's -debugalert -clientlog startup parameters output the same DEBUG ALERT 4GL stack trace information; including procedure name and line number; to the specified client log file whenever an error is raised.
-clientlog allows any client session to write to a log file, before it was introduced only AppServer/WebSpeed agents could do that.
Use the
SESSION system handle
DEBUG-ALERT attribute or the
SESSION's -debugalert startup parameter.
In an interactive session, executing the statement:
SESSION:DEBUG-ALERT = TRUE.results in all alert boxes (for errors and for MESSAGE .. VIEW-AS ALERT-BOX statements) getting a
HELP button if an error occurs. Clicking this
HELP button lists the
DEBUG ALERT stack trace that identifies the procedure and the line number where the error was generated.
When an error occurs in a session with both
-clientlog -debugalert specified, Progress records the 4GL stack trace information along with the error in the specified log file. For AppServer and WebSpeed agents, these go to the <servername>.server.log