Installing eG Java BTM on a Generic JVM Node

The steps for deploying an eG Java BTM on a JVM node will differ based on how the node is being monitored - in an agent-based manner or in an agentless manner.

BTM-Enabling a Generic JVM Node Monitored in an Agent-based Manner

If the JVM node is being monitored in an agent-based manner, then follow the steps below to BTM-enable it:

  1. Login to the JVM node.
  2. Open a browser on the node, connect to the eG manager, and login to the eG admin interface.
  3. Manage the JVM node as a separate component using the eG administrative interface. When managing, make sure you leave the Agentless flag unchecked.
  4. If multiple JVM instances are operating on a single node, and you want to BTM-enable all the instances, then you will have to manage each instance as a separate component using the eG administrative interface.
  5. Next, follow the Agents -> BTM Profiler Settings menu sequence in the eG admin interface. Figure 1 will then appear, listing the Java application servers managed in the environment. Locate the JVM node that you managed recently in that list, and click the Copy JVM icon () corresponding to it (see Figure 1).

    Figure 1 : Clicking the Copy JVM option corresponding to theJVM node managed in an agent-based manner

  6. Figure 2 will then appear. Copy the JVM option displayed in Figure 2 to the clip board or any text editor.

    Figure 2 : Copying the JVM option displayed in the admin interface to a clip board or text editor

  7. Then, proceed to edit the start-up script of the JVM node/instance being monitored. Look for the Java Options specification in the file and append the code block you copied at step 6 above to that specification. After inserting the copied JVM option, make sure that you replace the <<EGURKHA_AGENT_HOME>> tag in the copied code block with the actual install directory of the eG agent deployed on the JVM node.

    Note:

    If the eG agent is installed in a folder with a name that embeds 'white spaces' (e.g., Program Files), then, make sure that you specify thefull path to the eg_btm.jar file within double quotes (""). For instance, if the eG agent is installed in the C:\eG Agent Install folder, then, in the start-up script, the path specification against -javaagent should be as follows: "C:\eG Agent Install\lib\apm\Java\default\eG_btm.jar". A sample specification is provided below:

    set "JAVA_OPTS=-javaagent:"C:\eG Agent Install\lib\apm\Java\default\eg_btm.jar"=component_guid=ecozxmw5q4yh5typqkioh3ww6pafrf62:6805da3d-62dd-4781-a6a1-089d214b1999%JAVA_OPTS% %JSSE_OPTS%"

  8. Finally, save the file, and restart the JVM node.
  9. If multiple JVM instances on a single node are monitored, make sure you follow steps 5-8 for each JVM instance.

BTM-Enabling a Generic JVM Node Monitored in an Agentless Manner

To achieve this, follow the steps below:

  1. Login to the JVM node.
  2. Open a browser on the node, connect to the eG manager, and login to the eG admin interface.
  3. Manage the JVM node as a separate component using the eG administrative interface. When managing, make sure you enable the Agentless flag.
  4. If multiple JVM instances are operating on a single node, and you want to BTM-enable all the instances, then you will have to manage each instance as a separate component using the eG administrative interface. When doing so, make a note of the Nick name and Port number using which you managed each instance.
  5. Next, log out of the eG admin interface. Then, create a btm directory anywhere on the JVM node - say, C:\btm (if the target node is operating on a Windows system), or /opt/btm (if the target node is operating on a Unix system). Under this directory, create a sub-folder. Make sure that you name this sub-folder in the following format: <Managed_Component_NickName>_<Managed_Component_Port>. For instance, if you have managed the JVM node using the nick name AppServer1 and the port number 8088, the new directory under the btm directory should be named as AppServer1_8088.
  6. If you have managed multiple JVM instances running on a single node, then you will have to create multiple sub-directories under the btm directory- one each for every instance. Each of these sub-directories should be named after the Nick name and Port number using which the corresponding instance has been managed in eG.

  7. Once the new sub-directory(ies) is created, open a browser on the JVM node, connect to the eG manager, and login to the eG admin interface again.
  8. Follow the Agents -> BTM Profiler Settings menu sequence in the eG admin interface.
  9. Figure 3 will appear listing the servers that can be instrumented for APM by eG. In this list, locate the JVM node that you want to BTM-enable. Once you locate the node, click the Download icon corresponding to that node to download the APM Profiler Agent to that node. If multiple JVM instances on a single node are managed, then you will have to download the APM Profiler Agent separately for each of the managed instances.

    Figure 3 : Downloading the APM Profiler Agent for the JVM node

  10. Upon clicking the Download icon in Figure 3, a zip file named javaagent_<Nick_name_of_JVM_node>_<Port_number_of_JVM_node will get downloaded. For instance, if you have managed the JVM node using the nickname 'AppServer1' and the port number '8088', then the name of the zip file will be javaagent_AppServer1_8088. Where multiple JVM instances have been managed, you will be downloading multiple zip files - one each for every JVM instance. The names of these zip files will automatically carry the nick name and port number you assigned to the corresponding JVM instance.
  11. Copy the downloaded zip file(s) to the corresponding sub-directory(ies) of the btm directory (see step 6 above).  For example, the zip file named javaagent_AppServer1_8088, should be copied to the C:\btm\AppServer1_8088 directory (on Windows) or /opt/btm/AppServer1_8088 (on Unix).
  12. Extract the contents of each zip file into the same sub-directory to which that zip file was copied.
  13. Figure 4 depicts the extracted contents of the zip file.

    Figure 4 : Contents of the APM Profiler Agent zip

  14. From Figure 4, it is evident that the zip file contains an eg_btm.jar file and a few property files, namely - btmOther.props, btmLogging.props, config.props, custom.props, exclude.props, and threshold.props files.
  15. Next, proceed to BTM-enable the JVM node/instance. For that, edit the start-up script of the JVM node/instance being monitored, and append the following line to it:

    "-javaagent:<<PATH OF THE eg_btm.jar FILE>>”

    For instance, if the JVM node is operating on a Windows system and the eg_btm.jar file is copied to the C:\btm\AppServer1_8088 directory, the above specification will be:

    "-javaagent:C:\btm\AppServer1_8088\eg_btm.jar”

    Similarly, if the JVM node is operating on a Unix system and the eg_btm.jar file is copied to the/opt/btm/AppServer1_8088 directory, the above specification will be:

    "-javaagent:/opt/btm/AppServer1_8088/eg_btm.jar”

     

    Note:

    The “-javaagent…” entry above should be added as one of the JVM options in the start-up script.

  16. Finally, save the file, and restart the JVM node.
  17. If multiple JVM instances on a single node are monitored, make sure you follow steps 15-16 for each JVM instance.