Tag archieven: Cloud

Monitoring your SAP CF app in SAP Cloud ALM

Introduction

SAP Cloud ALM provides services to perform Real User Monitoring (RUM) which combines data from various sources to see how apps are working and performing. RUM can be enabled using a npm package from SAP to send data to Cloud ALM via a destination.

Setup

Configure SAPUI5

In SAPUI5 you need to add a meta tag to your index.html:

<meta name="sap-ui-fesr" content="/fesr">

This enables SAPUI5 to send OpenTelemetry data to your /fesr endpoint in NodeJS.

OpenTelemetry@SAP

Configure the Approuter

In your xsapp.json you need to point the endpoint to the right destination which is your service api:

"routes": [ { "source": "^/fesr$", "target": "/fesr", "destination": "srv-api", "csrfProtection": false, "authenticationType": "xsuaa" } ]

Setup your Service layer

package.json:

In your service layer you need to add the fesr to otel and xotel-agent packages and configure them. The latest versions of the packages can be found here.

"@sap/fesr-to-otel-js": "https://73555000100200018064.npmsrv.cdn.repositories.cloud.sap/@sap/fesr-to-otel-js/-/fesr-to-otel-js-1.5.6.tgz",

"@sap/xotel-agent-ext-js": "https://73555000100200018064.npmsrv.cdn.repositories.cloud.sap/@sap/xotel-agent-ext-js/-/xotel-agent-ext-js-1.5.15.tgz", },

The start script for your the service layer also needs to be adjusted to use the xotel-agent. This means that the start script needs to be adjusted to:

"start": "node ${NODE_ARGS} ./node_modules/@sap/cds/bin/cds-serve.js",

You also need to add a server.js to your service layer which enables the forwarding of fesr data:

const cds = require("@sap/cds"); const fesr = require("@sap/fesr-to-otel-js"); cds.on("bootstrap", (app) => fesr.registerFesrEndpoint(app)); module.exports = cds.server;

mta.yaml:

In the mta.yaml the following parameters should be set for the service layer:

modules:

  • name: <service module name>

properties:

SAP_CALM_SERVICE_NAME: <application name>

SAP_CALM_SERVICE_TYPE: SAP_CP_CF

OTEL_RESOURCE_ATTRIBUTES: sap.tenancy.tenant_id=<your provider subaccount id>

NODE_ARGS: -r @sap/xotel-agent-ext-js/dist/common/tracer

Create a CALM datacollector Destination

A destination called “CALM_datacollector“ should be present in the subaccount looking like this:

Add a mtaext in Cloud TMS

Because the subaccount id of the OTEL_RESOURCE_ATTRIBUTES property is different for each environment (dev/acc/prd) this property needs to be updated for the ACC and PRD environments via a mtaext file in cTMS and should look like this:

_schema-version: "3.2"
ID: <id-of-your-app>-acc
extends: <id-of-your-app>

modules:

  • name: your-app-srv
    properties:
    OTEL_RESOURCE_ATTRIBUTES: sap.tenancy.tenant_id=<subaccount_id>

This file can be added via cTMS in the transport node configuration per application and version

Usage

After configuring RUM you should be able to see the data in CALM by going to “Operations->Real User Monitoring”. From there you can click through to the requests and see its monitoring data. The data found here combines frontend and service data for specific calls.

Share

SAP Fiori App uitbreiden? Gebruik Web IDE

Iedereen kent ze inmiddels wel, de standaard SAP Fiori apps. Gratis apps van SAP waarmee processen, zoals facturatie, inkoop en hr self-service, eenvoudig mobiel worden aangeboden. In de praktijk zien wij dat klanten toch vaak net iets anders willen. Dan kom je uit op maatwerk SAPUI5 apps, maar nu is er iets nieuws! Met SAP Web IDE, SAP’s nieuwe ontwikkelomgeving, kunnen standaard Fiori apps eenvoudig worden aangepast of uitgebreid. Met de juiste aanpak voorkom je zelfs problemen na updates.

In mijn blog “SAP Web IDE: de verbinder tussen business en IT” heb ik uitgelegd wat de SAP Web IDE kan en waarom je deze oplossing wil gebruiken. In deze blog leg ik uit hoe de SAP Web IDE gebruikt kan worden om de door SAP geleverde Fiori apps aan te passen naar uw wensen.

Op welke manieren kun je SAP Fiori apps uitbreiden?
De SAP Fiori apps zijn gebaseerd op de standaard SAP functionaliteit. Vaak voldoen deze SAP Fiori apps voor 95% en is er voor de overige 5% maatwerk gemaakt/gewenst?. Stel je hebt een fiori app maar die voldoet niet helemaal aan je wensen. Dan zijn dit je opties:

1. Een kopie maken van de Fiori App en deze aanpassen. Het nadeel is allefen dat toekomstige aanpassingen niet eenvoudig in de aangepaste app kunnen worden toegevoegd.

2. Zelf een app bouwen in SAPUI5. Dit is tijdrovend en de meeste SAP klanten proberen hun omgeving zo standaard mogelijk te houden. Waarom zou je zelf een app schrijven als er een standaard SAP app is die bijna voldoet?

3. Je kijkt of de benodigde extension points beschikbaar zijn voor jouw Fiori app. Bekijk hier de beschikbare extension points. Iedere app heeft een pagina waar de extension points besproken worden, je selecteert daarvoor de betreffende app en vind de info onder “App extensibility”.Extension points zijn speciale plekken in de standaard Fiori apps waar klanten eigen specifieke functionaliteit kunnen toevoegen aan de app. Extension points blijven stabiel wanneer er een update voor je Fiori app komt. Als deze extension points voldoen aan je behoefte kun je de Fiori app hiermee uitbreiden. De SAP Web IDE bevat verschillende hulpmiddelen om deze uitbreidingen eenvoudig te doen.

Wat zijn de mogelijkheden van extension points?
Het is mogelijk om een view en controller aan te passen. Hiervoor zijn verschillende extension points toegevoegd in de Fiori apps. Daar kun je extra functionaliteit aanpassen of bijvoorbeeld een veld verbergen of extra informatie toevoegen. Mocht de standaard OData service niet genoeg informatie bevatten om te tonen dan kan deze vervangen worden door een custom service. Hiermee is het mogelijk om andere data te tonen in je app dan beschikbaar was in de standaard Fiori OData service.

Hoe eenvoudig is het customizen van apps met extension points?
Via de Cloud Connector kan een Fiori applicatie als “Extension” project geladen worden in de Web IDE. Met Cloud Connector kun je vanuit het HANA Cloud Platform (HCP) een connectie maken naar je SAP ABAP systeem. Er is een speciale “Extensibility pane” in de Web IDE waarin je kunt zien welke onderdelen je precies uit kunt breiden.

SAP_Fiori_uitbreiden_SAP_Web_IDE1

 

Wanneer de aanpassing klaar is kan het nieuwe project op de on premise ABAP stack teruggezet worden maar het is ook mogelijk om deze te deployen op het HANA Cloud Platform.

Conclusie
Wanneer de behoeft bestaat om SAPUI5 te gebruiken loont het om eerst te kijken of er een Fiori app bestaat die (voor een groot gedeelte) voldoet aan de requirements. De Fiori apps laten zich eenvoudig aanpassen naar uw wensen. De SAP Web IDE maakt dit nog eenvoudiger door de extra toolset.

Share