Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Agent startup

  1. Minimum initialization mode
    1. Only contain parts that are related to creating the initial connection to the CMR
  2. Agent tries to connect to CMR registration service.
    1. Adress of the CMR is defined by JVM parameters
    2. Agent provides its name (also given by JVM parameters)
  3. If connection is not possible, agent stays in minimum initialization mode (1) and keeps trying to connect to the CMR

Agent initialization

  1. (Agent can connect to the CMR)
  2. CMR find environment for the agent
    1. Environment is found by mapping table consisting of agent IP and name.
    2. If no environment is found, CMR and Agent log the problem and agent stop trying. Only restarting the agent will start over the process.
  3. CMR sends initial information to the agent called AgentConfiguration
    1. Based on the environment
    2. Agent-ID
    3. Configurations like sensors, strategies
  4. Full initialization mode

Update environment (instrumentation configuration)

  1. Enduser on the UI updates the configuration (environment)
  2. Update the AgentConfiguration for all agents using this environment
  3. Run the changed environment against the class cache again. Class cache returns changed entities:
    1. Class that was not instrumented before:
      1. Tell the agent to send the bytecode for this class again. (The class will undergo normal parsing & instrumentation process and the result will be returned to the agent.)
    2. Class that was instrumented before:
      1. Load original bytecode from cache in the CMR
      2. Run the instrumenter on this bytecode and send the bytecode to the agent.

 

 

 

 

 

 

 

 

Gliffy
nameBigPicture

 

The agent perspective

...