The Java Agent passes the -javaagent argument command line option to WebSphere to ensure the App Server Agent has the correct permissions to monitor your app. 

Security Requirements and Configuration

Full permissions are required for the agent to function correctly with WebSphere. Grant all permissions on both the server level and the profile level.

Run WebSphere with Security Enabled

To run WebSphere while J2EE security or Global security is enabled, you must make changes to WebSphere's server.policy file to prevent problems with the interaction between WebSphere and the Java Agent. 

A codeBase value indicates the location of the source code. You must grant permissions to the code from that location. The codeBase is a URL value, and depends on the characters at the end. A codeBase with a trailing "/-" matches all files, both class and JAR files, in the directory and recursively all files in subdirectories contained in the directory.

  1. Navigate to the server.policy file, located in <websphere_home>/properties or in <websphere_profile_home>/properties
  2. Add this code block to the WebSphere server.policy file:

    Syntax

    grant codeBase "file:</full/path/to/agent_install_directory>/-" { permission java.security.AllPermission; };
    JAVA

    Example

    grant codeBase "file:/opt/appdynamics/javagent/agent4.5.1.23676/-" { permission java.security.AllPermission; };
    JAVA
  3. Save the file.

Performance Monitoring Statistic

Under Application servers > <server_name> > Performance Monitoring Infrastructure (PMI), set a Currently monitored statistic set to an option other than None for the JMX functionality to work.

Instrument WebSphere 7.x, 8.x, and 9.x, or InfoSphere 8.x

  1. Log in to the administrative console for the WebSphere node where you want to install the App Server Agent.
  2. In the administrative console, select Servers > Server Types > WebSphere application servers.
  3. Select the name of your server.
  4. In the Server Infrastructure section, select Java and Process Management > Process Definition.
    Process Definition
  5. Under the Additional Properties section, select Java Virtual Machine.
    Java Virtual Machine
  6. Enter the javaagent option with the full path to the AppDynamics javaagent.jar file in the Generic JVM arguments field.
    Enter Arguments

    For Windows:

    -javaagent:<Drive Letter>:<agent install location>\javaagent.jar
    
    CODE

    For Linux:

    -javaagent:<agent install location>/javaagent.jar
    
    CODE
  7. Click OK.

WebSphere uses Equinox as its OSGi container. In some cases, you may also need to add the Java agent packages to the OSGi bootdelegation system property:

-Dorg.osgi.framework.bootdelegation=META-INF.services,com.singularity.*,com.ibm.*
CODE

Instrument WebSphere 6.x

  1. Log in to the administrative console for the WebSphere node where you want to install the Java Agent.

  2. In the left navigation tree, select Servers > Application servers.
  3. Click the name of your server in the list of servers. 
    Servers List
  4. In the Configuration tab, select Java and Process Management.
    Java and Process Management
  5. Enter the javaagent option with the full path to the Java Agent javaagent.jar file in the Generic JVM arguments field.

    For Windows:

    -javaagent:<Drive Letter>:<agent install location>\javaagent.jar
    
    CODE

    For Linux:

    -javaagent:<agent install location>/javaagent.jar
    
    CODE


    For example:
    Generic JVM Arguments

  6. Click OK

Instrument WebSphere 5.x

  1. Log in to the administrative console of the WebSphere node where you want to install the App Server Agent.
  2. In the administrative console, click Servers.
  3. Click Application Servers.
  4. Click the name of your server.
  5. Under Additional Properties, click Process Definition.
  6. On the next page, under Additional Properties, click Java Virtual Machine.
  7. Enter the javaagent option with the full path to the Java Agent javaagent.jar file in the Generic JVM arguments field.
     

    For Windows:

    -javaagent:<Drive Letter>:<agent install location>\javaagent.jar
    
    CODE

    For Linux:

    -javaagent:<agent install location>/javaagent.jar
    
    CODE
  8. Click OK.

Verify the Java Agent Configuration

Verify the configuration settings by checking the server.xml file of the WebSphere node where you installed the Java Agent. The server.xml file should have this entry:

<jvmEntries ... genericJvmArguments='-javaagent:E:\test1\AppServerAgent\javaagent.jar' disableJIT="false"/>
CODE