Troubleshooting Tools for RAP-based Apps
Find learning resources about troubleshooting options and tools for apps built with the ABAP RESTful Application Programming Model (RAP) in the ABAP Development Tools (ADT).
About the ABAP Development Tools for Eclipse
The ABAP Development Tools for Eclipse (ADT) is the integrated development environment on the well-known Eclipse platform for all standard ABAP development, quality assurance, and supportability tasks, both on on-premise (as of release 7.31) and in the cloud. In addition to traditional ABAP development, ADT provides full support for development with ABAP Core Data Services (CDS), ABAP Managed Database Procedures (AMDP), and the ABAP RESTful Application Programming Model (RAP).
Advanced quality assurance options are offered by tools such as ABAP Unit and test double frameworks for automated testing, and the ABAP Test Cockpit for local and remote static checks. For supportability purposes, a set of troubleshooting tools – such as the ADT Feed Reader, ABAP runtime Error Log, and the ABAP Debugger – is available in the form of Eclipse-based views that help ABAP developers analyzing semantic, functional, and performance issues arising in their custom code.
More information on the functionality and usage of ADT within the core development scenario can be found in the ABAP Development User Guide. This Guide focuses particularly on use cases for creating, editing, testing, debugging, and profiling development objects in an Eclipse-based IDE.
ADT Troubleshooting Tools
The Feed Reader view in ADT is used to read and display feeds from ABAP repository or other native feeds. It includes ABAP short dumps and system messages. It is the central view for error analysis of runtime errors in the context of SAP BTP ABAP Environment and SAP S/4HANA Cloud ABAP Environment.
The ABAP Runtime Error Log viewer provides well-structured and detailed information for localizing and understanding ABAP runtime errors.
Provides detailed context information about errors that have occurred in OData services at runtime - i.e. in the SAP Gateway Foundation - and facilitates the navigation to the affected source code where you can make the necessary corrections.
Learn more: How to use the SAP Gateway Error Log in ADT (blog post) | SAP Gateway Troubleshooting Guide (SAP Note 1797736) | About the classic SAP Gateway Foundation Error Log (non-ADT, on-premise)
Probably the most important tool that ABAP developers need for troubleshooting their business object implementation or any ABAP application logic. The ABAP debugger lets developers stop the execution of the application logic during runtime and examine the flow and results of each statement during execution. Stepping through the application logic with the debugger helps developers to detect and correct errors in the source code. It allows developers to execute the application logic step-by-step and check the content of the related variables. When ABAP encounters an active breakpoint, ADT opens the Debug perspective in the IDE which allows you to manage the debugging of ABAP development objects.
Learn more: Debugging ABAP Code | What to do if your program does not stop at breakpoints (blog post)
A general ABAP tracing framework which can be used for different tracing scope. It is accessible via the ABAP Cross Trace view in ADT. It is designed for ABAP developers who build OData services or other RAP-related ABAP functionalities. It can be used to generate semantic end-to-end traces for Fiori apps built with RAP, including traces for, e.g., ABAP Runtime, Gateway framework, SADL query engine, and the BO behavior runtime framework.
The ABAP Profiling perspective offers various analysis tools which allow developers to analyze the runtime behavior and performance of an ABAP application logic. It consists of a set of views: i.e., ABAP Trace, ABAP Trace Requests, and Analysis Tools.
The ABAP Profiling shows developers where the runtime is being consumed, and where effort for refactoring and optimization can best be applied. It also lets developers analyze and understand the application logic flow, which is useful when they are trying to understand a problem or learn about code that needs to be analyzed or maintained.
Dynamic Logpoints are used to support logging without having to modify the source code, for example, in quality and productive systems. Unlike static logpoints which are specified with the statement LOG-POINT, they are set dynamically like breakpoints in the source code, at any source code line that contains an executable ABAP statement. Dynamic Logpoints are only available in ABAP-based on-premise systems.
ADT offers various source editors, templates, and views for the development and analysis of data models and business objects defined with ABAP CDS entities:
Data Preview – used to examine which data is selected for the query implemented in your data definition.
- Dictionary Log – used to protocol all changes during the activation of a data definition object.
- Activation Graph – used to visualize the information of the ABAP Dictionary log in a graphical way.
- Active Annotations – used to investigate which CDS annotations have been inherited from the underlying data sources and which annotations are currently active for a specific data definition.
- Annotation Propagation – used to display the CDS entity or metadata extension from which the value of a CDS annotation has been propagated.
Dependency Analyzer – used to display the data sources of a data definition in a hierarchical structure and to evaluate the complexity of a data model.
Relation Explorer – used to understand how objects are related to each other.
Besides these ADT views, the context menu Show SQL CREATE statement of the DDL editor can be used to display and analyze the SQL CREATE statement generated for a data definition.
Learn more: ABAP CDS Tools in ADT | Tips and Tricks for ABAP CDS Tools | ABAP CDS Development Tools: User Guide
About Troubleshooting in Browsers
When investigating the root cause of semantic, functional, and performance issues arising in their custom SAPUI5 / OpenUI5 / SAP Fiori / SAP Fiori elements applications, developers typically start the investigation in the application UI using the troubleshooting tools available in the browsers.
Browser Troubleshooting Tools
The standard browsers offer a set of web developer tools (e.g. Chrome DevTools) which can be used as starting points for the analysis of web-based apps such as SAP Fiori apps. The browser debugger can be started from the browser menu (e.g. using the context menu Inspect) or with the keyboard function key F12 (valid for most browsers).
Learn more: Browser Debugging for ABAP Developers
An extension for the Chrome browser can also be used to easily inspect, analyze, and support OpenUI5 and SAPUI5-based apps.
A support tool that runs within an existing SAPUI5-based application. It can be started in a browser with the keyboard shortcut Ctlr+Shift+Alt/Option+S.
Dialog showing details of the SAPUI5 version currently being used in an app built with SAPUI5. Developers can use the Technical Information dialog to enable debug resources and open additional support tools to debug your app. It can be started in a browser with the keyboard shortcut Ctlr+Shift+Alt/Option+P.
Developers can access SAP performance statistics from the SAP OData Provisioning framework for each OData request. The SAP performance statistics can be To obtained by adding "?sap-statistics-hciodp=true" or "?sap-statistics=true" at the end of the request URL, regardless of whether it is an HTTP method of type GET, POST, PUT, or DELETE.
Try It Now!
You can try out the latest and greatest ADT capabilities and features right now; for example, the ABAP Cross Trace, the ABAP Profiler, and the CDS analysis tools.
All you need are:
- The latest ADT plugin on the latest Eclipse platform (see tutorial)
- The access to an appropriate ABAP system – e.g., SAP BTP ABAP Environment Trial