When you set up a profiling configuration to start monitoring an application, you choose the type of data you want to collect and analyze by selecting a profiling set. Depending on the profiling set you choose, the data collection infrastructure uses one or both of two agents to collect the data. The agent used is selected automatically to correspond to your profiling settings.
The ARM agent is most useful, and will be selected automatically, in the following scenarios:
The JVMPI agent is most useful, and will be selected automatically, in the following scenarios:
Each agent offers its own set of data collection features, as highlighted in the following table:
Feature: | ARM agent | JVMPI agent |
---|---|---|
Provides the ability to correlate remote calls between processes and hosts | Yes | No |
Application performance impact when the agent runs in profiling mode | Small | Large |
Filtering mechanism | By J2EE component type (for example servlet or JDBC), host URL | By package, class, amd method |
Collects memory information and object interactions (for the UML2 Object Interactions view) | No | Yes |