Download PDF
Download page Architecture Overview.
Architecture Overview
On this page:
Prerequisites
- Check if SAP NetWeaver release and support package are supported. See SAP Supported Environments.
- Install relevant ABAP Agent components. See Install SAP Netweaver Systems.
Architecture Diagram
The following diagram depicts all components along with their interactions.
Controller Connection
Setup the Connection to Controller to enable the following data paths:
- C++ SDK to Controller Connection
- ABAP Agent to Controller Connection
C++ SDK to Controller Connection
Controller connection parameters are needed by C++ SDK to establish HTTP or HTTPS connection to a controller (diagram path 1.a). These connection parameters are propagated to C++ SDK from ABAP Agent via HTTP SDK config file during HTTP SDK process start-up.
Functionality
This setup is required for C++ SDK to be able to forward SAP data (business transactions, snapshot details, metrics, events, etc.) and to exchange setup and validate licensing with the controller.
SSL Connection
When SSL connection is required, set the correct Port (443 for SaaS controller) and check the Use SSL checkbox. For SaaS controllers, C++ SDK automatically uses the bundled ca-bundle.crt certificate. Additional actions are needed only when connecting to an On-Premises controller. The actions depend on where the HTTP SDK was installed:
- Install Custom Certificate for Local HTTP SDK.
- Install Custom Controller Certificate for Remote HTTP SDK.
HTTP Proxy
If a HTTP proxy exists between C++ SDK / HTTP SDK and the controller, HTTP proxy connection settings must be maintained. See step 2 in Connection to Controller.
These settings are propagated to C++ SDK from ABAP Agent via HTTP SDK config file during HTTP SDK process start-up. The HTTP proxy is relevant only for C++ SDK to Controller connection, not for ABAP Agent to HTTP SDK connection.
ABAP Agent to Controller Connection
The Controller API adapter component of the ABAP Agent needs the controller connection parameters to establish a direct HTTP or HTTPS connection to a controller. Controller API adapter reads all the relevant parameters directly from ABAP Agent database tables.
Functionality
This setup is required to check:
- Controller connection via t-code /DVD/APPD_STATUS. See Start the AppDynamics HTTP SDK.
- Automated dashboard upload functionality. See SAP Dashboard Generator.
SSL Connection
When SSL connection is required, additional actions are needed for both On-Premises and SaaS controller types. Download all controller certificates using a web browser, upload them to a STRUST SSL client identity, and set the client identity name in ABAP Agent customizing. See Controller SSL Connection.
HTTP Proxy
If a HTTP proxy exists between the SAP system and the controller, HTTP proxy connection settings must be maintained. See step 2 in Connection to AppDynamics Controller.
HTTP SDK Connection
HTTP SDK is a middleware that exists between the ABAP Agent and the Controller. It uses an HTTP server that listens to a configured port and forwards commands from ABAP Agent to C++ SDK. For ABAP Agent to be able to report data to the controller, you need to setup HTTP SDK parameters (diagram path 2). See Configure SDK Settings.
Functionality
This part of the setup is required for ABAP Agent to be able to forward SAP data (business transactions, snapshot details, metrics, events, etc.) and to C++ SDK via the HTTP SDK wrapper program.
Setup steps depend on where the HTTP SDK was installed.
HTTP SDK Installed Locally
When HTTP SDK is installed locally on SAP application servers with OS that supports a local installation for the HTTP SDK, it is controlled directly by the ABAP Agent using SAP SXPG command framework. ABAP Agent forwards data to HTTP SDK instances using local HTTP calls.
SSL Connection
SSL connection between ABAP Agent and HTTP SDK is not supported in this scenario. Calls between ABAP Agent and HTTP SDK are restricted to local calls, e.g. http//:localhost:<HTTP SDK port>/<action URL>.
HTTP Proxy
HTTP proxy is not relevant for this connection.
HTTP SDK Installed on Remote Gateway System
When HTTP SDK is installed on remote Gateway system, it is controlled by ABAP Agent via HTTP or HTTPS calls (diagram path 2.b) to SDK Manager process. SDK Manager needs to be started separately and requires additional setup steps, see SDK Manager Settings. ABAP Agent forwards data to corresponding HTTP SDK instances using HTTP or HTTPS calls (diagram path 2.b).
To link ABAP Agent with a Gateway server, maintain SDK Manager host (hostname or IP of Gateway server where SDK manager is running) and SDK Manager port (port where SDK Manager listens for commands, 7999 by default). Maintain a unique and unused HTTP SDK port for every application server. SDK Manager will spawn one HTTP SDK process for each application server and each process will listen on the maintained HTTP SDK port.
SSL Connection
Optional SSL connection is possible, but can lead to unwanted overhead. See HTTP SDK and SDK Manager SSL Connection. The setup involves the following steps:
- Generate or add own server certificates for the Gateway Linux system.
- These certificates are required for SDK manager and HTTP SDK to start in SSL mode.
- Copy the private certificate files into .../appdhttpsdk/cert/ folder. See Add SSL Certificate to SDK Manager.
- Add public part of the certificate to an STRUST SSL client identity. See Add Certificates to SAP.
- Set the SSL client identity name under HTTP SDK and SDK Manager SSL Connection.
HTTP Proxy
HTTP proxy settings are not applicable for communication between ABAP agent and Gateway server.
Machine Agent Connection
Connection to Machine Agent HTTP Listener needs to be setup for ABAP Agent to be able to report custom application events if HTTP SDK cannot be used. Machine Agent Adapter component of the ABAP Agent uses the settings to establish a HTTP connection to HTTP Listener of a Machine Agent instances (diagram path 3).
Functionality
This part of the setup is used to forward custom application events through the Machine Agent HTTP Listener to the controller.
SSL Connection
SSL connection between ABAP Agent and Machine Agent HTTP Listener is not supported.
HTTP Proxy
HTTP proxy is not relevant for this connection.
Event Service Connection
Connection to Event Service needs to be setup for ABAP Agent to be able to report custom analytics data to the Event Service via Analytics Events API. Analytics API adapter component of the ABAP Agent uses the settings to establish a direct HTTP or HTTPS connection to Event Service (diagram path 4).
Functionality
This part of the setup is prerequisite for:
- Custom Analytics schema creation and data reporting. See Analytics API Adapters.
- BiQ data reporting. See Monitor SAP Business Processes.
SSL Connection
When SSL connection is required, additional actions are needed for both On-Premises and SaaS event service server types. Change URL prefix to https:// and set the correct Port (443 for SaaS event service). Download all event service certificates using a web browser, upload them to an STRUST SSL client identity and set the client identity name in ABAP Agent customizing. See step 3 in Controller and Event Service SSL Connection.
HTTP Proxy
If a HTTP proxy exists between the SAP system and the event service, HTTP proxy connection settings must be maintained. See step 2 in Connection to AppDynamics Controller.
Analytics Agent Connection
Connection to Analytics Agent needs to be setup for C++ SDK to be able to establish an HTTP connection to Analytics Agent (diagram path 5). Analytics Agent is part of Machine Agent installation package, but needs to be configured and started separately. See Deploy Analytics With the Analytics Agent. Individual Analytics Agent instances can be deployed on every server where HTTP SDK / C++ SDK is running, or a central Analytics Agent instance can be used by multiple HTTP SDK / C++ SDK instances.
Functionality
This part of the setup is required for C++ SDK to be able to forward transaction analytics data via Analytics Agent to the Event Service.
SSL Connection
SSL connection between C++ SDK and Analytics Agent is not yet supported.
HTTP Proxy
HTTP proxy is not relevant for this connection.
Browser Instrumentation Connection
JavaScript Agent host needs to be maintained as part of Browser End-User Monitoring setup. ABAP Agent does not directly connect to the maintained host. Instead it injects JavaScript code to relevant webpages that then loads the JavaScript Agent in the session.
Functionality
This part of the setup is required for ABAP Agent to be able to inject JavaScript Agent snippet to supported SAP web frontends. See SAP Supported UI Technologies.
SSL Connection
SSL connection is not relevant for this connection. JavaScript Agent can be hosted locally to increase security.
HTTP Proxy
HTTP proxy is not relevant for this connection.