- 11 Sep 2020
- 3 Minutes to read
- Print
- DarkLight
- PDF
Reprocessing
- Updated on 11 Sep 2020
- 3 Minutes to read
- Print
- DarkLight
- PDF
Overview
When a message from a downstream system is invalid or has issues with data, functional support teams will have two choices. Either they can request the source system to resend the message, or they can reprocess it by resubmitting the inbound message. The former option is time-consuming as it involves communication between the source system support teams and integration functional support teams. The latter option is much more convenient and time-saving, especially when addressing real-time mission-critical issues.
Serverless360 BAM brings the ability to correct and reprocess messages by submitting to following endpoints:
1. Http Web Endpoints
2. Azure Service Bus Queue
3. Azure Service Bus Topic
4. Azure Event Grid
Configure Reprocessing
In Serverless360, failed transactions can be reprocessed. This can be achieved by configuring Reprocess at a stage. The following steps must be followed to configure reprocess at stage level.
Click the Edit Transaction Configuration button which will be present on the top of the Business Process Configuration Page
Click the Edit icon which will be present in the stages of the transaction
Click on the Configure Reprocess link in the Edit Stage Blade
Click Select to select the available Endpoint types
- After selecting the Http Endpoint as Endpoint Type, will prompt you to enter the Uri and you have to select the respective method type as either PUT or POST. You can also able to Add or Remove headers.
- After selecting Azure Service Bus Queue as Endpoint Type, will prompt you to enter Service Bus Connection string and Queue name. You can also specify the user properties and system properties.
- After selecting Azure Service Bus Topic as Endpoint Type, will prompt you to enter Service Bus Connection string and Topic name. You can also specify the user properties and system properties.
- After selecting Azure Event Grid as Endpoint Type, you need to mention Topic endpoint, Topic key, Subject and Data version of the respective configuration. You can also specify the event type if its necessary.
Enter the appropriate details, click Add and Save to save the reprocess configuration for that stage.
Finally click the Save button to save the Edited Transaction Configuration
Reprocessing Failed Transaction
Once all the configuration is done, go to the BAM section and select a failed transaction as shown below.
On clicking the tracking data, you will see a graphical flow in a blade as shown below.
When you click the Reprocess button, you will be directed to a blade in which you will be allowed to edit the archived message or reprocess configuration and reprocess it to the respective configured Endpoint Type.
Dynamic Reprocessing
Dynamic reprocessing can be useful when the user wants to reprocess along with the tracked property values as header. This can be achieved by providing the name of the tracked property against the required Reprocess setting as shown below
{Property Name}
E.g {orderId}
These properties can be used for the following reprocess settings of the stage
- URL and headers for HTTP endpoint
- System and Custom properties of Service Bus Queue and Service Bus Topic messages
- Subject, Event Type and Data version for Event Grid
Let us consider a scenario, where the value of Id property must be sent as a HTTP header to an HTTP endpoint. To achieve this,user can provide the header key as id and Value as {id}.
When a transaction instance is reprocessed, the value of the tracked property Id will be sent to the HTTP endpoint.
This can be seen in the message headers archived in one of stages in the child transaction instance.
Bulk Reprocessing
For Bulk reprocessing of messages, you need to map a reprocess setting of a particular stage to that respective transaction.
After mapping the reprocess settings, you can reprocess multiple transactions from the BAM UI, by selecting the required transactions and click Reprocess.
This will reprocess the respective selected transactions and it will provide the respective reprocess results.
Hide Sensitive HTTP Headers
When the Reprocess settings of a transaction configured with HTTP endpoint, there may be some cases where highly secured informations like tokens or passwords would be sent in the headers to that HTTP endpoint. These secured informations must not be shown to the users who reprocess the appropriate transactions. This can be achieved by marking the required HTTP headers as sensitive as shown below:
The header values marked as sensitive will be masked to the users who reprocess the transaction and those header values cannot be deleted or updated.