Application Performance Monitoring

Oracle Cloud Infrastructure Application Performance Monitoring (APM) provides application performance and observability solutions through a distributed tracing service to help achieve the best application experiences.

Achieve the Best Application User Experiences with Observability & Management (48:52)

How Application Performance Monitoring works

APM provides application observability through a distributed tracing service to help achieve best application experiences. This applies to microservices-based applications as well as legacy, multitier applications running on OCI, on-premises, or on other public clouds.

Observability events (spans, metrics, and log events) can be collected via OpenTelemetry tracers for any programming language. Enhanced APM agents for Java and .Net offer extended functionality for profiling, deep diagnostics, and metric collections of Java and .Net environments. APM Vantage Points collect rich observability events for executed monitors.

All telemetry data is sent to OCI APM customer-specific endpoints for processing through the APM distributed tracing service. Options to enrich/control events during processing produces traces for all application transactions, including application log messages and metric data into the APM datastore.

Status and key performance data are shown in the dashboard UI; diagnostic analyses can be done directly on the datastore via a very flexible and powerful Trace Query Language. Query results can be saved and stored as quick picks or reused for dashboard visualizations. Alarms created in Oracle Cloud Infrastructure (OCI) Monitoring are automatically shown in APM monitoring UI. Using machine learning, baselines for key performance metrics are automatically calculated and anomalies are shown in performance charts.

Application Performance Monitoring customer stories

See all customer stories

Use cases for Application Performance Monitoring

Real user monitoring

Delivering a great end user experience is a tough job for any application manager. APM reduces this burden by providing monitoring solutions to track the actual experiences of each end user all the time—no matter where and how they access the application. Browser instrumentation enables the collection of data from browser to app and measures the true end-to-end user experience. These capabilities enable system reliability engineers, IT operations staff, and application stakeholders to perform the following:

Session diagnostics
Trace each individual user session, end-to-end, for diagnostics. See what pages were opened and what UI components were clicked leading up to a user issue. Help desk employees can use this capability to document problems that are otherwise hard to reproduce. Application owners can see common user click paths and obstacles that might keep users from reaching important objectives in the application.

Page diagnostics
Tracing page activity means all page loads, page navigation, and individual updates (clicks) are measured and reported. Gain insights in usage; performance bottlenecks on a page in terms of the performance of individual AJAX calls; loading and execution of files, images, stylesheets, and JavaScript libraries. Get details on used screen sizes, if users need to scroll pages, and if they reload some content out of frustration.

JavaScript error analysis
Each JavaScript error that is detected on the browser is logged along the span for the browser activity. Automated mapping of source code to minified JavaScript files exposes exactly what function was exposed to the error and where it could be fixed in the code.



Service monitoring

Gaining visibility into all parts of your applications is critical. Due to the move to microservice-based architectures or extensions of legacy applications with microservices, it’s hard to pinpoint performance issues if application requests cannot be followed throughout the entire stack.

Observability events (spans, metrics, and log events) can be collected via OpenTelemetry tracers for any programming language, or you can use our enhanced APM agents for Java and .Net that offer extended functionality for profiling, deep diagnostics, and metric collections.

These capabilities enable developers and IT operations staff to perform the following:

Monitoring and alerting
Get automatic alerts on performance, availability, and load analysis based on a rich set of metrics enabled by instance-level observation, which traces each individual transaction.

Diagnostics
Find the exact execution details of any transaction in real time or over long periods with comprehensive instance-level diagnostics.

Exploration and analysis
Get insights into application behavior using a flexible query language. Filter and cluster trace data using out-of-the-box or custom dimensions for comprehensive analysis.



Security monitoring

Security is critical for every application. Monitoring activity from known bad actors and identifying different threat types is key to understanding potential threats. APM automatically integrates with Oracle Threat Intelligence Service to provide a comprehensive security monitoring solution.

This allows for reporting on malicious transactions, the impact they had on your services and infrastructure, and whether they ended up doing any SQL executions.

APM can also be used to report on what Java libraries were loaded, what versions you use in the application architecture, and check if any are exposed to known vulnerabilities.



Availability monitoring

Proactive monitoring helps developers and operators prevent issues before users are impacted. Availability monitoring provides the ability to run scheduled, scripted monitors to ensure application availability. These capabilities enable developers and IT operations staff to perform the following:

Browser and scripted browser monitors
Monitor a single URL or create scripts (.side files) via Selenium IDE and execute them from within APM to visualize potential problems and understand flows by collecting and retrieving HTTP Archive (HAR) files, screenshots, console logs, and network traces.

REST API and scripted REST monitors
Monitor a single REST API or create scripts (JavaScript file) via Postman to execute a sequence of dependent API interactions which can be used to monitor APIs used on custom applications, SaaS service integrations, or third-party applications.

TCP ping and DNS monitors
Monitor any infrastructure component, such as compute nodes and load balancers, to see if it’s available or test DNS services directly to ensure that record resolution and authority is resolved as expected.

Vantage Points
Execute monitors from multiple locations (Vantage Points), available in more than 75 data centers, both OCI and external. Or create your own Vantage Point either on OCI (Dedicated Vantage Point) or on anywhere using Docker (on-premises Vantage Point) to monitor applications and systems in secured environments.



Application Performance Monitoring capabilities

Real user monitoring

Provides insight into all user interactions with your applications, page loads, soft and hard navigations, clicks, and their respective response times.

  • Reports what components take a long time to load and what AJAX calls or loaded libraries contribute to load performance.
  • Provides information on geolocation, ISP bottlenecks, and if DNS and or SSL resolution contributes to performance.
  • Reports on screen sizes used and what the optimized screen resolutions are before scrolling is necessary.
  • Provides user session reporting capabilities, including page navigation path reporting.
  • Provides trace topology for all requests that are monitored, from front end to back end, across all application (micro)services.
  • Allows for custom metric reporting and machine learning to discover outliers and patterns.
  • Provides out-of-the-box UIs and dashboards for analytics.
  • Allows for long-term reporting and aggregation through Trace Query Language.
  • Allows for easy integration to data lake or Oracle Analytics Cloud.

Service monitoring

Provides observability events (spans, metrics, and log events) that can be collected via OpenTelemetry tracers for any programming language.

  • Provides enhanced APM agents for Java and .Net that offer extended functionality over OpenTelemetry tracers for thread profiling, deep diagnostics, and metric collections.
  • Offers out-of-the-box UIs and topology for tracing across (micro)services, following an applications request through the entire application architecture.
  • Allows for custom metric reporting and machine learning to discover outliers and patterns.
  • Provides out-of-the-box UIs and dashboards for analytics.
  • Allows for long-term reporting and aggregation through Trace Query Language.
  • Allows for easy integration to data lake or Oracle Analytics Cloud.

Availability monitoring

Availability monitoring provides the ability to run scheduled, scripted monitors to ensure application availability.

  • Provides multiple monitor types to test browser flows, API endpoints, http servers, TCP ping, and DNS servers at scheduled intervals.
  • Collects HAR files for individual resource reporting, network tracing, console and error logs, and screenshots for executed monitors.
  • Provides execution options from all OCI data centers and external data centers via public Vantage Points across the world.
  • Provides options to deploy Vantage Points for secured environments on OCI or any on-premises or other cloud vendor’s compute resources via Docker images.
  • Provides reporting options to calculate availability against set targets for SLA purposes.
  • Allows for custom metric reporting and machine learning to discover outliers and patterns.
  • Provides out-of-the-box UIs and dashboards for analytics.
  • Allows for long-term reporting and aggregation through Trace Query Language.
  • Allows for easy integration to data lake or Oracle Analytics Cloud.

Security monitoring

Out-of-the-box integration with Threat Intelligence Service data sources.

  • Reports on threat types and confidence scores.
  • Provides indication of what CPU and network resources are spent on specific threats.
  • Provides topology overview of what (micro)services were impacted by specific threats.
  • Allows reporting on loaded libraries in application stacks that were executed so they can be checked against known CVEs.
  • Provides out-of-the-box UIs and dashboards for analytics.

Application analytics

Built-in analytic capabilities and machine learning with strong Trace Query Language.

  • Allows for long-term reporting and aggregation through Trace Query Language.
  • Allows for custom metric reporting and machine learning to discover outliers and patterns.
  • Provides out-of-the-box UIs and dashboards for analytics.
  • Allows for long-term reporting and aggregation through Trace Query Language.
  • Allows for easy integration to data lake or Oracle Analytics Cloud.

Get started with Application Performance Monitoring

Blogs

Access Oracle APM’s blogs for best practices, tips, and techniques.

Hands-On Labs

Learn more about APM with these workshops.

Reference architectures

Learn Oracle’s guidelines for design, development, and implementation of APM solutions.

Contact sales

Interested in learning more about Application Performance Monitoring? Let one of our experts help.

Oracle Chatbot
Disconnected