A user exit is user-provided custom software,
written in C, to track data passing through message flows.
User-provided functions can be invoked at specific points during the life
cycle of a message while it passes through the message flow, and can invoke
utility functions to query information about the point in the flow, and the
contents of the message assembly.
The user exits can be invoked when one or more of the following events
occur:
- The end of a unit-of-work (UOW) or transaction (COMMIT or ROLLBACK).
- A message passes between two nodes.
- A message dequeued from the input source
In the basic message flow shown here, you can track
messages at two levels:
- Transaction level
- Node level
At the transaction level, you can track the following events:
- Messages being read into the flow
- Completion of the transaction
At the node level, you can track the following events:
- A message passing from one node to another
- Completion of processing for one node
Therefore, you can track four different types
of event, which occur in the following sequence:
- A message is dequeued from the input source (read into the flow).
- A message is propagated to the node for processing.
- Node processing is completed.
- The end of the transaction.