HPjmeter 4.3 User's Guide
JVM agent
• If the console runs out of memory during an open session, the JVM agent will close its session
a few minutes later. Then the JVM agent prints out this to standard error on its controlling
terminal:
HPjmeter JVM agent
warning: Session communication channel failure. Forcing session closure.
When you start a new console, you can reopen a session with the JVM agent.
• You may see an OutOfMemoryError when your application is running with the JVM agent.
One possible cause is that after HPjmeter inserts the agent bytecode instrumentation, the
loaded class data is larger and it needs more space in the Java heap. In the case of HotSpot,
more permanent space is used. If the required permanent space size exceeds HotSpot's default
MaxPermSize, which is determined by the HotSpot version, HotSpot will throw the
OutOfMemoryError. You can use the HotSpot nonstandard option -XX:MaxPermSize=
to set a larger MaxPermSize to avoid the OutOfMemoryError.
• If you see this JVM agent error on startup:
The HPjmeter JVM agent could not
load a class from agent.jar. Please check your classpath and Xbootclasspath.
The HPjmeter agent has encountered an error (log file: HPjmeter.jvmagent_28766.log).
Please contact java-tools-support@hp.com for support.
Check for these conditions:
◦ The -Xbootclasspath option may be missing from the command line. (This should
not be the problem if you are using the -agentlib switch. -Xbootclasspath is
optional when used with -agentlib.)
◦ If you have an -Xbootclasspath argument, then make sure the path it is pointing to
is correct.
• On an HP Integrity (Itanium) server, you see that the JVM agent is not starting and the error
message indicates that the HPjmeter shared library cannot be found, as follows:
Error occurred during initialization of VM Could
not find -Xrun library: libjmeter.so
Check to see what Java version you are using. If you are running Java 1.4.2_07, try setting
SHLIB_PATH, rather than using LD_LIBRARY_PATH to define the shared library location. If
this doesn't work, you may need to update to a newer JDK.
• You can set a log level on the JVM agent, which lets you collect varying amounts of information
about the console and JVM agent. For example:
$ /opt/java1.5/bin/java -Xms256m -Xmx512m -agentlib:jmeter=logging=level_of_detail
Available log levels:
◦ FINEST (most impact on performance)
◦ FINER
◦ FINE
◦ CONFIG
◦ INFO
◦ WARNING (default setting)
◦ SEVERE (least impact on performance)
220 Troubleshooting