Application Performance Monitoring Tools Configuration

You can use Application Performance Monitoring (APM) tools, such as AppDynamics, Dynatrace, or Datadog, to monitor Control-M/EM or Control-M/Server Java processes and services.

To enable this configuration, you might require additional CPU and memory resources. The amount of additional resources required to properly monitor the Java processes varies based on the tool. Ensure that you have proper resources on the machine before you enable any of the monitoring tools. Contact your System Administrator to identify the additional resources your monitoring tools require.

The following procedures describe how to configure the communication from Control-M to your APM tool:

Configuring Control-M/EM Communication with an APM Tool

This procedure describes how to configure communication between Control-M/EM and an external APM tool.

Begin

  1. Stop all Control-M/EM processes, as follows:

    • Linux: Run the following commands:

      1. em ctl -mcs -all -C Config_Agent -cmd shutdown

      2. em bmcpython $HOME/ctm_em/services/bin/services_ps.py -s -k

      3. em bmcpython $HOME/ctm_em/services/bin/services_ps.py -b -k

    • Windows: Run the following commands:

      1. em ctl -mcs -all -C Config_Agent -cmd shutdown

      2. bmcpython "%EM_HOME%\services\bin\services_ps.py" -s -k

      3. bmcpython "%EM_HOME%\services\bin\services_ps.py" -b -k

  2. Define the BMC_ADDITIONAL_JAVA_OPTIONS environment variable in the following location:

    • Linux: In the em_env_local.sh file in <EM_HOME>/etc/. If this file does not exist, create it.

      Include another line with an export command for the defined variable.

    • Windows: Through Advanced System Settings, in Environment Variables

    • The value of the BMC_ADDITIONAL_JAVA_OPTIONS must contain arguments for all parameters required by your APM tool.

    • Use a : to separate the -javaagent argument from its value. On Windows, enclose the value in ".

    • For all other arguments, begin the definition with -D and use an = to separate the parameter from its value.

    • For the parameter that specifies the service or process to monitor, set the following value:

      REPLACED_COMPONENT_DISPLAY_NAME

    • The following lines in the em_env_local.sh file configure AppDynamics monitoring on Linux:

      BMC_ADDITIONAL_JAVA_OPTIONS="-javaagent:path_to_agent_jar ‑Dappdynamics.agent.applicationName=my_env_presentation_name -Dappdynamics.agent.tierName=REPLACED_COMPONENT_DISPLAY_NAME -Dappdynamics.agent.nodeName=my_hostname ‑Dappdynamics.agent.accountName=my_acount_name -Dappdynamics.agent.accountAccessKey=access_key"

      export BMC_ADDITIONAL_JAVA_OPTIONS

    • The following value for the BMC_ADDITIONAL_JAVA_OPTIONS variable configures DataDog monitoring on Windows:

      -javaagent:"path_to_agent_jar" -Ddd.profiling.enabled=true -Ddd.logs.injection=true -Ddd.service=REPLACED_COMPONENT_DISPLAY_NAME -Ddd.env=my_env_presentation_name

  3. Start up the Control-M/EM Configuration Agent, as follows:

    • Linux: Run the following command:

      em start_config_agent

    • Windows: Start the Control-M/EM Configuration Agent service.

    If you have a Control-M/EM Distributed installation, perform this step on each relevant Configuration Agent host.

Configuring Control-M/Server Communication with an APM Tool

This procedure describes how to configure communication between Control-M/Server and an external APM tool.

Begin

  1. Shut down both the Control-M/Server and the Control-M/Server Configuration Agent by running the following commands from the Control-M/Server home directory:

    • shut_ca

    • shut_ctm

  2. Define the BMC_ADDITIONAL_JAVA_OPTIONS environment variable in the following location:

    • Linux: In the .ctmcshrc file in the Control-M/Server home directory.

      Include another line with an export command for the defined variable.

    • Windows: Through Advanced System Settings, in Environment Variables

    • The value of the BMC_ADDITIONAL_JAVA_OPTIONS must contain arguments for all parameters required by your APM tool.

    • Use a : to separate the -javaagent argument from its value. On Windows, enclose the value in ".

    • For all other arguments, begin the definition with -D and use an = to separate the parameter from its value.

    • For the parameter that specifies the service or process to monitor, set the following value:

      REPLACED_COMPONENT_DISPLAY_NAME

    • The following lines in the .ctmcshrc file configure AppDynamics monitoring on Linux:

      setenv BMC_ADDITIONAL_JAVA_OPTIONS "-javaagent:path_to_agent_jar ‑Dappdynamics.agent.applicationName=my_env_presentation_name -Dappdynamics.agent.tierName=REPLACED_COMPONENT_DISPLAY_NAME -Dappdynamics.agent.nodeName=my_hostname ‑Dappdynamics.agent.accountName=my_acount_name -Dappdynamics.agent.accountAccessKey=access_key"

    • The following value for the BMC_ADDITIONAL_JAVA_OPTIONS variable configures DataDog monitoring on Windows:

      -javaagent:"path_to_agent_jar" -Ddd.profiling.enabled=true -Ddd.logs.injection=true -Ddd.service=REPLACED_COMPONENT_DISPLAY_NAME -Ddd.env=my_env_presentation_name

  3. Register your changes to the .ctmcshrc file by running the following command:

    source .ctmcshrc

  4. Start up the Control-M/Server and the Control-M/Server Configuration Agent with the following commands:

    • start_ctm

    • start_ca

If you later want to shut down communication between Control-M/Server and the external APM tool, do the following:

  1. Delete the BMC_ADDITIONAL_JAVA_OPTIONS environment variable from file ~/.ctmcshrc (on Linux) or through Advanced System Settings (on Windows).

  2. Shut down and then start up the Control-M/Server and the Control-M/Server Configuration Agent, as described in steps 1 and 4 above.