Setting up SAP BusinessObjects

General Information

Used Technologies

Java Management Extensions (JMX) is a Java technology designed to monitor and manage various objects (resources), including remote object management.

MBeans (managed beans) are managed resources. Each such object implements a specific interface, through which you can access the attribute values of this object. You can also call its methods and receive notifications if the application registers the corresponding MBeans, known as listening MBeans.

The MBean server is an object registry for registering MBeans. Any registered object becomes available to applications, or more precisely, their interfaces.

JMX connectors access resources and make the MBean server available to JMX clients. The JMX connector consists of a client and a server. The connector server connects to the MBean server and takes connection requests from clients. The connector client is usually located on another Java Virtual Machine (JVM). It initiates the connection to the connector server and communicates with it to access the MBean server. Overall, the JMX connector acts as a bridge between the JMX clients and the MBean server, enabling remote access and the management of resources in a Java application.

Remote method invocation (RMI) is standard connection protocol for the JMX API. This protocol allows the JMX client to remotely access MBeans on the MBean server.

JMXServiceURL or JMX endpoint are the special addresses of the JMX API connector server. The format of this address is as follows:

service:jmx:rmi://host:port1/jndi/rmi://host:port2/

for which

  • service:jmx: is a constant.

  • rmi: is a protocol that is used to connect to the connector server.

  • //host:port1 is the address at which the connector server can be found.

  • /jndi/rmi://host:port2/ is the URL path. This path has the following literal meaning: Take the part of the URL that follows immediately behind /jndi/ and at this address execute the JNDI request in the RMI registry to retrieve information about the RMI server. In response, the registry will return the host and port of the RMI server.

NOTE Note: If the host is accessed from a different domain, you must use the full network address of the host, e.g. <host_name.domain_name.com>.

General Introduction

You can monitor an SAP BusinessObjects system from the CrystalBridge® Monitoring central instance via the Java Management Extensions (JMX) connector. The JMX technology defines a connector based on remote method invocation (RMI). This connector allows you to connect to MBeans via an MBeans server from a remote location and view SAP BusinessObjects servers and monitoring metrics. The JMX connector is Java-based. It is implemented in the JCo service, which runs on the SAP application server of the CrystalBridge® Monitoring central instance. Business object-specific collectors call the JCo service from SAP ABAP in order to access JMX.

Proceed as follows to set up SAP BusinessObjects monitoring:

  1. Set up the SAP BusinessObjects system.

  2. Set up the SAP BusinessObjects add-on to run the JCo service on SAP ABAP AS.

  3. Set up the system for monitoring in the CrystalBridge® Monitoring Cockpit.

Architecture

The deployment process of the JCo service for the JMX connector consists of loading and installing the sources from the SAP Web Repository into a configured installation path on the SAP application server. This is fully performed from the ABAP environment. The Java application DVDJMXtoSAP.jar and all its relevant files (JCo library and starting script) are copied from the SAP Web Repository into the configured installation folder.

NOTE The process of deployment also requires vulnerable information to be stored in the customizing, for example usernames and passwords.
The username that is used for the connection of the JCo client back to the SAP system is not encrypted and is user-defined. For more information, see the chapter Installing and Starting the JMX Connector on an SAP System. We recommend assigning the predefined authorization role /DVD/JMX_JCO_RFC to this user. The password for this user is encrypted by hard-wired encryption – an enhanced form of encryption algorithm implemented in the SAP standard class CL_HARD_WIRED_ENCRYPTOR. The username and the encrypted password for SAP system logon are stored in the database table /DVD/JMX_CONF. These stored credentials are then used when starting the JCo service.
The username that is used for the JMX connection to the SAP BusinessObjects system is not encrypted either and is also user-defined. For more information, see the chapter Enabling Monitoring on an SAP BusinessObjects System. The password for this SAP BusinessObjects user is encrypted by the same hard-wired encryption algorithm. The username and encrypted password for SAP BusinessObjects user are stored in the database table /DVD/JMX_CONN. These stored credentials are then used when establishing the connection to the SAP BusinessObjects system. 

When relevant files are copied into the installation folder, the JCo service is started through a predefined external OS command for the JMX connector execution. This external command is executed with specific additional parameters, which must be filled out to run this OS command as expected. These additional parameters are automatically filled based on the configured JCo setup. For more information, see the chapter Installing and Starting the JMX Connector on an SAP System

There are two predefined external OS commands that make it possible to execute the JCo service:

  • /DVD/JMX_DEP_CMD: External OS command to run the JCo service on Unix

    • Example with additional parameters: 
      nohup /usr/bin/java -jar /tmp/DVD_JMX_to_SAP/DVDJMXtoSAP.jar /tmp/DVD_JMX_to_SAP/ > nohup_log.txt

  • /DVD/JMX_WIN_CMD: External OS command to run the JCo service on Windows

    • Example with additional parameters: 

      javaw -jar C:\Temp\DVDJMXtoSAP.jar

NOTE For both commands, a check is executed to verify whether they are executed only with the specific additional parameters (valid script and Java application name). For security reasons, it is not possible to execute these OS commands without these additional parameters. 

When you install and start the JCo service for the JMX connection on your SAP system, the following files must exist in the configured installation folder. In this folder, you can also find the log file startup.log, which contains logs from Java or other error messages that occurred during the execution of the external OS command. We recommend checking these logs if the JCo service for the JMX connection does not start as expected.

Ein Bild, das Tisch enthält.

Automatisch generierte Beschreibung

NOTE This is an example of the Unix installation. For the Windows installation, a different JCo library (sapjco3.dll) and starting script (mon_jmx_start.ps1) are available. 

There is also one additional configuration file created in this directory (destination.conf), but this file is automatically deleted for security reasons when the JCo service is started.