ESB Exception Management Framework
  • 28 Jul 2023
  • 10 Minutes to read
  • Dark
    Light
  • PDF

ESB Exception Management Framework

  • Dark
    Light
  • PDF

Article Summary

Errors and exceptions can occur in a range of contexts and during a number of different processing stages in an ESB. This section provides information about handling exceptions through the ESB Management Portal in BizTalk360. You can perform various operations like generate and receive ESB exceptions, view message information and properties, edit and resubmit the message, bulk submit the messages, and resubmit messages to HTTP WCF OnRamp etc.,

Generating and receiving ESB Exceptions

Once the ESB Exception database connection string has been configured, BizTalk360 allows you to query the exception database for the list of exception messages. BizTalk360 will pick up the exception messages from the exception database and display them in the UI. The transport layer in the BizTalk360 architecture is responsible to communicate with the ESB exception database in the BizTalk Server environment and fetch the exception information.
Follow the steps as shown below to query the exception database and retrieve the exception list:

  1. Log in to the BizTalk360 application
  2. Select an Environment from the Landing page
  3. Click the Administration tab in the Navigation panel
  4. Click the expand button next to the ESB Portal tab and select the ESB Exception Management link
  5. In the ESB Exception Management screen, under Build Query Expression
    • Maximum Records - Select the number of records to be fetched from the exception database. Ex. 10, 25, 50, 100....
    • Match - This option needs to be selected if any additional filter options are selected. By default, the value of this field is "All of the following"
    • Add a filter - To filter the results based on different parameters such as Application, Fault Code, Fault Category, Error Type, Severity, DateTime, Description, Exception Message, and Exception Stack Trace. Once the filter criteria are selected, you will automatically see the values for the filter getting listed in the drop down. Ex. Fault Code, Is Equal To, 6000. When Fault Code is selected from the drop-down, the value 6000 & other fault codes will automatically be listed in the drop down. The user can select the required value
    • X - To delete the filter criteria
  6. Click Execute Query to get the ESB exceptions list from the exception database
  7. The Query Results section displays the list of ESB exceptions

This example shows you how to generate ESB exceptions with filters set for Application and Fault code.

Filter Implementation for Grids

A Filter capability is implemented for the grid columns to do better search from the grid columns. A user can filter the data from the respective rows according to their needs.

The following types of filters have been implemented in the grid columns of the ESB Exception Management portal:

  • Date Time Filter
  • Text Filter

Date Time Filter

The Date Time filter is added to filter grid data based on the given selected date and time. This filter has below options for easy search:
• Is equal to
• Is not equal to
• Is after or equal to
• Is after
• Is before or equal to
• Is before
• Is Null
• Is not Null

Text Filter

This is the most commonly used filter. Using this filter, a user can perform text-based search. The text filter has the following options:

  • Is equal to
  • Is not equal to
  • Starts with
  • Ends with
  • Contains
  • Does not Contains
  • Is Null
  • Is not null
  • Is Empty
  • Is not Empty

Viewing the message information and message properties

When the ESB exceptions list is generated, the Fault Viewer window displays the list of messages that are referenced by the fault under the 'Messages' section. The message details are fetched from the exception database. The Messages section contains the Message ID, Interchange ID, Message Name and Content Type of the associated message.

To view the messages, follow the steps as shown below:

  1. Log in to the BizTalk360 application
  2. Select an Environment from the Landing page
  3. Click the Administration tab in the Navigation panel
  4. Click the expand button next to the ESB Portal tab and select the ESB Exception Management link
  5. Select the appropriate filter criteria (if any), and click Execute Query
  6. In the Query Results section, click the Properties icon (represented by an eye icon) to view the properties of the exception message
  7. In the Fault Viewer window, click the Messages tab to view the message information
  8. The Messages tab will display the list of messages referenced by the fault

This example shows you to execute an ESB exception query and view the Fault details, Exception details, and Message details of an error from the query results.

Viewing the Message Details

The Fault Viewer window displays the list of messages that are referenced by the fault. To view the Message Content/Context Properties and additional details, click the Properties icon (represented by the small eye icon).
To view the message details, follow the steps as shown below:

  1. Log in to the BizTalk360 application
  2. Select an Environment from the Landing page
  3. Click the Administration tab in the Navigation panel
  4. Click the expand button next to the ESB Portal tab and select the ESB Exception Management link
  5. Select the appropriate filter criteria (if any), and click Execute Query
  6. In the Query Results section, click the Properties icon (represented by an eye icon) to view the properties of the exception message
  7. In the Fault Viewer window, click the Messages tab to view the message information
  8. Click the Properties icon (represented by an eye icon) to view the Message Properties information. The Message Details screen contains the following information about the message:
    • General - The General tab contains the information about the message such as Message ID, Fault ID, Activity ID, Interchange ID, Content-Type, Message Name, Routing URL, whether Resubmit has been attempted, whether Resubmit has been successful or not, and so on
    • Context Properties - The Context Properties provide additional (detailed) information about the message
    • Message Content - The Message Content section contains the actual message. In this screen, users have the capability to Edit and Resubmit the message (since the message was not sent due to some error). Also, users can Download the message information as a File/Send it as Email

This example shows you to execute an ESB exception query and download the Message content to your local machine and email id.

Editing and resubmitting the message

To understand the process of editing and resubmitting a message from the ESB Portal in BizTalk360, let us consider this scenario. Let’s say, a send port that you are using in your application fails unexpectedly, both the service instance and the message become suspended and the fault information is written into the ESB exception database. In this scenario, it is possible for BizTalk360 users with permissions to Manage Message Content/Context (under User Access Policy) to edit the message and resubmit it to an On-Ramp (WCF On-Ramp, SOAP On-Ramp, Any other custom receive location that uses the 'BizTalk HTTP adapter).

  1. Log in to the BizTalk360 application
  2. Select an Environment from the Landing page
  3. Click the Administration tab in the Navigation panel
  4. Click the expand button next to the ESB Portal tab and select the ESB Exception Management link
  5. Select the appropriate filter criteria (if any), and click Execute Query
  6. In the Query Results section, click the Properties icon (represented by an eye icon) to view the properties of the exception message
  7. In the Fault Viewer window, click the Messages tab to view the message information. The Messages tab will display the list of messages referenced by the fault.
  8. Click the Properties icon (represented by an eye icon) to view the Message Details
  9. Click the Message Content tab to view the actual message content
  10. Click Edit to edit the message contents
  11. Click Cancel if you wish to discard the changes to the message content
  12. Once the changes are done to message content, select the Receive Location through which you want to resubmit the message
  13. Click Resubmit to resubmit the message on the selected receive location This example shows you to execute an ESB exception query and edit & resubmit a message from the query results.
You can also resubmit messages that were successfully submitted earlier. When you try to resubmit a message that was successfully submitted, the system will display a message that "This message is already submitted. Click Edit to resubmit this message once again.
From version 10.1 onwards you need to configure the HTTP Receive Locations in the ESB configuration section. With this only, the configured receive location will be listed in the ESB section for resubmission

Word Wrapping Option for Message Contents

BizTalk360 provides an option to enable word wrap for the message contents and search the message contents. 

  • In the Query Results section, click the Properties icon (represented by an eye icon) to view the properties of the exception message
  • In the Message Content section, a toggle is available to enable word wrapping for the message contents.
  • You can also search the message contents by clicking CTRL + F.
  • An option to copy the message contents is also available.

Bulk Submission of messages

In addition to editing and resubmitting individual messages, BizTalk360 offers an additional functionality to users to be able to Bulk Submit messages from the query results section of the ESB Portal. Let us consider a scenario when a fault has occurred over a duration of time and you want to bulk Submit the messages to that are referenced by the fault to the appropriate receive location in one go. All you should do is select the messages that you want to resubmit and submit them.
Follow the steps as shown below to perform bulk submission of messages:

  1. Log in to the BizTalk360 application
  2. Select an Environment from the Landing page
  3. Click the Administration tab in the Navigation panel
  4. Click the expand button next to the ESB Portal tab and select the ESB Exception Management link
  5. Select the appropriate filter criteria (if any), and click Execute Query
  6. Click the Select All checkbox to select all the query result items
  7. Select the receive location where you want to submit the message
  8. Click Submit to submit all the selected messages in one go
  9. The Message Submit pop-up window will display the status of the message submission process. If the message was submitted successfully, you will see the result as "Message has been successfully resubmitted". If the submission process was not successful, you will see the message as "Message cannot be submitted as previous submit is successful."

This example shows you howto execute an ESB exception query and bulk resubmit the query to SOAP OnRamp receive location.

Resubmitting messages to a HTTPS WCF OnRamp and Itinerary Headers

The following are supported in BizTalk360 for resubmitting ESB exception messages.

  • For SOAP and WCF on ramp, Text/HTML and Text/XML resubmit is supported
  • For HTTP receive location, Text/Plain and Text/XML resubmit is supported
  • For Itinerary SOAP and WCF on ramp, Text/HTML and Text/XML resubmit is supported

In BizTalk360, the HTTP Receive Location uses WCF OnRamp URL for message resubmission. In case if you want to resubmit the messages using HTTPs instead of using HTTP protocol for security purpose, you need to change the client binding in Web.config file.

To configure BizTalk360 to resubmit the messages using HTTPS, follow the steps below:

  • Open Web.config from \Kovai Ltd\BizTalk360\Web
  • Change the security mode to "Transport" for wsHttpBinding tag

ESB Fault Delete

To understand the process of deleting a message from the ESB Portal in BizTalk360, let us consider this scenario. A send port that you are using in your application fails unexpectedly, therefore both the service instance and the message become suspended and the fault information is written into the ESB exception database. Once the exception is corrected and resubmitted for further go, there may be two scenarios that will come into the picture:

  • Messages which are submitted successfully are residing in the ESB Exception database and are of no further use
  • Messages are rerouted to the ESB Exception database due to recurrent failure. In this specific case, the original message also available in the ESB portal

So far, there are no options available in the original nor the BizTalk360 ESB exception portal to delete such unwanted records (based on the business requirements). To provide that extended capability, in BizTalk360, we have an option “Delete” to clear the messages which are not required.

You can use this feature as described below:

  1. Log in to the BizTalk360 application
  2. Select an Environment from the Landing page
  3. Click the Administration tab in the Navigation panel
  4. Click the expand button next to the ESB Portal tab and select the ESB Exception Management link
    • Select the appropriate filter criteria (if any), and click Execute Query
    • Click the Select All checkbox to select all the query result items or any specific messages. Now, the delete button will get enabled for the deletion process
    • Click Delete to delete all the selected messages
    • If the message(s) are deleted successfully, you will see the result as "ESB Fault message(s) deleted successfully" and in case of a failure, the message shows as "Delete ESB Fault message(s) is cancelled".
    • The delete activities will be captured under Security -> Governance & Auditing -> ESB Messages Activities

You can also restrict the access of deletion for normal users via user access policies.

Differentiate Resubmit messages

To differentiate the resubmitted messages, we have provided two options.

  • Resubmitted Icon has been added, it will be available only if the message has been resubmitted successfully.
  • Filter, Resubmit Successful filter has been added so that we can easily filter the resubmitted messages alone.


What is new in BizTalk version 10.7?
In earlier versions, message resubmission was performed anonymously. However, with the introduction of version 10.7, users now have the option to resubmit ESB messages using client credentials. To enable this feature for HTTP resubmission, it is necessary to configure the HTTP receive location with authentication in the ESB portal under Environment settings. 



Was this article helpful?

ESC

Eddy, a super-smart generative AI, opening up ways to have tailored queries and responses