JBoss Profiler is a log based profiler using the JVMPI system. It uses an agent written in C that captures events from the JVM and logs them to disk. A web application running on JBoss or another machine can be used to analyze these logs through a web browser.
Using log files is especially useful for server application analysis. Creating profiling snapshots without the need of a front-end near the JVM means the data can be analyzed remotely.
See Other Best Performance analysis Projects in Java: