DRA --> User's guide

Condition Handling

Every time a condition is raised, LE calls the Profile tool (DRA) with a certain event code. In response, DRA traces the condition and the name of the program that caused the exception.

In the case of a C++ program, DRA also traces every "throw" and every "catch". The trace message includes the name of the program that threw the exception, and the name of the program that caught the exception.

There are three condition handling events:
EVENT 101 condition raised
EVENT 103 unhandled condition
EVENT 127 condition promote

Example EVENT 101:

Event 101 - Condition raised
An object was thrown which was not caught by any catch clauses.
result code 41
condition raised by __DoThrow

Event 101 - Condition raised
CEE3206S The system detected a specification exception (System Completion Code=0C6)
result code 41
condition raised by std::_EBCDIC::_LFS_OFF::basic_streambuf::sputn(const char*,int)

Example EVENT 103:

Event 103 - Unhandled condition
CEE3206S The system detected a specification exception (System Completion Code=0C6)
result code 4
condition raised by std::_EBCDIC::_LFS_OFF::basic_streambuf::sputn(const char*,int)

DRA also takes a dump of the stack frame (DSA) and a dump of the instructions near the one that caused the exception.