Table of Contents

SAP Cloud ALM Health Monitoring

The **SAP Cloud ALM Health Monitoring** monitor retrieves health metrics from your SAP Cloud ALM tenant and publishes them into the monitoring 
system. 
It can also evaluate thresholds and raise alarms based on a selected measure per row.

Prerequisites

Network connectivity from the collector to your SAP Cloud ALM tenant API endpoint (e.g. https://your-tenant.api.xxx.hana.ondemand.com).

Cloud ALM Connector (required)

The monitor requires a Web Service connector with authentication type CLOUD_ALM. SAP Cloud ALM Connector

This connector is based on a service key of the SAP Cloud ALM API service instance in the BTP subaccount that contains your Cloud ALM entitlement.

The following OAuth scopes must be included in the instance parameters (in the authorities list):

Where to add the scopes

Even if you already created a service key for the ALM connector, you do not need to delete the instance.

  1. In the BTP Cockpit go to your subaccount → ServicesInstances and Subscriptions.
  2. Locate your SAP Cloud ALM API instance.
  3. Click the (three dots) menu next to the instance.
  4. Select Update to edit the instance.
  5. Click Next.
  6. Add the two scopes above to the authorities array in the parameters JSON and save.

API Endpoints used

Endpoint Purpose
POST /oauth/token Authentication (BTP UAA)
GET /api/calm-metrics/v1/metrics?provider=hm Retrieve health monitoring metrics

Key Features

Metrics Collection

The monitor can collect and publish the following measures for Cloud ALM health metrics:

Only usage is published with the PERCENT unit. The other measures are published without a unit.

Alarm Capabilities

Metric Publishing Behavior

The monitor supports both global and row-level metric publishing:

When Send all metrics is enabled, the monitor suppresses some datapoint groups that contain only zero values for the same metric/tag combination. This avoids storing empty technical noise that does not add useful monitoring information.

The suppressed groups are:

When row-level publishing is used, the monitor publishes the measure selected in Alarm on for matching rows.

Advanced Discovery

Configuration

Monitor Configuration

  1. Open the monitor configuration.
  2. Click the Load ALM Health Metrics button.
  3. The table will be populated with METRIC and SERVICE_NAME from your live Cloud ALM tenant.
  4. Activate the rows you want, define thresholds, choose Alarm on, and save.

Method 2: Wildcard / Manual Mode

Settings Reference

Field Description Default
Active Enable/disable this configuration row true
Service name Filter by service name (* = any) *
Metric Filter by metric name (* = any) *
Attributes Filter Optional filter applied to datapoint attributes before alarm evaluation / row matching (empty)
Alarm on Which measure to evaluate for alarms (NONE / USAGE / VALUE / OK_STATUS / WARNING_STATUS / CRITICAL_STATUS) USAGE
Thresholds Multi-level thresholds (G2W / W2M / etc.) G2W:80 W2M:90
Alarm tag Optional tag added to the alarm message (empty)
Exclusive If enabled, matching datapoints of this row can be consumed and not reused by later rows true
Alarm Enable/disable alarm creation for this row true
Send metric Publish the selected measure for this row when Send all metrics is disabled true
Send all metrics Publish all returned metrics and measures globally true

Attributes Filter

The Attributes Filter is an optional rule used to narrow down which datapoints a row can match.

When you use Load ALM Health Metrics, the discovered metrics also include the available datapoint attributes. This helps you see which attribute names are available for filtering.

It checks the datapoint’s attributes before the row is used for:

If the filter is empty or malformed, the row is not restricted by attributes.

Collected Metrics

All metrics are stored with the base key:

promonitor.cloud_alm.hm.*

Supported metric keys include:

Metric Key Unit Description Tags
promonitor.cloud_alm.hm.<metric>.usage % Current utilization percentage service.name, sap.service.name, service.namespace, service.instance.id, sap.service.display_name, plus datapoint-specific tags
promonitor.cloud_alm.hm.<metric>.value - Current measured value same as above
promonitor.cloud_alm.hm.<metric>.limit - Configured limit same as above
promonitor.cloud_alm.hm.<metric>.okstatus - OK status datapoint same as above
promonitor.cloud_alm.hm.<metric>.warningstatus - Warning status datapoint same as above
promonitor.cloud_alm.hm.<metric>.criticalstatus - Critical status datapoint same as above

The displayed metric name in the UI is:

<metric> (usage), <metric> (value), <metric> (limit), <metric> (okStatus), <metric> (warningStatus), or <metric> (criticalStatus)

Alarm Evaluation Notes

Examples

1. Publish all metrics for all services

No rows needed. Empty table = publish everything. Send all metrics = true by default.

2. Alarm on usage above 80% for all metrics

Active Service name Metric Attributes Filter Alarm on Thresholds Alarm tag Exclusive Alarm Send metric
true * * (empty) USAGE G2W:80 W2M:90 (empty) true true true

Alarms when usage crosses 80% on any metric for any service.

3. Alarm on usage for one service only

Active Service name Metric Attributes Filter Alarm on Thresholds Alarm tag Exclusive Alarm Send metric
true S4H.100 * (empty) USAGE G2W:80 W2M:90 (empty) true true true

Only datapoints for S4H.100 are evaluated. Other services not matched.

4. Alarm on ABAP work process usage with stricter threshold

Active Service name Metric Attributes Filter Alarm on Thresholds Alarm tag Exclusive Alarm Send metric
true S4H.100 ABAP.Workprocess.Usage (empty) USAGE G2W:70 W2M:85 WP_OVERLOAD true true true

Stricter threshold for work process usage only. Other metrics for S4H.100 not matched by this row.

5. Alarm on dialog work process usage only

The ABAP.Workprocess.Usage metric returns one datapoint per Wp_type (DIA BTC UPD UP2 SPO). Use Attributes Filter to target dialog processes only.

Active Service name Metric Attributes Filter Alarm on Thresholds Alarm tag Exclusive Alarm Send metric
true S4H.100 ABAP.Workprocess.Usage Wp_type:DIA USAGE G2W:70 W2M:85 (empty) true true true

Only datapoints where Wp_type = DIA are evaluated. Batch and update processes not alarmed.

6. Alarm on short dumps per client

ABAP.ShortDumps.Today returns one datapoint per Client. To alarm only on client 100:

Active Service name Metric Attributes Filter Alarm on Thresholds Alarm tag Exclusive Alarm Send metric
true S4H.100 ABAP.ShortDumps.Today Client:100 VALUE G2W:50 W2M:200 DUMPS_100 true true true

Alarm on = VALUE because this metric has no usage percentage. Threshold is a raw count.

7. Alarm on aborted batch jobs per client

Active Service name Metric Attributes Filter Alarm on Thresholds Alarm tag Exclusive Alarm Send metric
true S4H.100 ABAP.Batchjobs.Aborted Client:100 VALUE G2W:1 W2M:5 BTC_ABORT true true true

Alarms as soon as 1 aborted job appears in client 100. G2W:1 means any non-zero value triggers warning.

8. Alarm on HANA disk usage

Hana.Disk.Usage returns one datapoint per Usagetype (DATA LOG TRACE DATA_BACKUP etc.).

Active Service name Metric Attributes Filter Alarm on Thresholds Alarm tag Exclusive Alarm Send metric
true S4H.100 Hana.Disk.Usage Usagetype:DATA VALUE G2W:300 W2M:400 HANA_DISK true true true

Value is in GB. Threshold is a raw size. Adjust to your disk capacity.

9. Alarm on batch response time

ABAP.ResponseTime returns one datapoint per Tasktype (RFC Batch Update). To alarm on slow batch jobs:

Active Service name Metric Attributes Filter Alarm on Thresholds Alarm tag Exclusive Alarm Send metric
true S4H.100 ABAP.ResponseTime Tasktype:Batch VALUE G2W:2000 W2M:5000 SLOW_BTC true true true

Value is in ms. G2W:2000 = warning above 2 seconds. W2M:5000 = major above 5 seconds.

10. Alarm without publishing metrics

Active Service name Metric Attributes Filter Alarm on Thresholds Alarm tag Exclusive Alarm Send metric
true * * (empty) USAGE G2W:80 W2M:90 (empty) true true false

Send metric = false: alarms fire but no datapoints written to time-series.

11. Two services with different thresholds

Active Service name Metric Attributes Filter Alarm on Thresholds Alarm tag Exclusive Alarm Send metric
true S4H.100 ABAP.Workprocess.Usage (empty) USAGE G2W:70 W2M:85 S4H_PROD true true true
true * ABAP.Workprocess.Usage (empty) USAGE G2W:80 W2M:95 (empty) true true true

Row 1 consumes S4H.100 datapoints (Exclusive = true). Row 2 applies a looser threshold to all other services.

12. Suppress a metric from alarming and publishing

DataCollector.Version and ABAP.Version are informational metrics that report 0 and should not alarm.

Active Service name Metric Attributes Filter Alarm on Thresholds Alarm tag Exclusive Alarm Send metric
true * DataCollector.Version (empty) NONE G2W:80 W2M:90 (empty) true false false
true * ABAP.Version (empty) NONE G2W:80 W2M:90 (empty) true false false
true * * (empty) USAGE G2W:80 W2M:90 (empty) true true true

Rows 1 and 2 consume the version metrics (Exclusive = true, Alarm = false, Send metric = false). Row 3 handles everything else.

Troubleshooting