Deploy Code Profiling for Java
This is to monitor the java code-level performance of a Java application. This requires Germain UX - Code Profiler.
Requirements
JRE 17 supported by Germain Java agent
JRE 8 and 11 support by Germain legacy Java agent
Installation
There are three steps to installation:
Placing the two agent JAR files in a location accessible to all applications that will be monitored.
Creating a configuration file for each of the applications being monitored.
Starting those applications with an additional
-javaagent
argument to the JVM.
Files provided by germain
apm-agent.jar
apm-agent-runtime.jar
agent.properties
germain.java.security
Configuration files
The agent.properties file is a generic template that can be copied and filled in for each application. Suggestion: name each copy agent-[APPLICATION_NAME].properties
so they can all reside in the same folder. See the section on configuration for the meaning of each property.
JVM Arguments
Enabling the Agent
To enable the Germain monitoring agent, the following arguments have to included in the startup parameters of the monitored Java application:
-javaagent:[PATH_TO_AGENT_JAR_FILE]=[PATH_TO_PROPERTIES_FILE]
Enabling access to internal JDK classes (JDK17 and above)
If you are planning to use the agent’s HTTP request monitoring feature in JDK17 or above, you will need to additionally pass the following argument to your monitored application:
--add-exports java.base/sun.net.www.protocol.http=ALL-UNNAMED"
IBM JVM only JVM Argument
If you are using IBM’s JVM you will need to add the following to any scripts used to start the existing Java applications to include the germain.java.security
file.
-Djava.security.properties=/[PATH_TO_SECURITY_FILE]/germain.java.security
Component: Code Profiler
Feature Availability: 2022.1 or later