Now accepting guest editorial from SAP, Oracle, Workday and ServiceNow practitioners.Pitch a guide
The Sign-Off Table

Lesson 4 of 5

Operating extensions

10 min

Listen to this lesson

0:00 / 8:42

An extension that nobody watches is a liability with a delay. When the fleet order status app fails at 6 a.m., someone must know before Great Lakes Fleet Services calls, and that someone must be able to see whether the problem is the app, the destination, the Cloud Connector or SAP S/4HANA. Operations must be designed with the extension, not added after go-live.

Observability in SAP Cloud ALM

SAP's DevOps reference architecture places operations in SAP Cloud ALM, described as a central observability platform for SAP products including SAP BTP, working with BTP's own local observability capabilities such as SAP Cloud Logging. SAP Cloud ALM for operations offers capabilities that map well to an extension landscape.

SAP Cloud ALM capabilityWhat it gives Contoso
Health MonitoringHealth of cloud services and systems with checks and trends
Integration and Exception MonitoringEnd-to-end view of messages, such as the ASN flow, and integration errors in real time
Real User MonitoringPerformance as Great Lakes users experience the fleet order status app
Synthetic User MonitoringScripted checks that run the app at intervals, even when nobody is using it
Job and Automation MonitoringStatus, runtime and start delay of background jobs the extensions depend on
Business Process MonitoringOrder-to-cash flow health across SAP S/4HANA and the extensions
Alerting and Intelligent Event ProcessingContext-rich alerts to the right team, with routing and correlation rules

SAP Cloud ALM for operations capabilities and their use for Contoso's extensions.

Business viewBusiness Process Monitoring: is order to cash flowing?
User viewReal and synthetic user monitoring: can Great Lakes users work?
Integration viewIntegration and exception monitoring: did the ASN reach the customer?
Technical viewHealth monitoring, logs and job monitoring: which component failed?
Four views of the same extension landscape. Alerts should point from the top view down to the cause.
The Sign-Off Table · thesignofftable.com/academy/sap-arc-203

Designing for resilience

SAP's connectivity documentation lists resilience practices for applications that use the Connectivity and Destination services: cache tokens and destination configurations for their validity period; retry failed calls with a delay that grows between attempts; set short connect timeouts and sensible read timeouts; use a circuit breaker so a failing dependency is not hammered; and paginate large result lists. On the network side, the Cloud Connector can run in a high-availability setup. For availability beyond a single region, SAP's multi-region reference architecture notes that BTP services are resilient across availability zones within a region by default, and that surviving a regional outage requires two subaccounts in separate regions and a deliberate design.

A circuit breaker stops hammering a failing back end and probes it again before letting traffic through.
The Sign-Off Table · thesignofftable.com/academy/sap-arc-203
Monitor lightlyInternal report apps: health checks and logs are enough
Harden the appFrequent but low impact: retries, caching, better error messages
Plan for the rare eventHigh impact, rare: documented fallback, multi-region only if justified
Invest firstHigh impact and likely: synthetic monitoring, alert routing, tested runbooks
Where to spend operations effort for each extension.
The Sign-Off Table · thesignofftable.com/academy/sap-arc-203

Operating integration content

Integration flows need the same care as apps. SAP's DevOps reference architecture lists the practices for SAP Integration Suite content: version the deployable content and its dependencies; keep environment-specific configuration and credentials separate from it; promote a tested version through the supported transport mechanism for its type; verify deployment status and run a smoke test in the target; and define rollback to a known version, including how to reconcile messages processed during the change. Contoso applies these to the ASN flow. Its runbook says which version is live, how to roll back and how to resend ASNs for deliveries posted while the flow was down, so Great Lakes Fleet Services never misses a shipment notice silently.

Contoso's run model for extensions

  • Every extension has a run owner, recorded in the extension register with its clean core level.
  • Alerts route to the owning team: app errors to Kenji's BTP developers, connectivity to Sam, ASN failures to the integration team.
  • A synthetic check runs the fleet order status app every 15 minutes in production.
  • Each alert type has a short runbook: what to check, how to recover, whom to tell.
  • Monthly review of incidents per extension feeds the design authority's keep-or-retire decisions.
Every alert goes to the team that can fix it, with a runbook that says what to check first.
The Sign-Off Table · thesignofftable.com/academy/sap-arc-203

What would you do?

The ASN integration flow occasionally fails when SAP S/4HANA is briefly unavailable during maintenance, and Great Lakes Fleet Services then receives no ASN. What design change fits SAP's resilience guidance best?

Key points
  • Design operations with the extension: owner, monitoring, alert routing and runbooks.
  • SAP Cloud ALM provides health, integration, user, job and business process monitoring plus alerting.
  • Build resilience in: caching, retries with backoff, timeouts, circuit breakers, connector high availability.
  • Multi-region resilience needs two subaccounts in separate regions and a deliberate design; use it when the impact justifies it.

Check your understanding · not graded

Lesson check

  1. 1. Which SAP Cloud ALM capability runs scripted checks of an app at regular intervals?

  2. 2. What does SAP recommend when a call to a dependency fails?

  3. 3. What is needed for an app to survive a regional outage on SAP BTP?

  4. 4. Why should every extension have a runbook for each alert type?