The centerpiece of Oracle Cloud Infrastructure (OCI)’s integrated Observability and Management platform, OCI Application Performance Monitoring, is now generally available. It provides deep visibility into the availability and performance of applications and the ability to diagnose issues quickly to deliver a consistent level of service and user experience.
Oracle has been offering application performance monitoring solutions for well over a decade. These solutions include real user monitoring, service level management, and application management suites for on-premises infrastructure. But we’ve also offered a cloud solution since 2017. Combining these years of experience and working with partners and customers, we’re pleased to announce the general availability of our new OCI-native version of Application Performance Monitoring.
Businesses depend on their applications to deliver core business processes. As emphasis shifts to remote and online access, accuracy, speed, and consistency become paramount. Businesses need to take proactive steps to ensure that online customers can successfully access information and complete transactions promptly. OCI Application Performance Monitoring delivers four distinct capabilities that enable application administrators and DevOps engineers to get a true picture of every user’s experience. They create this picture by enabling monitoring of the multiple components and application logic spread across clients, third-party services, and backend computing tiers deployed on the cloud or on-premises.
Let’s listen to Lone Star College, ranked #1 in the US for online student enrollment. Their PeopleSoft Campus solutions and related applications service over 87,000 students across seven colleges, two university centers, and 10 other centers. During the pandemic, they tasked their admissions staff with managing an unprecedented number of schedule changes in short time windows. They improved student experiences by reducing application performance glitches by 90% and lowered their efforts and costs using Oracle’s Application Performance Monitoring solution.
Poor application performance impacts brand perception in the marketplace and the bottom line. APM implements a robust distributed tracing system as a service, tracking every step of every transaction with no sampling and no aggregation in microservices-based applications and legacy multitier architectures. Using APM agents, DevOps professionals can automatically enable tracing for older generation Java applications, which enables them to enjoy the benefits of modern observability commonly seen in cloud native environments, such as tracking events, traces, metrics, and logs through integration with OCI Logging Analytics.
Figure 1: With the APM trace explorer, you can see session details of a specific user.
Detailed instance-level transaction tracing enables granular visibility and control, including the following metrics:
All steps (spans) of all transactions (traces) all the time
Traces: Slow transactions, transactions with errors, and transactions that use specific resources, such as servers, data centers, and versions.
Spans: Page loads, ajax calls, service requests, JDBC, HTTP outbound calls, response time, user satisfaction, CPU usage, errors, SQLs, and other metrics, and segmentation of location (for end-users), tier, host, or server.
The service is built to accept 100% of the trace data. Some customers can choose to reduce the trace volume by sampling for cost-saving reasons, but technically there’s no reason to do so. Explore traces using an intuitive, strong Query-language-based UI with the following features:
Search using and, or, and regex on dimensions, such as service, operation, location, page name, host, and tier.
Aggregate, max, mean, and count of spans values group by dimensions
“Our customer-centric business relies on Oracle Cloud Infrastructure Application Performance Monitoring to deliver exceptional user experience by using a single pane of glass to trace application performance and drill down to root cause of the problem 20% faster.”
Roberto Zona, Managing Partner, Bridge Consulting, Kirey Group.
Delivering a great end-user experience is a tough job for any application manager. APM reduces this burden by providing end-user monitoring to track the actual experiences of each end user, all the time, no matter where and how they access the application.
Figure 2: OCI Application Performance Monitoring Real User Monitoring Dashboard
End-user monitoring includes the following key capabilities:
Browser instrumentation: Enables the collection of data from the browser to trace end-user performance from browser to app and measure true end-to-end user experience.
Session diagnostics: Each user session can be traced end-to-end and used for diagnostics. Helpdesk employees can use this capability to document problems that are otherwise hard to reproduce.
Combined with server-side tracing: The actions of each end-user are connected to the backend trace, enabling quick resolution to problems experienced by them. It also enables impact analysis for backend problems, allowing DevOps staff to prioritize issues affecting large groups of end-users.
Synthetic monitoring helps developers and operators to become proactive by preventing issues before users are impacted. You can schedule and script synthetic monitors to meet the requirements for application availability.
Figure 3: The synthetic monitoring dashboard showing successful and failed runs and load time breakdown
Synthetic monitoring includes the following key capabilities:
Capability to run scheduled scripted browser monitor (Selenium test scripts), browser monitor, scripted REST monitor (postman scripts), and REST monitor
Collect and retrieve HAR files and screenshots
Oracle-hosted vantage points (to run monitors from Monitoring service)
Automatic correlation of each monitor deployment with span data collected by APM agents to ensure that deep diagnostics and relevant trace data are easy to select.
Extensive collection of metrics from running monitors, including request performance metrics, network performance metrics, and error message capturing.
Metrics are also available in the Monitoring service UI
Visualize, set, and manage alerts.
To pinpoint failures or bottlenecks, having end-user metrics isn’t enough. APM also collects metrics from any component involved in delivering a service. APM data collection is compatible with cloud native open standards, including OpenMetrics and OpenTelemetry. Developers and administrators can take advantage of this feature to freely exchange metric data with external systems using data exporters, such as Prometheus, or write custom metrics source to have the exact metrics needed for optimal monitoring.
Customization allows customers to extend collected data to any other data available through managed beans (MBeans).
Figure 4: This APM App Server dashboard provides insights into Heap and Non-Heap usage and CPU metrics.
Out-of-the-box APM collects metrics from Java Virtual Machine (JVM), Tomcat, WebLogic Server, and the standard host metrics and pushes the metrics with standard and customizable dimensions (tags), similar to spans, to the Monitoring service. The instream metric calculation includes the following examples:
Average page load time and apdex (per page name)
Average response time of Service:operation, such as Accounts:getDetails, grouped by requesting service
Request rate per page group by locations
Count and max response time of invocation of a third-party service
You can also view and use these metrics in the APM dashboard.
Customers can look to the APM dashboard for all the metrics that have been collected and calculated and drill down when they see anomalies.
Figure 5: The Application Performance Monitoring Home dashboard can be fully tailored to your own needs.
Several standard dashboards come with APM, but customers can create their own widgets and include them in one of these dashboards or create dashboards for each application or specific users. Out-of-the-box widgets offer drill-down functionality into our Trace Explorer and synthetic test results. When creating widgets, customers can pull data from other sources in their tenancy compartment or combine with metrics from the Monitoring service and or Logging Analytics service.
“ESG has conducted a technical validation of Oracle Cloud Observability and Management Platform which provides end-to-end visibility to identify, locate, and resolve IT issues. We were impressed with the overall platform including the modern features and customizable dashboard in the Application Performance Monitoring service. Customers looking for these capabilities should take a close look at this solution from Oracle.”
Brian Garrett, Executive VP, ESG
You can find Application Performance Monitoring in the Monitoring and Diagnostics menu in the Oracle Cloud Console. The service is accessible through the Console, CLI, and REST API and is already available in all commercial regions, with Government regions coming soon.
We hope that you enjoy our new service! To learn more, visit the product page.