Correlation Management Tab

Topics:

The following sections describe Correlation Management in iWay Business Activity Monitor, and its requirements.

Correlation Management in iWay Business Activity Monitor

Correlation Management enables the tracking of long-running transactions across multiple channels or servers. These transactions are correlated as standalone transactions or as part of a correlation set for batch processing. Transactions are correlated using the user-defined correlation ID as single message processing can produce multiple sub-transactions with different Transactions IDs that need to be correlated together.

Set Correlation plays an important role during batch processing, where each transaction is correlated to a specific batch correlation set. The transaction correlation state can be updated at any point of the process. This allows transactions to be processed by multiple channels, where each channel can update the transaction state of a single transaction providing a unified view through the entire processing cycle.

Transaction overall state is denoted as open or closed, indicating the final transaction state. Transaction Details provide the transaction correlation history from the initial Open state to various Functional, Business, or Customized transaction updates. This is a key feature enabling the user to track the transaction through all correlation steps and identify actions performed by any given channel on a transaction.

The Correlation Management tab in iWay Business Activity Monitor enables the user to see the overall state of the transaction. It provides important information, such as Correlation ID, which is used throughout the transaction life cycle, as well as the overall state of the transaction and the Last Event which occurred for the given transaction.



The user can view additional information for the transaction by accessing TX Details (Transaction Details) which provides a detailed view into the transaction history. For example, the following image shows the correlation set being open for the batch transaction followed by linking of the four child transactions.



When looking at a singular transaction from the correlation management view, the user can see various updates to the transaction state. For example, the following image shows the transaction in the Open state since the routing country cannot be found for the transaction.



The user can drill down even further to investigate the error by clicking the associated transaction ID to see the details. The error is marked with a red flag, indicating in the transaction history where the country for the transaction cannot be set, as shown in the following image.



Application Requirements

To monitor correlation activity in iWay Business Activity Monitor, the application has to incorporate the use of correlation agents to manage the state of the transactions. Unlike the automated activity monitoring available in Activity Management of iWay Business Activity Monitor, Correlation Monitoring requires a set of correlation agents to be used as part of the application. For more information on Agents, see the iWay Service Manager Component and Functional Language Reference Guide.

The following agents need to be used in supplication to achieve the proper correlation process:

  • XDAddCorrelEntryAgent. Enables the user to add a correlation entry for the transaction either as a stand-alone correlation ID, a correlation set, or a correlation ID as part of the correlation set. This is the initiation state of the correlation.
  • XDUpdateCorrelEntryAgent. Enables the user to update any given correlation transaction (stand-alone or a correlation set) with any state change such as Business Ack, Close, as well as the customized comment for the correlation update.

The following is a sample flow of processing a batched transaction with correlation:

  • Receive a batch of transactions.
  • Create and open the correlation set for the received batch of transactions.
  • Iterate through each transaction using an iterator.
  • For each successful iteration, create and open a correlation ID for subtransaction within the correlation set. For example, CorrelSetName_TransactionCount (myset_1, myset_2, …)
  • Output the singular transactions to a staging area for another channel to pick up and process, such as a queuing system.
  • Second channel picks up singular transactions and processes them. If the process is successful, it will close the correlation ID associated with that transaction. If the processing fails, it will update the correlation ID for the given transaction with an associated error message and leave it in Open state.