Disable tracking of Spring Beans and Class Loader Resources


Overview of the Issue

This issue occurs in one of the following scenarios:

  1. An organization runs a Java Springboot Application that uses the Springboot Actuator Health Check. After adding the vFunction Agent, the Actuator Health Check never completes as expected
  2. An error is generated in the Application’s logging that Class Loader Resources are not loading properly after adding the vFunction Agent. The Application fails to start after this error
  3. An Application contains a large number of Spring Beans. When starting the Application with the vFunction Agent, the loading time causes the Application’s startup process to time out or to exceed an acceptable threshold of time for the organization

Steps to Resolve the Issue

Take the following steps to resolve this issue:

  1. SSH to the VM running the Application where the vFunction Agent is installed
  2. Open the installation.yaml associated with the instance, such as in /etc/sysconfig/vfunction/installation/instances/default-java/installation.yaml
  3. To the agent.override_properties, add the following Keys and Values:
agent:
  override_properties:
    - com.vfunction.runtime.config.tracking.classloaderresources.enabled=false
    - com.vfunction.runtime.config.aop.xml.spring.singleton.tracking.enabled=false
    - com.vfunction.runtime.config.aop.xml.spring.prototype.tracking.enabled=false
    - com.vfunction.runtime.config.aop.xml.spring.session.tracking.enabled=false
    - com.vfunction.runtime.config.aop.xml.spring.request.tracking.enabled=false
    - com.vfunction.runtime.config.aop.xml.spring.globalsession.tracking.enabled=false
    - com.vfunction.runtime.config.aop.xml.spring.application.tracking.enabled=false
    - com.vfunction.runtime.config.aop.xml.spring.websocket.tracking.enabled=false
    - com.vfunction.runtime.config.aop.xml.spring.unknown.tracking.enabled=false
  1. Run the upgrade.sh script, such as bash /opt/vfunction/controller-installation/upgrade.sh -i default-java
  2. Restart the JVM