Oracle APEX: Oracle Integration Cloud (OIC) Monitoring Dashboard
Use-case: Having a dedicated support team overseeing Production instances is crucial for ensuring smooth operations and resolving issues promptly. To facilitate this, we provide the support team with access to the OIC Instance environment. However, some customers are hesitant to grant access and are looking for alternative solutions that allow monitoring and response without direct access. It is important to note that Production OIC instances often face failures due to factors like incorrect data or connection issues. In these cases, the support team can review error messages and alert the necessary teams for resolution.
Solution: I chose to create a simple web/mobile application using Oracle APEX to help the support team indirectly monitor OIC. By leveraging OIC’s REST APIs, I integrated various functionalities into the tool.
The app retrieves all its data in real-time from the OIC Instance using OIC REST APIs.
The application building process involves the following steps at a high-level:
- Various scenarios in the app are handled using OIC REST APIs.
- The OIC REST API is called through OAuth2.0, which is configured in Oracle APEX credentials.
- Oracle Packages & Procedures are used to call the REST APIs from the pages and store the data in temporary tables. These tables are deleted before fetching the data. This approach is followed to avoid consuming database storage and as anyways there is no need for support to monitor old data.
- The data is fetched in real-time when the page loads. Although it could be done on a button click, I have chosen this approach to reduce the workload for the support person.
Dashboard
The following items are displayed on this webpage:
- Requests Count: This indicates the number of requests that have been received, successfully processed, and failed.
- Integrations Status: This shows the number of integrations created in the instance, along with their respective status. By clicking on any of these statuses, you can view the list of integrations that are activated, configured, or in progress.
- Instance Status: This provides information about the number of instances and requests in the last 1 hour, along with their status. Clicking on the status will redirect you to the Instance Detail page.
List Integrations
This webpage displays the integrations that have been created in the OIC instance, including their current status and version number.
You can conveniently access additional information about the integration by clicking on the Integration Name, as shown in the example below:
Since my integration is currently “Activated,” I have the ability only to “Deactivate” it. Conversely, for integrations that are not activated, the option to only activate them is available.
In the same way, integrations that are not activated, the option to only activate them is available.
This feature has been added to cater to situations where support needs to deactivate and activate an integration.
List Connections
This webpage will display a comprehensive list of all the connections, along with the type of adapter utilized for each connection and the current status of each connection.
You can conveniently access additional information about the Connection like Authentication Mechanism employed, the number of active integrations utilizing it compared to the total integrations using the connection, and the presence of a Private Endpoint associated with the Connection will be displayed by clicking on the Connection Name.
List Lookups
This webpage provides you with a comprehensive list of LookUps that are currently available in the OIC Instance, along with their respective statuses.
You can conveniently access additional information about the LookUp like the total number of rows, the number of active versus total integrations the lookup is involved in, as well as the date created and details of the creator by clicking on the Lookup Name.
List Instances
This page displays a comprehensive list of instances that have been triggered, providing information on their respective statuses, execution dates, and instance IDs.
Provided the InstanceId only for instances that are errored out, to enable support investigate the issue and implement required solutions. You can conveniently access additional information about the error Instance by clicking on the InstanceId which provides additional details such as Error Code, Error Reason, and Error Message as displayed below.
Improved this page by adding a feature for downloading(.csv format) & printing(.pdf format) reports, allowing the support team to share error data with relevant teams for quick solution.
Audit Records
This webpage provides a comprehensive overview of the audit data for an OIC instance, including detailed information about the individuals who have activated specific integrations, connections, and other relevant activities.
NOTE: The OIC3 version is utilized for all OIC REST APIs.
Conclusion: Long story short, by implementing these measures, you can empower support teams to resolve any issues in a proactive manner. This strategy allows for effective monitoring and maintenance of the health and performance of your OIC production instances, all while safeguarding sensitive data and preventing unauthorized access.
!!Happy Learning!!