# Monitoring integration performance with Event Monitoring

*Integration Architect Study Guide · Maintain Integration · Last updated October 16, 2026 · https://www.certifyforce.com/study-guide/integration-architect/maintain-integration/monitoring-integration-performance-with-event-monitoring*

Matching each integration symptom to the monitoring source that measures it: Apex Jobs and AsyncApexJob for queued work, API usage notifications and the Limits resource for allocation, the Concurrent Long-Running Apex Limit, Apex Callout, REST API and Bulk API 2.0 event log files for duration, PlatformEventUsageMetric for event delivery, and hourly versus daily log files.

- Certification: Salesforce Integration Architect
- Exam section: Maintain Integration
- Study guide: https://www.certifyforce.com/study-guide/integration-architect

**Official exam objective:**

> Given an integration maintenance use case, identify performance monitoring needs for integration requirements.

## What the exam expects

- Pick the monitoring source that measures a stated integration symptom, and reject sources that measure something else (inbound vs outbound, count vs duration, jobs vs events).
- Monitor queued and failed asynchronous Apex with the Apex Jobs page and `AsyncApexJob`.
- Alert on API consumption with API usage notifications, and track allocations with the REST Limits resource.
- Read the integration event log file types: Concurrent Long-Running Apex Limit, Apex Callout, REST API (`DB_TOTAL_TIME` vs `CPU_TIME`) and Bulk API 2.0.
- Trend platform event and change event delivery with `PlatformEventUsageMetric`, and choose hourly or daily log files.

Key terms: **event log file** (a CSV of one event type's activity, read through the `EventLogFile` object), **interval** (Hourly or Daily file schedule), **allocation** (the org's entitled usage per period), **long-running request** (synchronous Apex executing 5 seconds or more), **delivery metric** (events sent to external subscribers).

## Key facts

| Fact | Detail | Source |
|---|---|---|
| Queueable monitoring | Apex Jobs page or `AsyncApexJob` (`Status`, `NumberOfErrors`) | [Queueable Apex](https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_queueing_jobs.htm) |
| API usage notifications | Email past a % of allocation over set hours; up to 10 per org | [Manage API Usage Notifications](https://help.salesforce.com/s/articleView?id=platform.monitor_rate_limit.htm&type=5) |
| Limits resource freshness | Accurate within five minutes of consumption | [Limits (REST API)](https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/resources_limits.htm) |
| Long-running Apex threshold | 5 seconds; limit 1 per 100 licenses, min 10, max 50 | [Execution Governors and Limits](https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_gov_limits.htm) |
| Callout time excluded | HTTP callout processing time isn't counted toward that limit | [Execution Governors and Limits](https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_gov_limits.htm) |
| Apex Callout fields | `URL`, `TIME` (ms), `STATUS_CODE`, `SUCCESS` | [Apex Callout Event Type](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_eventlogfile_apexcallout.htm) |
| DB vs code | Compare `DB_TOTAL_TIME` with `CPU_TIME` | [REST API Event Type](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_eventlogfile_restapi.htm) |
| API Total Usage scope | Inbound SOAP, REST and Bulk API requests; no duration field | [API Total Usage Event Type](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_eventlogfile_apitotalusage.htm) |
| Event delivery metrics | Separate platform and change event metrics; no trigger or flow deliveries | [Monitor Platform Event Publishing and Delivery Usage](https://developer.salesforce.com/docs/atlas.en-us.platform_events.meta/platform_events/platform_events_monitor_usage.htm) |
| Bulk API 2.0 job outcome | `numberRecordsFailed`, `totalProcessingTime` from Get Job Info | [Get Information About an Ingest Job](https://developer.salesforce.com/docs/atlas.en-us.api_asynch.meta/api_asynch/get_job_info.htm) |
| Hourly file latency | 3-6 hours or longer; use daily files for complete data | [Using Event Monitoring](https://developer.salesforce.com/docs/platform/api-rest/guide/using-resources-event-log-files.html) |

## Check yourself

- Why can't API Total Usage diagnose a slow outbound callout?
- When should you compare `DB_TOTAL_TIME` with `CPU_TIME`?
- Why pair `PlatformEventUsageMetric` with the Limits resource?
- What does a concurrent long-running Apex limit of 50 imply?

## Sources

- [Get Started with Event Monitoring](https://trailhead.salesforce.com/content/learn/modules/event_monitoring/event_monitoring_intro)
- [Using Event Monitoring](https://developer.salesforce.com/docs/platform/api-rest/guide/using-resources-event-log-files.html)
- [EventLogFile](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_eventlogfile.htm)
- [Concurrent Long-Running Apex Limit Event Type](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_eventlogfile_concurrentlongrunningapexlimit.htm)
- [Execution Governors and Limits](https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_gov_limits.htm)
- [Apex Callout Event Type](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_eventlogfile_apexcallout.htm)
- [REST API Event Type](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_eventlogfile_restapi.htm)
- [API Total Usage Event Type](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_eventlogfile_apitotalusage.htm)
- [Bulk API 2.0 Event Type](https://developer.salesforce.com/docs/atlas.en-us.object_reference.meta/object_reference/sforce_api_objects_eventlogfile_bulkapi2.htm)
- [Get Information About an Ingest Job](https://developer.salesforce.com/docs/atlas.en-us.api_asynch.meta/api_asynch/get_job_info.htm)
- [Monitor Platform Event Publishing and Delivery Usage](https://developer.salesforce.com/docs/atlas.en-us.platform_events.meta/platform_events/platform_events_monitor_usage.htm)
- [View and Manage an Event's Subscribers](https://developer.salesforce.com/docs/atlas.en-us.platform_events.meta/platform_events/platform_events_get_subscribers_apex.htm)
- [Limits (REST API)](https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/resources_limits.htm)
- [API Request Limits and Allocations](https://developer.salesforce.com/docs/platform/salesforce-app-limits-cheatsheet/guide/salesforce-app-limits-platform-api.html)
- [Manage API Usage Notifications](https://help.salesforce.com/s/articleView?id=platform.monitor_rate_limit.htm&type=5)
- [Queueable Apex](https://developer.salesforce.com/docs/atlas.en-us.apexcode.meta/apexcode/apex_queueing_jobs.htm)

## About the full unit

The "Core concepts", "Exam traps" and "Worked scenario" sections of this unit, its 8 linked practice questions, and unlimited timed mock exams are included with the Integration Architect pack (USD $19): https://www.certifyforce.com/practice-exams
