SAP Cloud ALM APIs for Operations

Objectives

After completing this lesson, you will be able to:
  • Discuss the concept of SAP Cloud ALM APIs for Operations
  • Summarize the concepts of SAP Cloud ALM Analytics API
  • Summarize the concepts of SAP Cloud ALM RAW Data APIs

The Concept of SAP Cloud ALM APIs for Operations

SAP Cloud ALM APIs make it simple to extend SAP Cloud ALM functionalities to provide new features, services and applications for your SAP application lifecycle. Designed for the Intelligent Suite, SAP Cloud ALM is an application lifecycle management platform that manages SAP solution landscapes. It ensures accelerated implementation and smooth operations of your end-to-end business solution throughout the entire lifecycle.

In the center of the integration possibilities of SAP Cloud ALM for Operations is the External API Management, which gives the opportunity to integrate external partner software and services:

Illustrative diagram showing the central role of External API Management in SAP Cloud ALM for operations, highlighting the integration possibilities with external partner software and services to extend functionalities and provide new features, services, and applications.

The External API Management connects SAP Cloud ALM with external services and applications and delivers built-in integration capabilities:

  • Watch and react on events from SAP Cloud ALM.
  • Trigger actions in external services.
  • Define subscriptions to external system exposing REST (Representational State Transfer) APIs.
  • Use built-in mapping for selected systems ServiceNow, MS Teams, etc.
  • Apply simple transformation payload rules to adapt to most of the external Application Lifecycle Management (ALM) tools.

The extensibility of SAP Cloud ALM using APIs includes various types of APIs, as illustrated in the following figure:

Depiction of four example APIs: SAP Cloud ALM APIs for Analytics, SAP Cloud ALM RAW data APIs, SAP Cloud ALM Resource Changes API and SAP Cloud ALM Event APIs as icons.

Some of the most important are:

  • SAP Cloud ALM Analytics API: Retrieve Aggregated Datasets. REST/OData API to access SAP Cloud ALM aggregated Data in time-series or table format (for example: get all the tasks closed per day for the last 5 weeks).
  • SAP Cloud ALM RAW data APIs: Manipulate Raw Data. OTLP (OpenTelemetry Protocol) Inbound and Outbound API to read/inject raw data managed by SAP Cloud ALM for Operations with OTLP (for example: get Health Monitoring metrics for my SAP S/4HANA systems).
  • SAP Cloud ALM Resource Changes API: Watch resources in application lifecycle management and you are notified when those resources are changed.
  • SAP Cloud ALM Event APIs: These APIs allow you to close an event situation and any open alerts and external tickets mapped to the event situation. Also extract status events of services belonging to business services. These status events are disruptions, degradations, and maintenances. They were either reported by SAP for Me and transferred to SAP Cloud ALM or they were created in SAP Cloud ALM directly.

Additional Information

SAP Cloud ALM Analytics API

SAP Cloud ALM for Operations has built-in use case specific analytics capabilities. However, customers often like to show the available data to their own taste in custom-built dashboards. This can specifically be useful when you want to show data from different use-cases in SAP Cloud ALM for Operations.

Hint

With this method, it is also possible to combine data from different monitoring tools, for example from SAP Focused Run and SAP Cloud ALM.

The SAP Cloud ALM Analytics API (Application Programming Interface) enables you to build dashboards and reports aggregating all types of data managed by SAP Cloud ALM for operations. SAP Cloud ALM Analytics API comes with OData (Open Data Protocol) and REST (Representational State Transfer) endpoints exposing analytics data: 

Flowchart illustrating the data flow between a third-party analytics tool like Grafna (including Grafana ALM plugin), SAP Cloud ALM, and SAP Analytics Cloud using REST and OData protocols.

Several third party analytics tools can be connected via the SAP Cloud ALM REST API. For Grafana, SAP is providing the SAP alm-plug-in-for-Grafana , which enables connecting to SAP Focused Run or SAP Cloud ALM and get data in table format or time-series format. The plugin is published as a public project in GitHub. The source code can be downloaded and the plugin must be assembled to be installed on a Grafana Instance.

Other tools like the SAP Analytics Cloud would use the OData interface of the SAP Cloud ALM Analytics API. The respective SAP Cloud ALM APIs are described in the SAP Business Accelerator Hub – SAP Cloud ALM Analytics API.

Raw Data Integration in SAP Cloud ALM for Operations

The SAP Cloud ALM Raw data API, for example, implements the OpenTelemetry protocol (OTLP) to provide access to the observability signals produced by SAP Cloud ALM. This API lets customers integrate their non-SAP products with SAP Cloud ALM:

  • With this API (Application Programming Interface), a third-party application, an open source or an in-house tool with access to the public cloud can send their own metrics, logs, and traces into SAP Cloud ALM. 
  • This API can be used to consume SAP Cloud ALM metrics, logs, and traces data from a third-party application, an open source, or an in-house tool.

The diagram illustrates the objectives and advantages of Open Telemetry (OTel):

OpenTelemetry (OTel) Goals and Benefits: Six icons representing key goals and benefits of OpenTelemetry, including open standards, consistency, observability integration, broad support, ease of use, and flexibility.

Created in 2019, OpenTelemetry (OTel) defines a single set of APIs and libraries to simplify the collection and transfer of telemetry data. The goals and benefits are:

  • Open Standard: Unified standard for creating and ingesting telemetry data.
  • Consistency: Consistent collection mechanism and format for metrics, events, logging, and tracing.
  • Observability integration: Centralized and flexible observability solution to integrate different monitoring tools across cloud and applications.
  • Broad Support: Capture relevant traces and metrics with specific integrations for popular frameworks and languages.
  • Ease of Use: Automatic instrumentation agents to collect without requiring any code changes.
  • Flexibility: Send observability data to any back-end with no specific vendor requirements.

OpenTelemetry provides a single, open source standard and a set of technologies to capture and export specific data from your cloud-native applications and infrastructure. Modern cloud-native applications are distributed, making the capture and export of telemetry data complicated. For more information, check the different information on the OpenTelemetry pages:

In order to make a system observable, it must be instrumented as show in the next graphic:

Flowchart illustrating the general usage of the OpenTelemetry Protocol: The application emits traces, metrics, and logs either directly to an analysis backend or by proxying through the OpenTelemetry Collector.

The code must emit traces, metrics, and logs. OpenTelemetry supports two primary methods of exporting data from your process to an analysis back-end:

  • Either directly from a process.
  • Or by proxying it through the OpenTelemetry Collector.

Data is transmitted using the OTLP (OpenTelemetry Protocol) implementation transport system over HTTP or gRPC. OTLP/HTTP uses Protobuf (Protocol buffers) payloads encoded either in binary or in JSON (JavaScript Object Notation) format. Telemetry refers to data emitted from a system. The data can come in the form of traces, metrics, and logs.

Metrics

Metrics are aggregations over a period of time of numeric data (a metric is a measurement captured at runtime).

OpenTelemetry has three metric instruments:

  • Counter: a value that is summed over time (similar to the Prometheus counter).
  • Measure: a value that is aggregated over time (a value over some defined range).
  • Observer: captures a current set of values at a given time (like a gauge in Prometheus).
Logs

A log is a timestamped text record, emitted by services or other components, either structured (recommended) or unstructured, with metadata.

While logs are an independent data source, they may also be attached to spans. In OpenTelemetry, any data that is not part of a distributed trace or a metric is a log. For example, events are a specific type of log. Logs are often used to determine the root cause of an issue and typically contain information about who changed what as well as the result of the change.

Traces

Traces record the paths taken by requests (made by an application or end-user) as they propagate through multi-service architectures, like microservice and serverless applications.

Traces track the progression of a single request, called a trace, as it is handled by services that make up an application. The request may be initiated by a user or an application. Distributed tracing is a form of tracing that traverses process, network and security boundaries.

Spans
A Span represents a unit of work or operation. It tracks specific operations that a request makes, painting a picture of what happened during the time in which that operation was executed.

The next Diagram illustrating the observability with OpenTelemetry@SAP through SAP Cloud ALM for Operation:

Diagram illustrating the observability with OpenTelemetry@SAP through SAP Cloud ALM for operations. It shows how both SAP-built SaaS applications and customer-built SAP PaaS applications are instrumented using Data Collection Instrumentation Libraries based on standard OpenTelemetry. The data from SAP-built applications is transferred to SAP Cloud ALM via the Data Collector Runtime service, while data from customer-built applications and Non-SAP Data Providers is sent directly to SAP Cloud ALM. Optionally it can then be send to SAP Focused Run and Non-SAP Data Consumers via Connectors..
Data Collector Runtime
SAP managed BTP service to decouple data provider and data consumer to avoid customer managed connectivity setup.
Data Collection Instrumentation
Library to be used in SAP SaaS and SAP PaaS applications containing standard OpenTelemetry, OpenTelemetry extensions and utility functionality.

OpenTelemetry enabled Inbound and Outbound APIs:

  • OpenTelemetry enabled Inbound APIs to integrate non-SAP data providers.
  • OpenTelemetry enabled Outbound APIs to integrate non-SAP data consumers.
  • SAP Focused Run Connector to forward data to SAP Focused Run.

The following diagram illustrating the observability with OpenTelemetry@SAP:

Diagram illustrating the observability with OpenTelemetry@SAP through SAP Cloud ALM for operations for Metrics, Logs and Traces.

OpenTelemetry is a powerful tool that offers a range of customer use cases, enabling seamless integration of data from various sources. One typical use case involves integrating data from an open source, in-house tool, or third-party tool. OpenTelemetry allows customers to easily collect and consolidate data from these different sources, providing a unified view and enabling efficient analysis and monitoring. Another valuable use case of OpenTelemetry is its ability to leverage the event processing and management capabilities of SAP Cloud ALM with new data sources.

OpenTelemetry also facilitates the export of SAP Cloud ALM data in the OTel format. This capability enables customers to extract data from SAP Cloud ALM and use it in other systems or tools that support the OTel format. This flexibility allows for seamless data exchange and integration with other monitoring and analysis platforms. Furthermore, OpenTelemetry enables the sending of metrics to SAP Focused Run. Metric data is sent or retrieved from SAP Cloud ALM via dedicated HTTP API end-points documented in the SAP API HUB.

The SAP Cloud ALM metrics/logs/traces API is used:

  1. To ingest new data in the different Monitoring scenarios of SAP Cloud ALM with the OpenTelemetry OTel format (PULL Mode).
  2. To read metrics accessible through the analytics API in the OTeL format (PULL Mode).

Log in to track your progress & complete quizzes