Help Center/ Application Performance Management/ FAQs/ Usage FAQs/ How Do I Connect APM to Non-Web Programs?
Updated on 2022-06-09 GMT+08:00

How Do I Connect APM to Non-Web Programs?

Non-web programs do not have any exposed APIs and therefore, they cannot be accessed externally. Generally, they are Java processes which are responsible for implementing scheduled tasks.

Operation

Application Performance Management (APM) can connect to non-web programs, and collect and display their data. To connect APM to non-web programs, do as follows:

  • For non-web programs deployed through Cloud Container Engine (CCE), see CCE Mode.
  • For non-web programs deployed on Elastic Cloud Server (ECS) or Bare Metal Server (BMS), see VM Mode.

CCE Mode

CCE provides containerized application management. When you create or upgrade a non-web program, set environment variables and select the probe according to the following figures so that it can be installed in the non-web program. Three minutes after you start the program, log in to the APM console to view the program status on the Topology and Transactions pages.

Figure 1 Setting environment variables
Figure 2 Selecting the probe

VM Mode

To connect APM to non-web programs deployed on ECS or BMS, add the following configurations to the startup script:

-javaagent:/opt/oss/servicemgr/ICAgent/pinpoint/pinpoint-bootstrap.jar -Dapm_application=Application name -Dapm_tier=Service name -Dapm_noport=true

After the configurations are added, start the program and then view the program data on the APM console.

For example, assume that the original startup script is as follows:

java -jar app.jar

If the application name is vmall and the service name is vmall-product-service, the modified startup script will be as follows:

java -javaagent:/opt/oss/servicemgr/ICAgent/pinpoint/pinpoint-bootstrap.jar -Dapm_application=vmall -Dapm_tier=vmall-product-service -Dapm_noport=true -jar app.jar