SAP ABAP platform monitoring

Learn how to monitor your SAP ABAP platform using the SAP ABAP ActiveGate extension.

Prerequisites

  • SAP NetWeaver ABAP release 7.31+
  • Environment ActiveGate
  • SAP Java Connector present on the ActiveGate host (see configuration instructions below)
  • An endpoint to an SAP application server with production load can consume up to 0.5 CPU cores and 1.5 GB RAM on the ActiveGate. Make sure to size the ActiveGate accordingly, especially if you configure several endpoints which poll from a single ActiveGate.
  • The ActiveGate requires remote access to the SAP application server (AS ABAP) over RFC protocol
  • If the endpoint is configured to poll all clustered instances, the ActiveGate requires remote access to all the SAP AS instances
  • A user account that has permission to execute the following monitoring functions:
    • Authorization Object: S_RFC
      • Activity: 16
      • RFC Name: /SDF/GET_DUMP_LOG, GET_SYSTEM_TIME_REMOTE, SWNC_GET_WORKLOAD_SNAPSHOT, TH_SERVER_LIST, TH_USER_LIST, RFC_METADATA_GET, RFCPING, RFC_GET_FUNCTION_INTERFACE, DDIF_FIELDINFO_GET
      • RFC Type: FUNC
    • Authorization Object: /SDF/E2E
      • Activity: 03
    • Authorization Object: S_RZL_ADM
      • Activity: 03
    • Authorization Object: S_TOOLS_EX
      • AUTH: S_TOOLS_EX_A
    • Authorization Object: S_TCODE
      • TCD: SM51

SAP Java Connector configuration

Configure the SAP Java Connector on the ActiveGate host

  1. Download the 64-bit version of the SAP Java Connector to the ActiveGate.
  2. Place the sapjco3.jar file into the JCo folder, as configured below when adding a new monitoring endpoint (step 7 in extension installation).
  3. Depending on the OS running on the ActiveGate host, place sapjco3.dll (Windows) or libsapjco3.so (Linux) into the JCo directory.
  4. Make sure that the user account executing the plugin is permitted to read from the JCo folder.
  5. Windows only Make sure that the Windows-based ActiveGate host has the Visual C++ Redistributable Packages for Visual Studio 2013 installed. The SAP Java Connector depends on it.

Extension installation

  1. In the Software Intelligence Hub, find and select SAP GUI and ABAP platform.

  2. Select Download to get the extension ZIP file. Don't rename the file.

  3. Unzip the ZIP file to the plugin_deployment directory of your ActiveGate host. If the resulting directory structure isn't

    .\plugin_deployment\<EXTENSION-SPECIFIC-DIRECTORY>\
    

    where <EXTENSION-SPECIFIC-DIRECTORY> is the name of the directory containing the files for this extension, make the necessary changes.

  4. If you are planning to monitor user activity, create a new custom application

    • Navigate to Dynatrace Hub > Generic front end > Monitor a custom application.
    • Give your application a descriptive name, choose an icon, then select Monitor custom application.
    • Select Instrumentation wizard and keep a note of the Application ID that is generated for your custom application. The Beacon URL is not used, as the extension sends the data back via the ActiveGate where the extension runs.
  5. In Dynatrace, select Settings, Add new technology monitoring, and then Add ActiveGate extension.

  6. Select Upload extension and upload the ZIP file.

  7. Enter the following information to connect to your SAP host:

    Setting Details

    Endpoint name

    Enter a meaningful endpoint name. The name will only be visible on the configuration page.

    Connect via message server

    Connect to the SAP application server via a message server. Once the list of SAP application servers is collected, the extension connects directly to the servers. If the message server is down, the availability of the SAP application servers behind the message server will not be collected. To detect and configure alerting for such a state, set up a missing data alert custom event that alerts on the condition if data is missing.

    SAP application server address

    The IP or host name of the SAP application server. Not used when connecting via a message server.

    Instance ID

    The instance ID to connect to (this is a numeric, two digit value). Not used when connecting via a message server.

    System ID

    The system ID to connect to. Only used when connecting via a message server.

    Message server host name or address

    The IP or host name of the message server. Only used when connecting via a message server.

    Message server port number

    The port that the message server is listening on. Only used when connecting via a message server.

    Group/server

    The group/server configured on the message server. Only used when connecting via a message server.

    Username

    The username for the account connecting to the SAP application server.

    Password

    The password for the account.

    Client number

    The client number to use for the connection.

    Poll all clustered SAP instances

    Instead of creating one endpoint per SAP instance, this option polls all clustered SAP instances at once.

    Use 'SAP server' as the application server name

    Instead of the custom device using the name returned by the application server instance, use the value entered in SAP application server address. Not possible when polling all clustered SAP servers.

    Path to a JCo destination file

    Optional If a specific destination file is required to connect to the SAP server, enter the path here. This will override all of the above settings.

    SAP JCo folder

    The folder containing the sapjco3.jar and the native Java Connector file.

    Task types to report on

    Comma-separated task types to report on, the rest will be combined. The possible task types are: NONE, DIALOG, UPDATE, SPOOL, BCKGRD, ENQUEUE, BUF.SYN, AUTOABA, UPDATE2, NATIVE_RFC, PLUGIN, AUTOTH, RPCTH, RFCVMC, DDLOGCLEANUP, DEL.THCALL, AUTOJAVA, LICENCESRV, AUTOCCMS, MSADM, SYS_STARTUP, BGRFCSDL, BGRFC, APC, OTHERS, DINOGUI, B.INPUT, HTTP, HTTPS, NNTP, SMTP, FTP, LCOM, HTTP/JSP, HTTPS/JSP, AUTO_RFC, WS-RFC, WS-HTTP, ESI, ALE, RFC and CPIC

    Enable debug logging

    Select this only if Dynatrace ONE requests it so they can investigate an issue.

    Report on application server metrics

    Report on application server metrics to a custom device.

    Report on user sessions and actions based on Tcodes to a custom application

    Select this to create user sessions and user actions based on the customer-executed Tcodes. This functionality requires a custom application to be created, which is done under Deploy Dynatrace in the menu.

    Report on RFC usage metrics to the metric ingest API

    The extension collects the RFC usage metrics using the Dynatrace Metric API v2 ingest channel. Use the Data Explorer to access the collected metrics. The metric names start with the sap.rfc string. The metrics are not assigned to the custom device. Select whether to only report on the servers communicating to/from the SAP Application server, or to additionally split up the metrics on individual function names.

    API token with the access scope 'Ingest metrics'

    Used only if RFC monitoring is enabled. Used by the extension to send RFC-related metrics to Dynatrace.

    Tenant or environment ID

    Used only if RFC or user session reporting is enabled. The tenant ID for Dynatrace SaaS can be found in the URL. For example, if the URL is abc12345.live.dynatrace.com, the tenant ID is abc12345. The environment ID for Dynatrace Managed can be found in the URL after /e/. For example, if the URL is my.dynatrace.server/e/12345-abcde/, then the environment ID is 12345-abcde.

    The Application ID of the custom application

    To create user sessions, fill in the Application ID you are prompted with after creating the custom application.

    Inactivity time out (in minutes) when capturing user sessions

    Enter a number between 5 and 30, default is 30.

    Capture usernames as part of the user sessions

    Select to capture usernames.

    Use terminal name for end user location

    When capturing user sessions, use the IP resolved from the first 20 characters of the terminal name instead of the SAP returned user IP. This is useful when the application server does not know the client IP, for example when the users connect via SAP Router.

    Display best practice upper boundary

    Adds an upper boundary line to the performance metric charts on the custom device.

    Poll once per five minutes instead of once per minute

    Reduces overhead on SAP application server, but lowers the granularity in charts and delays data retrieval. During heavy load on the SAP application server this might cause the SAP server to not send all user actions to Dynatrace.

    Path to a Java executable version 8+

    The SAP extension uses the SAP Java Connector to communicate with SAP. Due to this it is required to have Java installed on the ActiveGate. Enter the path to a Java 8+ executable such as C:\Program Files\Java\jre1.8.0_251\bin\java.exe or /usr/bin/java. It is recommended to not use the Java Runtime Environment that comes bundled with the ActiveGate as that can cause issues during ActiveGate upgrades. Use the same bitness as the Java Connector, if you downloaded the 64-bit JCo package, use a 64-bit Java.

Troubleshoot ActiveGate extensions

See Troubleshoot ActiveGate extensions.

Metrics

Application server instance

  • Availability
  • Runtime errors (split by error category)
  • Number of user sessions
  • CPU time/Response time ratio
  • Database time/Response time ratio
  • Wait time/Response time ratio
  • Load time/Response time ratio

Tasks (split by task)

  • Response time
  • Dialog steps
  • CPU time
  • Database time
  • Database calls
  • Roll in time
  • Roll wait time
  • Load + generation time
  • Active user count

Dialog

  • Dialog steps
  • Dialog response time
  • Dialog network time
  • GUI active user count

RFC metrics available in the Data Explorer

  • sap.rfcIncomingExecutionTime (milliseconds)
  • sap.rfcIncomingCallTime (milliseconds)
  • sap.rfcIncomingReceive (bytes)
  • sap.rfcIncomingSend (bytes)
  • sap.rfcIncomingRequests (count)
  • sap.rfcOutgoingExecutionTime (milliseconds)
  • sap.rfcOutgoingCallTime (milliseconds)
  • sap.rfcOutgoingReceive (bytes)
  • sap.rfcOutgoingSend (bytes)
  • sap.rfcOutgoingRequests (count)

Additional notes

  • ABAP runtime errors are created as events in Dynatrace and, if possible, mapped to the responsible user session or user action.
  • Infrastructure and dependency monitoring requires OneAgent installation on the AS ABAP servers and other servers in the SAP landscape. Typically, this includes database servers and RFC client servers that communicate with SAP application servers.