For anyone who has done performance and load testing in Oracle SOA suite, you know it can be frustrating and time consuming. However, our lives have just gotten much easier! Originally, quite a bit of manual work was needed to find or calculate how long composites took, what the problematic components were, and why instances just took too long. Fortunately, Oracle has introduced a new monitoring tool, Integration Workload Statistics (IWS). This tool creates a report very similar to an AWR report, but focuses on the SOA infrastructure. This feature was released with the new 12.2.1 version of SOA.
Integration Workload Statistics
The IWS report is intended for reactive monitoring of your system. Enterprise Manager provides a few different tools for monitoring real-time performance and other metrics, however IWS was introduced to post-process poorly performing periods. Running a report over a one hour period where performance is a constant issue allows you to see what components are causing delays. The report details out statistics on components, composites, processes, adapters, endpoints, queues and more!
IWS works by taking periodic, configurable snapshots of server metrics. These metrics are stored to the database and are available for reporting. The reports are generated based on a start and end time and further filtering can be done by server, partition, and even specific composites. Oracle has provided an easy way to view this data with a generated HTML report and they also provide a CSV file, or XML file with the data requested.
The report (assuming FINEST level collection) consists of:
- Snapshot Details - Basic information about the snapshots, the duration of the report, and server details.
- System Resource Usage - Statistics about JVM, SOA DataSources, and SOA WorkManagers. This gives insight into how much heap the server using, the active connections to data sources, and how many threads each of the work managers are using on each server.
- Composite (Roll-up) Statistics - This section covers statistics on endpoints and internal queues. Inbound and outbound endpoints are measured independently and the details are broken down by composite. The details include counts, latency, transactions per second (TPS), and fault counts. For the internal queues, both the BPEL SE Dispatcher and EDN Queues are included and details are also broken down by composite to include messages added, removed, closed, faulted, active, and backlog.
- Slowest Composite Endpoints - These statistics are broken down by inbound and outbound endpoints as well as per wire. The slowest composites are based on execution time and includes their type, composite name, usage counts, latency, TPS, and fault counts.
- Backups in Internal Queues - Additional details about the BPEL SE Dispatcher and EDN Queues broken down by process and event. This includes usage counts with added, removed, closed, faulted, active, and backlog tallies.
- Longest Running Business Processes - The longest running processes, by execution time, divided into async and sync processes. The report breaks down the execution times and usage counts for both types of processes along with dehydration, rehydration counts, and callback processing time for async processes.
- Most Time Consuming Business Process Activities - The most time consuming process activities based on execution time. This details the activity name, process and composite it is included in, component type, and usage counts including started, completed and faulted.
A sample HTML report is included here. The HTML report isn't the prettiest of reports, but it provides a detailed analysis of the workload statistics which are crucial for analyzing system performance. My favorite chart is the 'Most Time Consuming Business Process Activities' chart. It quickly details out which activities inside your BPEL process are the least performant.
The IWS report is a fantastic reporting tool to perform initial tuning at the composite, datasource, and queue level, but it is also a priceless tool for performing post-production analysis of high-load times. Performance is normally ignored until it is a problem, but now we have a tool for determining the cause! Thanks, Oracle!
For those interested in utilizing the Integration Workload Statistics, here are instructions on how to configure and generate the report:
The configuration is simple and can be changed during runtime.
1. Log into EM
2. Expand out the Target Navigation, expand the SOA Folder
3. Right click on 'soa-infra', go to Monitoring -> IWS Reports
4. From here, click 'Configure'
The configuration has a few different levels. These are based on the amount of data you want collected and how often. For performance testing environments, set to FINEST and select a low snapshot interval. In a new production environment, a BASIC, or NORMAL data collection level would be recommended.
Generating the report extremely simple and allows for just a few different parameters. You can specify the start and end date, the server name, partition, composite and the number of top results desired.
1. Navigate to the IWS Reports screen (soa-infra -> Monitoring -> IWS Reports)
2. Select the output desired (CSV, HTML, or XML) and it will be downloaded automatically
Need Some Help?
AVIO Consulting has a team of Oracle Fusion Middleware experts that can help you address the issues identified through the IWS tool. We would be happy to help you take control of your Oracle FMW platform and ensure you are getting the most out of your systems.
If you are unsure of how to address, resolve, and optimize your Oracle SOA Suite environments, click on the chat icon in the bottom right corner or click on the button below to get in touch.