Fault handling in Oracle Integration Cloud (OIC)
Fault handling in Oracle Integration Cloud (OIC) is an essential mechanism for managing errors that occur during integration execution.
It is like fixing a problem when it happens so it doesn't go ignored.
Purpose
Instead of allowing an integration to fail silently,
fault handling logic executes recovery actions or notifies the appropriate persons.
Common techniques include:
- Email Notifications: Sending email about error codes, messages, and details to business or support teams for rectification.
- Audit Tables: Dumping error records and instance IDs into custom tables (such as ATP or DBAS) for periodic review and tracking.
- Generic Error Handlers: Building a single, reusable REST API integration for error handling that can be invoked by multiple other integrations to save time and avoid repetitive tasks.
- Bulk Record Handling: For high-volume data loads (like FBDI), failed records can be stored in a file and emailed to the support team for correction.
Types of Fault Hanndles in OIC
Scope Level
- Handles errors only for specific nodes placed within a designated "scope" or container.
- It is only responsible for nodes inside its scope; it will not handle errors from outside nodes.
Global Level
- Responsible for the entire integration.
- Acts as a final "catch-all" if no scope-level handler exists or if a scope-level handler fails to catch an error.
Note:
In nested scopes, an error is passed from an inner fault handler to the next higher-level handler. If it remains unhandled after passing through all scopes, it eventually reaches the global level fault handler.
Variable Management:
Assign vs Global Variable vs Data Stitch
- Assign: Used to create local variables and store values. It is limited to specific data types (string or fault) and is only accessible within the scope where it was created.
- Global Variables: Accessible throughout the entire integration and across multiple scopes. They support multiple data types, including string, boolean, date, time, number, and objects.
- Data Stitch: This specific action is required to assign, append, or remove values from a global variable, providing more flexibility than the standard "assign" action.
===============
FAQ
What is fault handling in OIC and why is it necessary?
Fault handling is a mechanism used to manage errors that occur during integration execution.
It is critical because it prevents errors from going unnoticed and allows for recovery logic or notifications to be sent to support teams.
What are some common fault handling techniques used in real-time integrations?
Email Notifications: Sending error codes and messages to business or support teams.
Custom Audit Tables: Dumping error records and instance IDs into tables (like ATP) for periodic tracking.
Generic Error Handlers: Creating a single reusable REST API integration for error handling that can be invoked by multiple other integrations to save time.
Error Files: Storing failed records from bulk data processes into a file and emailing it for rectification.
What is the difference between a Scope Level and a Global Level fault handler?
Scope Level: Only handles errors for the specific nodes contained within that scope.
Global Level: Responsible for the entire integration and acts as the final "catch-all" if no scope-level handler exists or if a scope-level handler fails to catch an error.
How does error propagation work in nested scopes?
When scopes are nested, an error that is not handled by an inner scope's fault handler is passed up to the next higher-level scope's handler. If it remains unhandled through all layers, it eventually reaches the global level fault handler.
What is the difference between the "Assign" action and using Global Variables with "Data Stitch"?
Assign:
- Used to create local variables restricted to string or fault data types.
- These variables are only accessible within the scope where they were created.
Global Variables:
- Accessible across the entire integration and multiple scopes. They support various data types including string, boolean, date, time, number, and objects.
Data Stitch:
- A specific action required to assign, append, or remove values from these global variables
======================
No comments:
Post a Comment