Monitor Concurrent Asynchronous Requests

The concurrent asynchronous request limit is based on the number of message packs you subscribe to for the Oracle Integration instance. The limit is 50 concurrent requests per message pack, up to a maximum of 1000. When the limit is reached, all the additional requests will be queued for later processing. To avoid reaching this limit, consider creating a custom metrics chart to monitor your requests and set up an alarm to notify you when you have a backlog.

View Your Concurrent Async Request Limit

To see your concurrent async request limit:
  1. In the Oracle Integration navigation pane, click Observability, then Dashboards.
  2. Look at the concurrency limit for Asynchronous requests.


Dashboards page with Asynchronous requests highlighted

Create a Custom Metrics Chart to Monitor Async Request Count

Create a chart that shows you how many async requests (including scheduled) were triggered for your Oracle Integration instance.

  1. In the Oracle Cloud Console, open your Oracle Integration instance:
    1. Sign in to the Oracle Cloud Console.
    2. Open the navigation menu and click Developer Services. Under Application Integration, click Integration.
    3. Click an Oracle Integration instance to view it.
  2. Copy the OCID.
  3. Open the navigation menu and click Observability & management. Under Monitoring, click Metrics Explorer.
  4. If the query editor isn't open under the chart, click Edit queries.
  5. At the top right of the query settings, select Advanced mode.
  6. Make sure the compartment that's selected is the one in which your Oracle Integration instance is stored.
  7. In the Metric namespace list, select oci_integration.
  8. In the Query code editor box, paste the following query, replacing both instances of instance-id with the OCID you copied in Step 2.
    SchedulerTriggeredInstancesCount[1m]{resourceId = "instance-id", flowType = "SCHEDULED"}.groupBy(serviceInstanceOcid).sum() + NumberOfInboundRequests[1m]{resourceId = "instance-id", flowType = "ASYNC"}.groupBy(serviceInstanceOcid).sum()
  9. Click Update Chart.

If the chart shows that your concurrent async requests are close to your subscribed message pack limit, consider adding another message pack to your Oracle Integration instance.

For more information on custom metrics charts, see Viewing a Custom Metric Chart in the Oracle Cloud Infrastructure documentation.

Monitor Async Backlog

Oracle Integration provides a variety of metrics charts within the Oracle Cloud Console to help monitor and manage integrations.

To monitor the asynchronous processing backlog, you can use the Async Queue Depth metric.


Async Queue Depth metric

This metric is represented by AsyncInboundRequestsDepth, which measures the number of requests currently waiting in the asynchronous processing queue.

For more information about available metrics and chart configuration, see Available Metrics Charts and Oracle Integration Metrics for Custom Charts.

Create an Alarm to Monitor Async Backlog

Create an alarm that notifies you when you have an async backlog on your Oracle Integration instance.

Example 1: Create an alarm to be notified when an async backlog exceeds 100.

  1. In the Oracle Cloud Console Metrics Explorer, click Create Alarm.
  2. Enter a name and description for your alarm. For example:
    • Name: Alarm-AsyncBacklogProcessing
    • Summary: Sends an alert when the async backlog > 100
  3. Set Alarm severity to Warning.
  4. Change Trigger delay minutes to 5. This change ensures that the alarm is triggered only when the backlog remains high for more than 5 minutes.
  5. In the Query code editor, add the condition for the alarm to the end of the query. For example, if you want to be notified when your async backlog goes over 100, add >100 to the end of the query.
    AsyncInboundRequestsDepth[1m]{resourceId = "instance-id"}.groupBy(serviceInstanceOcid).mean() > 100
  6. In Alarm body, enter the message you want to include in the notification. For example:
    High concurrent async request warning. You might need to subscribe to additional message packs.
  7. Under Destination, set up how you want the notification to be sent. For example, if you want to send an email to yourself:
    1. In the Destination service list, select Notifications.
    2. Click Create a Topic.
    3. For Topic name, enter alarmTopic.
    4. In the Subscription protocol list, leave Email selected.
    5. In the Subscription Email box, enter your email address, or, preferably, a distribution list.
    6. Click Create topic and subscription.
    7. For Notification subject, enter Oracle Integration Service Limit - Concurrent async requests.

      You can leave the remaining settings as is, and click Save alarm.

      You'll receive a notification if the requests go above the threshold, with a subject similar to the following:
      Alarm: OK_TO_FIRING | WARNING | Oracle Integration Service Limit - Concurrent async requests | 2025-06-25T13:03:00Z
      You'll receive another notification when the requests fall back below the threshold, with a subject similar to the following:
      Alarm: FIRING_TO_OK | WARNING | Oracle Integration Service Limit - Concurrent async requests | 2025-06-25T13:05:00Z

    For more information on alarms, see Creating a Basic Alarm in the Oracle Cloud Infrastructure documentation.

Example 2: Create an alarm to be notified when a message count exceeds 80% of the total limit.
  1. In the Oracle Cloud Console Metrics Explorer, click Create Alarm.
  2. Enter a name and description for your alarm. For example:
    • Alarm name: High Async Queue Alarm
    • Alarm summary: Your async queue has exceeded 80% of its limit.
  3. Click Advanced mode.
  4. In the Trigger rule 1 section, create a trigger rule for the alarm:
    1. From the Trigger delay minutes list, select 1.
    2. From the Alarm severity list, select Warning.
    3. In the Query code editor field, enter the following to identify when your message count exceeds a specific percentage of its limit (for this example, when 80% of 50,000 messages is exceeded).
      AsyncInboundRequestsDepth[1m].max() > 40000
    4. In the Alarm body field, enter a message. For example:
      High Async Queue Size Alert. Consider assigning more message packs to ensure that no async requests will be rejected.
  5. Click Next.
  6. From the Destination service list, select Notifications.
  7. Select an existing topic or click Create a Topic to create a new one.
  8. In the Subscription protocol list, leave Email selected.
  9. In the Subscription Email box, enter your email address, or, preferably, a distribution list.
  10. Click Create topic and subscription.
  11. In Notification subject field, enter the email subject. For example:
    Async Queue Size Service Limit Exceeded

    You can leave the remaining settings as is.

  12. Click Next, then click Create.