Java Monitoring
Feature
Germain can monitor any Java application. The main features of the Germain Java Application monitoring are:
CPU and memory usage
HTTP requests (inbound and outbound)
JMS messages (inbound and outbound)
SQL transactions
Calls to any Class Method (custom list at application startup)
Sampler to collect CPU profiling information
JMX access for inspecting agent statistics or configuration remotely (optional)
Inspecting the agent via JMX
The Germain Java agent registers multiple MBeans via JMX to expose additional statistics at run-time. Any JMX client, such as VisualVM with the MBeans plugin, can be used to connect to the Java process and browse the exported objects.
Caveats of CPU sampling
The agent runs inside the JVM; that means that program errors can affect the monitored application - this is true for any profiler
The agent runs inside the JVM, thus it is subject to Java timer accuracy and garbage collection
The agent cannot distinguish between overloaded methods because they are stored ambiguously in the stack trace.
The agent only counts threads which are in RUNNABLE state
Time spent in filtered methods will be attributed to the last unfiltered caller method
Examples



Component: Code Profiler
Feature Availability: 2022.1 or later