orkungedik/SAP-basis-dataset huggingface dataset:
## 6.3.2.4.15.5  AIF Monitoring
AIF (Application Interface Framework) enables you to monitor inbound and outbound messages in the ABAP environment and allows you to analyze communication issues.
## Procedure
First, you need to assign business roles to a business user and then to assign recipients to this user.
## Related Information
Maintain Business Roles and Business Users [page 3052]
Monitor Messages for Workflow Capability Integration [page 3052]
## 6.3.2.4.15.5.1  Maintain Business Roles and Business Users
As a preparation to monitor messages for background workflow processes, you create a business role and a business user.
## Procedure
1. Log on to the SAP Fiori launchpad as an administrator user.
2. With the Maintain Business Roles app, create and edit business roles and add business catalogs to the roles.
- a. To grant access to the Assign Recipients to Users app, add the business catalog Communication Management - Message Monitoring Configuration (SAP\_CA\_BC\_COM\_CONF\_PC) to a business role.
- b. To grant access to the Message Dashboard app, add the business catalog Business Network Integration (SAP\_CA\_BC\_COM\_ERR\_PC) to a business role.
3. With the Maintain Business User app, provide business users with access rights.
## 6.3.2.4.15.5.2  Monitor Messages for Workflow Capability Integration
You can monitor the background processes for workflow capability integration.
## Prerequisites
You have assigned business roles and business users.
## Context
With the Message Dashboard or Message Monitoring Overview , you can monitor and administrate the SAP Business Workflow background processing. You can manually trigger or cancel monitored background tasks that have issues.
AIF messages are deleted after a retention time, which can be configured in AIF customizing. The default value for all workflow-relevant namespaces and interfaces is set to 7 days.
## Procedure
1. Log on to the SAP Fiori launchpad as an administrator user.
2. With the Assign Recipients to Users app, assign the corresponding interface to a business user.
- a. In the Namespace field, enter the namespace /SWFCP for the workflow capability integration.
- b. Select the interfaces using the recipient names:
- REC\_PROC\_BGRFC (Process bgRFC)
- REC\_RAISE\_EVT (Recipient for raise of event)
- c. Choose the message types the user is allowed to view:
- Application Error or Technical Error
- Info
- Success
- Warning
- Application Error
- Technical Error
- None
For more information, see Assigning Users to Recipients.
3. To view the results, open the Message Dashboard app.
4. To view the triggered messages, use the Calendar Monitor to select the date range and choose Search .
5. Alternatively, view the results with the Message Monitoring Overview app.
The overview displays the interfaces and message types to which you're subscribed. To see more details, click a message type.
## Related Information
How to enable users to work with the message dashboard
## 6.3.2.4.16  Integrating Business Event Logging
## Context
There are two integration scenarios supporting data flow from Business Event Logging to the target systems:
- SAP\_COM\_0A54: This integration scenario is for data federation/extraction from Business Event Logging to target systems.
- SAP\_COM\_0532: This integration scenario is for data replication from Business Event Logging to target systems. You can use the schema API\_BusEvtLogEvent from SAP\_COM\_A054 communication scenario.
For more information on this communication scenario, see Integrating SQL Services using SAP Datasphere.
## 6.3.2.4.16.1  Prerequisites
- Create a communication user in the Maintain Communication Users app. For more information, see How to Create Communication Users [page 2710].
##  Note
Ensure that you use the same communication user for SAP\_COM\_A054 and SAP\_COM\_532 for replication scenario.
- Create a communication system in the Communication Systems app. For more information, see How to Create Communication Systems [page 2715].
- Create a communication arrangement in the Communication Arrangements app. For more information, see How to Create a Communication Arrangement [page 2712].
## 6.3.2.4.16.2  Consumption of Data
Data can be consumed using either External ODBC Clients or using SAP Datasphere:
Data Consumption using External ODBC Clients
For more information on data consumption, see Consumption of the SQL Service for Data Federation.
## Data Consumption using SAP Datasphere
For more information on data consumption, see Consumption of the SQL Service for Data Replication.
## 6.3.3  Technical Operations
Learn more about what you can do to operate your ABAP environment.
As an administrator in the ABAP environment, you need metrics and alerts to monitor the availability and performance of your systems. You also need an indication whether your purchased service volume has been exhausted. Therefore, the following metrics and alerts are particularly relevant for the ABAP environment:
- Utilization metrics for computing, storage, and network resources
- Performance metrics
- Exceptional situations such as aborted jobs or runtime errors
In the ABAP environment, you have different tools available to support you with your tasks.
## Local Monitoring
For local monitoring of your ABAP environment, you can use the technical monitoring cockpit. In the technical monitoring cockpit, multiple monitoring screens help you identify and solve bottlenecks and performance issues by giving you an in-depth view on important technical data of the database and application server, such as CPU, memory, network, storage, performance, time spent, workload, and configuration. You can use the technical monitoring cockpit also for a profound analysis of the most important entities, such as work processes, tables, SQL traces, and SQL statements.
For more information, see Technical Monitoring (Cloud).
## System Landscape Monitoring
For monitoring an entire system landscape, consider using a central monitoring and alerting infrastructure. If you use SAP Focused Run or SAP Cloud ALM for monitoring your system landscape, you can use the integrated health monitoring for the ABAP environment.
For more information, see Central Health Monitoring Using SAP Focused Run and SAP Cloud ALM [page 3087].
## 6.3.3.1 Common Tasks: Quick Reference
Learn how you can perform typical tasks during technical operations using the available apps in the ABAP environment.
## 6.3.3.1.1 Analyzing the ABAP Resource Utilization of the ABAP Environment
## Context
When you're planning, for example, system capacities or facing performance issues with SAP or partner cloud services running on the ABAP enviroment, you want to understand the resource utilization of your ABAP environment.
## Procedure
1. On the SAP Fiori launchpad of your ABAP environment, search for Application System Overview .
The technical monitoring cockpit opens.
2. To gain insights into the memory utilization of the ABAP application server, choose the Memory Utilization tile.
3. To gain further insights into the work process utilization of the ABAP application server, choose the Sampled Work Process Data: Backgr. Work Process Utilization and the Sampled Work Process Data: Dialog Work Process Utilization tiles.
A high load on the background work processes isn't critical if it's only for a short duration. If the background work process utilization is at 100%, jobs are started delayed.
For more information about the work process utilization screens, see Sampled Work Process Data: Background Work Process Utilization and Sampled Work Process Data: Dialog Work Process Utilization.
4. To gain more insights into the application workload of the system, choose the System Workload tile from the application system dashboard.
Click on any peak in the chart to get the top 10 most contributing ABAP requests in the System Workload: Details section.
System Workload
<!-- image -->
For more information about the System Workload screen, see System Workload.
## 6.3.3.1.3 Capturing ABAP Statistics Records to Analyze System Activities
Capture ABAP statistics records to find out which activities are running in your ABAP and database system.
## ABAP Request Statistics
By default, in the ABAP environment, requests are recorded with technical information, such as response time, program name, or CPU time. The resulting individual ABAP statistics records are written to the file system of the relevant tenant. ABAP statistics records are well suited to investigating the performance or resource consumption of a system or of a tenant in more detail, or, if performance problems occur, to identifying the area causing the problems.
## Use Cases
You typically use ABAP statistics records in the following scenarios:
- You want to investigate your system workload to find out about top consumers and investigate in detail the overall response time contributions or the database connections. In this case, you can use the ABAP statistics records that are captured by default and visualized in the System Workload app.
- For more information, see Navigating from System Workload to Single ABAP Statistics Records.
- You want to analyze a specific workload, for example, the request statistics of an individual user or program name at a particular time.
- For more information, see Capturing Request Statistics [page 3065] and Analyzing Captured Request Statistics [page 3068].
## Related Information
ABAP Statistics Records
## 6.3.3.1.3.2  Analyzing Captured Request Statistics
Get an overview of the request statistics that you have captured using the Capture Request Statistics app. View the server response time contribution or the database connections of a single request.
## Context
With the Capture Request Statistics app, you can define conditions for which request statistics are collected in the system (see Capturing Request Statistics [page 3065]). You can view the captured data by choosing the Analyze Request Statistics button that leads you to the Captured Request Statistics screen.
##  Note
Before ABAP statistics records are shown, they are captured and processed by a collector that runs every minute, so you must expect that captured request statistics are displayed with a delay.
## Procedure
1. In the Capture Request Statistics app, choose a profile for which you want to analyze the captured data.
2. Choose Analyze Captured Request Statistics .
The Captured Request Statistics screen opens. The captured request statististics shown are filtered; only the results for the selected profile are shown.
3. Analyze the data for different aspects like identifying expensive requests and their context (program name, transaction code, or path of an HTTP request), so that you can find the area causing performance issues or resource shortages.
For more information, see Captured Request Statistics.
## 6.3.3.1.4.1  Monitoring System Outbound Communication in General
Get an overview of the system outbound communication over time.
## Context
In the System Outbound Communication app, the top 10 communication scenarios by calling time are shown, which helps you identify obvious expensive outbound communication. The focus is on outbound communication of type RFC, HTTP, and Web service.
## Procedure
1. On the SAP Fiori launchpad of your ABAP environment, search for the Application System Overview app and open it.
## 2. On the dashboard shown, choose the System Outbound Communication tile.
The top 10 communication scenarios by calling time are shown, including the related communication arrangements. In the chart, the development over time is shown. Only customer workload using customer communication arrangements is displayed; SAP workload and SAP communication arrangements are filtered out.
<!-- image -->
3. In the chart, you can also click on a communication scenario at a particular time.
As a result, the table of communication arrangements is updated with the single communication arrangements at this particular time.
In this rather quiet test system, workload is low, but one communication scenario before 12 p.m. in the chart stands out with a long calling time.
<!-- image -->
4. To analyze such a specific communication arrangement in more detail, choose its entry from the list of communication arrangements.
The Communication Arrangement screen opens, where the selected communication arrangement with its related outbound services is shown. The chart indicates how the outbound services perform over time. You can now check whether calling time is distributed evenly or whether there are any outliers.
In the list, you can find the single ABAP statistics records for the top outbound-calling services. The records include the calling time, the amount of transferred data and the number of calls.
Again, in the example shown here, there's an outlier among the services that merits further investigation.
<!-- image -->
5. To show more details of a single ABAP statistics record, choose it from the list.
As a result, you navigate to the ABAP Statistics Record screen, where more details, such as the server response time and multiple subrecords are shown.
6. To see the details of the HTTP subrecord, choose HTTP .
2. Here, you can find the single outbound HTTP client calls that were made during the service request.
7. To drill down to even more details, choose an entry from the table of HTTP client calls.
4. You now get the HTTP client call details, including its calling time, and also the related communication arrangement.
## Results
The System Outbound Communication screen and its related drill-down screens are configured by default in such a way that they provide sample records of expensive system outbound communication. If you want to get a full set of ABAP statistics records for a particular communication arrangement with a long calling time, use the Capture Request Statistics app. With this app, you can capture request statistics relating to defined expensive outbound communication arrangements.
## Related Information
Capturing Request Statistics Relating to Expensive Outbound Communication [page 3073] System Outbound Communication
## 6.3.3.1.4.3  Getting Alerted About Expensive Outbound Communication Using SAP Cloud ALM
If you use SAP Cloud ALM to monitor your applications in a Cloud system landscape, you can also use health metrics to get alerted about expensive outbound communication.
## Prerequisites
You have SAP Cloud ALM set up (see Central Health Monitoring Using SAP Focused Run and SAP Cloud ALM [page 3087]).
You have captured request statistics relating to outbound communication using the Capture Request Statistics app, and you have selected the checkbox Health Monitoring in the relevant capture profiles (see Capturing Request Statistics Relating to Expensive Outbound Communication [page 3073]).
## Procedure
1. Log on to SAP Cloud ALM and call up Health Monitoring.
2. On the Health Monitoring dashboard for your ABAP system, check the metric Captured ABAP Statistics Records .
<!-- image -->
The number of captured ABAP statistics records that is shown in SAP Cloud ALM is the total number of captured records for profiles with the checkbox Health Monitoring selected.
3. If the number of records is above zero, you have a clear indication that there was expensive outbound communication in the ABAP system during the last 5 minutes.
4. Choose the Captured ABAP Statistics Records tile and then History .
On the History popup, you can find out how many records were captured by the profile that you've chosen and how the number of records changed over time.
##  Note
A high number of captured ABAP statistics records with a high calling time are an indication that the performance of outbound communication gets critical. Use the settings in SAP Cloud ALM if you want to get notified with an e-mail as soon as a critical number of ABAP statistics records have been captured.
<!-- image -->
## Results
You can now go to the System Outbound Communication app to analyze the expensive outbound communication in more detail.
## Related Information
Analyzing Expensive Outbound Communication Using the System Outbound Communication App [page 3077]
## 6.3.3.1.4.4  Analyzing Expensive Outbound Communication Using the System Outbound Communication App
With the System Outbound Communication app, you can analyze expensive outbound communication in detail.
## Prerequisites
You have set up a profile to capture request statistics relating to outbound communication using the Capture Request Statistics app (see Capturing Request Statistics Relating to Expensive Outbound Communication [page 3073]).
## Procedure
1. On the SAP Fiori launchpad of your ABAP environment, search for the Capture Request Statistics app.
2. From the list of capture profiles, choose the profile that you have defined to collect ABAP statistics records for expensive system outbound communication.
3. Choose the Analyze Request Statistics button. On the Captured Request Statistics screen, you can find all workloads that were captured using your profile in the Capture Request Statistics app. You can now investigate in more detail which service requests were responsible for expensive outbound communication and what details their ABAP statistics records contain, such as the related outbound HTTP, RFC, or Web service calls.
## Related Information
ABAP Statistics Records
## 6.3.3.1.5 Analyzing the Performance of SQL Statements Running on Your ABAP Environment
Learn how you can use SQL statement and trace analysis in the ABAP environment.
Data retrieval and modification via SQL statements is the main business of the SAP HANA database in your ABAP Environment. When you develop new applications, or when you operate applications productively, you want to analyze the performance of the SQL statements executed by your applications on the database.
When you analyze statement performance, you typically have one of the following scenarios:
- You are only interested in the performance of SQL statements of your application regardless of other SQL activity on your database.
- For this, you can use the SQL trace analysis in the technical monitoring cockpit to display and analyze SQL traces you have run with your ABAP Development Tools.
- You want to see the performance of SQL statements alongside the rest of the SQL activity on your database. The right starting point for this is the SQL statement analysis of the technical monitoring cockpit.
For each of the scenarios, we show you how to proceed here.
## 6.3.3.1.7 Capturing and Downloading PLV Files in the ABAP Cross Trace in ADT
Analyze the SQL statement execution in your system to identify potential bottlenecks or performance issues.
To do so, in the ABAP cross trace in ABAP development tools for Eclipse (ADT), you can capture PlanViz (PLV) files for SQL statement executions using the integrated HANA Plan Trace feature and download and view the PLV files in the SQL analyzer tool for SAP HANA.
## Procedure
1. To open the ABAP cross trace view, choose Window Show View Other ABAP Cross Trace in ABAP development tools for Eclipse (ADT).
2. Choose Create Cross Trace Configuration .
3. In the Request Filters section, enter your transaction criteria in the fields for User , Request Entry Type and Request Entry Name .
4. In the Components window on the right, make sure that HANA Plan Trace is selected and the Trace Level for this component is set to Verbose .
<!-- image -->
5. To start the trace for your user, choose OK . The generation of trace records will stop after the maximum number, which is set in the properties section, is reached.
6. On the Trace Results tab page, right-click on your user, choose Refresh , and you'll get an overview of the captured trace records for the duration the trace was running. The trace records that include a captured PLV file have a comment in the properties starting with TMO\_HPT: SADL\_PLV .
7. For details of a trace record, doubleclick an entry on the Trace Results tab page. In the tree, you find HANA Plan Trace results within the SADL Query nodes in SQL SELECT subnodes.
8. Choose a trace result entry named HANA Plan Trace . The properties for this entry are displayed in the Properties section.
9. Chose Content to display the PLV\_TRACE\_INFO .
<!-- image -->
10. Copy the URL displayed under PLV\_URI into your web browser and open it. This will start the PLV download.
11. To view and analyze the PLV files, open them in the SQL analyzer tool for SAP HANA (Visual Studio Code extension).
<!-- image -->
## Related Information
https:/ /help.sap.com/docs/HANA\_SQL\_ANALYZER
## 6.3.3.2 Monitoring the System Health
With health monitoring metrics, you can check the health of your ABAP system from an application and customer perspective.
Metrics are collected on a regular basis and give you an idea of the system health with a special focus on performance, events, configuration, and the quota used by the ABAP system.
For the ABAP environment, you can choose between central monitoring tools such as SAP Cloud ALM or SAP Focused Run and an SAP Fiori app for local health monitoring:
|                               | SAP Cloud ALM or SAP Focused Run                                            | SAP Fiori App                                                   |
|-------------------------------|-----------------------------------------------------------------------------|-----------------------------------------------------------------|
| Use cases                     | Monitoring multiple systems in a customer system landscape                  | Monitoring the local ABAP system                                |
| Prerequisites and constraints | SAP Cloud ALMor SAP Focused Run available                                   | Local monitoring of only the system where the user is logged on |
| Benefits                      | • Display of health metrics for multiple systems • Alerts and notifications | Overview of metrics on one single screen                        |
In addition to metrics provided by SAP, you can also define your own metrics for health monitoring using ABAP Development Tools. You can make these metrics automatically available in SAP Cloud ALM or SAP Focused Run.
## Related Information
Central Health Monitoring Using SAP Focused Run and SAP Cloud ALM [page 3087] Local Health Monitoring [page 3094] Health Monitoring Using Your Own Metrics [page 3099]
## 6.3.3.2.3 Health Monitoring Using Your Own Metrics
In addition to using the metrics for health monitoring provided by SAP , you can define your own applicationspecific metrics for the health monitoring of your customer and partner solutions running on the ABAP environment. The new metrics can be consumed by Health Monitoring in SAP Cloud ALM.
## Background and Use Case
As a customer or partner, you can use SAP Cloud ALM or SAP Focused Run to monitor the health of your systems. As part of the health monitoring in SAP Cloud ALM and SAP Focused Run, you get metrics defined by SAP that support you to watch technical issues such as the number of ABAP runtime errors, failed application jobs, or locked business users, for example, in the ABAP environment.
For your own customer or partner solutions running on the ABAP environment, you might want to define your own application-specific metrics to be able to monitor the health of these solutions. As a partner, you might also want to provide additional health monitoring metrics for your partner solution to your customers.
## Architecture Overview
<!-- image -->
To define, set up, and use your own metrics, you proceed as follows:
1. Using ABAP Development Tools (ADT), a developer at your customer or partner company defines the relevant metrics for your solution.
2. As an administrator, you schedule an application job using the Schedule Metric Provider Collection app. The application job collects the metrics that you have defined and stores the values in the generic metric store.
##  Note
Make sure that you schedule this job for the development system and all follow-up systems.
3. As an administrator, you define a communication arrangement based on the communication scenario SAP\_COM\_0527 ( Health Monitoring ) in your ABAP system. As a result, a technical background job pushes the measured metrics automatically to SAP Cloud ALM or SAP Focused Run.
## Related Information
Central Health Monitoring Using SAP Focused Run and SAP Cloud ALM [page 3087] Developing Metrics for Health Monitoring [page 1108]
## 6.3.3.3 Displaying and Analyzing ABAP Runtime Errors
With the ABAP Runtime Errors app, you can display and analyze the ABAP runtime errors that have occurred in your current tenant.
## Displaying ABAP Runtime Errors
When you open the app, you get a list of all ABAP runtime errors that have occurred in your current tenant and that have written a short dump.
You can search this list for certain dates and times, users, runtime errors, exceptions, and programs. In addition, you can filter the content of the list by using the corresponding filters.
##  Note
You can store the full content of an ABAP runtime error in a zip file on your local drive by choosing the Download button.
## Analyzing ABAP Runtime Errors
To analyze an ABAP runtime error, click on a row in the list. This takes you to detailed information about this runtime error:
- The General section shows a description of what happened, an analysis of the error and information on where the program terminated.
- The Source Code Extract section shows an extract of the ABAP source code where the error occurred. You can work in the source code now and return to the source code position where the error occurred at any time by choosing Go to Line with Runtime Error . Y ou can now choose whether you want to go to the ABAP code in the ABAP development tools for Eclipse (ADT) to debug or change the development object or whether you want to display the code read-only in HTML.
- The Active Calls/Events section lists the call stack with information on where the active calls and events occurred. From here, you can also navigate to the ABAP code in the ABAP development tools for Eclipse (ADT) or display it in HTML.
- Some HTTP requests from applications can result in failures that are recorded as ABAP runtime errors. For these cases you can find more information about the application call in the Application Information section.
## 6.3.3.4 ABAP System Sizing
This documentation describes the principles of how to perform system sizing for a custom application operated in the ABAP environment.
## About this Documentation
This documentation introduces you to the following:
<!-- image -->
- Sizing Fundamentals [page 3103]
- Sizing Preparation [page 3107]
- Measurements for Sizing [page 3110]
- Sizing [page 3114]
1. Sizing fundaments
You learn more about sizing occasions and methods, especially about expert sizing and how sizing works for scalable applications in the ABAP environment.
## 2. Sizing preparation
Important preparatory steps are to identify the business processes that are relevant for sizing and to define test cases for them.
3. Measurements for sizing You can perform measurements for sizing using the Capture Request Statistics app.
4. Sizing
You can use the Perform System Sizing app to perform the actual sizing of your ABAP system based on what you have measured before.
As the types of applications developed and operated in the ABAP environment are highly diverse, use this documentation as a rough guideline. This documentation assumes that in your business scenario, most business processes comprise the synchronous processing of single transactions. These business processes are the basis for measuring and calculating sizing values. If your business application mainly comprises other types of processing, for example, the mass processing of background jobs at specified dates and times, you need other sizing methods to achieve meaningful results.
This documentation focuses on the sizing of the ABAP layer. It doesn't include sizing for the SAP HANA database.
## 6.3.3.4.1 Sizing Fundamentals
Sizing describes the process of translating business requirements into hardware requirements.
Sizing determines resource requirements such as CPU processing power, physical memory, as well as disk and network bandwidth. The outcome is influenced by both business and technological aspects. This means that the number of users and their application usage is as important as the behavior of the application and the underlying technology stack.
## 6.3.3.4.1.2  Expert Sizing
As the ABAP environment is a platform-as-a-service offering, sizing in this context refers to applications that aren't standard SAP coding but are custom development of either an SAP partner or an SAP customer. This fact usually prevents the usage of the educated guess or t-shirt sizing method, as there's typically no reference available. This documentation therefore focuses on the expert sizing method.
Expert sizing involves the following steps:
1. Identify the sizing-relevant (main) business scenarios and their variable dimensions.
2. Determine the throughput requirements during defined time periods and their day-time distribution. As part of the requirement determination, separate scenarios that are time-critical from those scenarios that can be postponed to times with lower load.
3. Define test cases for each relevant scenario with a reasonable number of input parameters and assumptions. These test cases must be self-contained and idempotent, which means repeatable with a stable load profile.
4. Execute each test case in single-user mode to measure its individual workload profile.
5. Create sizing models based on the results of the previous steps.
6. Create a structured load analysis to verify and refine the sizing model regarding scalability aspects (mass user testing).
##  Note
This step isn't in the scope of this document.
7. To simplify the consumption of the sizing formulas resulting from expert sizing, you can also define and precalculate representative t-shirt sizes for the system.
##  Recommendation
Changes to the underlying technology stack (for example, configuration changes in the ABAP environment), as well as changes in the application behavior (for example, enhanced functionality in a
new software release) can invalidate your sizing results. We recommend that you validate from time to time whether the sizing is still adequate for your system workload.
## 6.3.3.4.1.4  Native Storage Extension for the ABAP Environment
You can use SAP HANA Native Storage Extension for selected database tables to save in-memory storage.
## SAP HANA Native Storage Extension
SAP HANA Native Storage Extension (NSE) is a general-purpose, built-in warm data store in SAP HANA that lets you manage less-frequently accessed data without fully loading it into memory. It integrates disk-based or flash-drive based database technology with the SAP HANA in-memory database for an improved priceperformance ratio.
For more information, see SAP HANA Storage Extension in the SAP HANA administration guide.
## Enabling Native Storage Extension for Selected Database Tables
When you create or alter database tables in the ABAP Development Tools, go to the technical table settings. In the Load Unit field, select Page Enforced .
## 6.3.3.4.2 Sizing Preparation
Before you start any measurements for system sizing, it's important that you prepare system sizing carefully.
Such preparations include first and foremost identifying the main business processes that use the custom application for which you want to perform sizing. As a second step, formulate test cases that you want to use for the actual measurements.
## 6.3.3.4.2.1  Defining the Sizing-Relevant Business Processes
Before the actual sizing, identify sizing-relevant business processes and determine the throughput requirements for each of these business processes.
## Context
##  Note
Examples used in this sizing documentation refer to the ABAP flight reference scenario of the ABAP RESTful Programming Model. For more information, see Downloading the ABAP Flight Reference Scenario.
## Procedure
1. Identify the main business processes of the application as well as their variable dimensions.
The main business processes included processes that are critical for the company, for example, from revenue, reputation, or legal perspective.
Examples of variable dimensions are the number of items in a sales order, or the number and size of documents uploaded by a user. It's unavoidable to make some assumption on these variables to limit the complexity of the resulting sizing model. As an example, it can be sufficient to assume an average of 10 items per sales order, instead of making items per sales order an input parameter of the sizing model.
2. Determine throughput requirements for each sizing-relevant business process, with its distribution over a typical business day. Determining throughput requirements also includes the separation of business processes that are time-critical from those processes that can be postponed to times of low load. For example, a background job performing some reporting activity can be shifted into non-business hours.
## Results
The resulting overview of sizing-relevant business processes can look as follows, for example:
Flight Reference Example: Sizing-Relevant Business Processes
| Business Process                                     | Load Type             | Process Executions per Minute                           | Criticality   | Variable Dimensions                         |
|------------------------------------------------------|-----------------------|---------------------------------------------------------|---------------|---------------------------------------------|
| Creation of a new travel request                     | HTTPS / User-driven   | 160 per minute during main business hours (8 amto 7 pm) | High          | Number of bookings per travel               |
| Approval of a travel re- quest                       | HTTPS / User-driven   | 160 per minute during main business hours (8 amto 7 pm) | High          | --                                          |
| Calculation and send- ing of metrics for re- porting | Batch Job / Scheduled | Once a day                                              | Low           | Number of travel re- quests created per day |
In this example, variable dimensions have been turned into assumptions to simplify the sizing model and to reduce complexity of the overall sizing procedure. For the flight reference example, we can assume an average of 2 bookings per travel (inbound and outbound flight). With eliminating this variable dimension, the only remaining input parameter of the respective business process is the number of process executions expected per minute.
## 6.3.3.4.3 Measurements for Sizing
After you've defined test cases for sizing-relevant business processes, you can now measure the workload that each business process generates.
##  Note
This section of the documentation describes the steps necessary to prepare and execute a single test case for a business process. To obtain a combined sizing of all relevant business processes (see Defining the Sizing-Relevant Business Processes [page 3107]), perform the steps described in this section for each business process individually and add up the results.
## 6.3.3.4.3.1  Measurement Prerequisites
To ensure meaningful and reproducible results, make sure that prerequisites for the test system and test organization are met before measurements for sizing are taken.
Before you start testing, check the following:
- The setup and configuration of the test environment should be equivalent to a production environment. As you only perform single user tests, the test environment doesn't need the same hardware resources, but make sure that the following is the same as in a production system:
- Software releases of all software components involved in the stack
- Settings of the application that influence its behavior, for example, Customizing settings that control internal data verification steps
- Moreover, prevent any concurrent workload that consumes a noticeable amount of resources during the test. Having some house-keeping jobs active in the background is unproblematic. You should, however, avoid that tests compete with other, resource-intensive business processes.
- The test environment should contain a defined amount of existing business data. The SAP HANA database can consume different amounts of resources in a system with no business data compared to a system with a significant amount of existing business data.
- All test cases should be executed with a specific test user. A dedicated test user makes it much easier to separate calls originating from the test case execution from other activities, for example, calls originating from measurement tools. This test user should have the same authorizations that a corresponding business user has in the relevant business process.
- Consider caching effects of the application. The initial load of an application can consume more resources than a later use of the same application. To ensure a measurement that considers caching effects, execute the business scenario once without capturing the workload and a second time with capturing it.
## 6.3.3.4.3.3  Executing the Test Cases
Instruct your testers to perform the steps described in the test cases to measure the workload for sizing.
## Prerequisites
Before testing starts, make sure that the following prerequisites are met:
- Testers have the authorizations that correspond to that of a business user.
- A capture profile exists, and it is set to Active (see also Defining a Capture Profile for Sizing [page 3111]).
- Testers perform their tests after the start time and before the end time defined in the capture profile.
- When you define and activate a profile, the start time of the profile must be later than or equal to now. The testers can start testing immediately. However, note that it takes up to two minutes before the records are processed by a collector job that runs in the background. Therefore, it can take up to two minutes until the first request statistics from your test are shown in the sizing app. In addition, it can take up to two minutes after the defined end time of the profile until all records have been processed and are shown in the sizing app.
## Context
The testers' system activities are captured to estimate the workload as a basis for system sizing.
## Procedure
1. Instruct your testers to execute the preparation steps as documented in Defining Test Cases for Sizing [page 3108].
2. Instruct your testers to execute the steps of the test case within the defined time period for testing.
3. After testing, wait for two minutes before you set the profile to Inactive again.
##  Note
If a profile is set to Inactive before the collector of the request statistics runs another time, all ABAP statistics records get lost that would have been captured with the last collector run.
## Results
The ABAP statistics records relating to the tester activities in the ABAP system have been captured. To ensure stable results, consider defining multiple capture profiles with different test times for one test case and repeat the measurement 2-3 times.
## 6.3.3.4.4 Sizing
After you have prepared measurements for sizing and a tester has executed the relevant test cases, you can now perform system sizing for each relevant business process.
With the help of the Perform System Sizing app, you can get sizing results for individual test cases in ABAP compute units. If you combine your results for all business processes, you can get a sizing for the overall business scenario.
## 6.3.3.4.4.1  ABAP Compute Units
When you order an ABAP environment in SAP BTP, the ABAP system size is specified in ABAP compute units (ACUs). One ABAP compute unit comprises the total ABAP memory usable by applications, the ABAP work process time per minute, and the ABAP CPU time per minute.
When you create an ABAP system, you must decide on the system size in ABAP compute units. One ABAP compute unit represents 16 GB.
The system consists of at least 2 application servers of the size of 8 GB each.
When you order 4 ACUs or more, the system consists of at least 2 application servers of the size of 32 GB each.
The memory limit for a single session is 4 GB, independent of the application server size.
## 6.3.3.6 Resilience
The resilience of your ABAP Cloud applications and your data provided by a set of SAP BTP ABAP environment features.
SAP BTP ABAP environment provides the following set of features to increase the availability and resilience of your ABAP cloud applications and your data:
- Both the infrastructures for ABAP systems and SAP HANA Cloud databases are set up across multiple availability zones.
- The infrastructures offer automatic restarts for critical components of the Application Server for ABAP , the HANA Cloud database, and connectivity components.
- In case of hardware failures, components are automatically rescheduled to other hardware (subject to availability).
- Enqueue locks are stored redundantly.
##  Note
SAP BTP ABAP environment provides protection against denial-of-service attacks via various defense mechanisms. These are continuously improved to keep a decent protection level. However, a full protection against DoS attacks cannot be guaranteed.
## 6.3.3.7 Backups
The ABAP environment relies on backups from SAP HANA Cloud:
- Backups are retained up to 30 days.
- The recovery point objective (RPO), which is the maximum data loss, is no more than 15 minutes.
- Backups are stored encrypted and redundantly in different availability zones.
##  Note
A point-in-time recovery requires a coordinated plan between you as a customer and SAP that clarifies the target point-in-time and the target time of execution.
You can initiate a restore via a service request by using component BC-CP-ABA . T o perform a restore, please provide the following information:
- The ID (GUID) of the ABAP environment service instance
- The target point-in-time to which the instance should be restored specified in coordinated universal time (UTC)
##  Caution
All data stored between the specified time and the time at which the service request is processed by SAP can't be retrieved.
##  Caution
A point-in-time recovery changes data stored in the ABAP environment service database only. Other data will not be changed, which may lead to inconsistencies with communication integration configurations or integrated services.
<!-- image -->
##  Restriction
In case of SAP-managed software updates that are part of scheduled maintenance, the target point-intime can only be set after the last software update.
## 6.3.4.1 Troubleshooting Tools
Apart from debugging, you can also use other troubleshooting tools, such as the Feed Reader view in ABAP development tools for Eclipse, ABAP Profiler as well as the SQL Explain and SQL Trace Analysis SAP Fiori apps.
## Feed Reader
ABAP Development Tools provides a dedicated view, the Feed Reader View, for runtime errors (ABAP short dumps) and gateway errors. See Feed Reader View.
## ABAP Profiler
## ABAP Trace
The ABAP Profiler allows you to examine the performance of your implemented business logic by using function modules and global ABAP classes. You can use the ABAP trace, which is the result of the ABAP Profiler, to identify runtime-intensive statements and to follow the hierarchy of program calls. See Profiling ABAP Code.
## ABAP Cross Trace
If you develop OData services or other ABAP functionality related to the ABAP RESTful application programming model , the ABAP Cross Trace gives you insights into the ABAP RESTful Application Programming Model runtime framework. This includes the processing of OData requests, for example in SAP Fiori applications, and contains functionality similar to the payload trace of SAP Gateway trace in SAP GUI.
## SQL Trace Analysis SAP Fiori App
With the SQL Trace Analysis app, you can access and analyze SQL trace records after you have used the SQL trace function of the ABAP performance trace in ABAP development tools for Eclipse. See SQL Trace Analysis [page 2726].
## 6.4.3.1 Updating Kyma Environment Plans
Update standard enterprise Kyma environment plans to build runtime plans.
## Prerequisites
- Assign entitlements for Kyma runtime with the build-runtime-aws , build-runtime-gcp , or build-runtimeazure plan to your subaccount. For more information, see Configure Entitlements and Quotas for Subaccounts.
## Context
You can switch from standard enterprise plans to build runtime plans within the same cloud provider. Options include:
- aws → build-runtime-aws
- gcp → build-runtime-gcp
- azure → build-runtime-azure
##  Note
You can't switch from build runtime plans to standard ones.
To switch plans, you must update your environment instance.
## Procedure
1. In the SAP BTP cockpit, navigate to your subaccount Instances and Subscriptions .
2. Go to Environments , and from the three-dot menu at the end of the Kyma environment row, select Update .
3. In the Update Instance window, choose the new plan, and select Update Instance .
## Results
You have updated your Kyma environment service plan.
## Related Information
What Is SAP Build?
## 6.4.5  Adding and Deleting a Kyma Module
To use a Kyma module, you must add it first. Use Kyma dashboard or Kyma CLI to do that. If you don't need the module anymore, delete it to save resources.
## Adding a Kyma Module
## Procedure
- Use Kyma dashboard
- a. Go to Kyma dashboard. The URL is in the Overview section of your subaccount.
- b. Choose Modify Modules Add .
- c. In the Add Modules section, check the modules you want to add, and select Add .
- d. Optional: At the module level, you can overwrite the default release channel for the modules you are adding. Under the Advanced options, choose your preferred release channel.
This process may take a while, depending on the number of modules. The operation was successful when the module status changes to READY .
- Use Kyma CLI
- a. Check the list of modules that are available to be added:
- b. Add a new module:
- To add a new module with the default configuration, use the following command:
- To add a module with your specific configuration, create a YAML file containing your module custom resource (CR) settings, and use the --cr-path={CR-FILEPATH} flag:
- To add a module with the specified release channel, use the -c {CHANNEL-NAME} flag:
```
kyma module catalog
```
```
kyma module add {MODULE-NAME} --default-cr
```
```
kyma module add {MODULE-NAME} --cr-path={CR-FILEPATH}
```
```
kyma module add {MODULE-NAME} -c {CHANNEL-NAME} --default-cr
```
To see if your module is added, run the following command.
kyma module list
## Related Information
Kyma Dashboard [page 88] Kyma CLI [page 90]
## Deleting a Kyma Module
## Procedure
- Use Kyma dashboard
- a. Go to Kyma dashboard. The URL is in the Overview section of your subaccount.
- b. Choose Modify Modules , and delete your module.
- Use Kyma CLI
- a. Check the list of installed modules:
```
kyma module list
```
- b. To delete your module, use the following command:
```
kyma module delete {MODULE-NAME}
```
You should see the following message:
{MODULE-NAME} module disabled
## Related Information
Kyma Dashboard [page 88] Kyma CLI [page 90]