Which tools to use to monitor and analyse performance of Java?
Which tools to use to monitor and analyse performance of Java?
JavaTroubleshooting
Sebastian Misiewicz
Java - Troubleshooting #1
The list contains applications, which I've been using or I am using in my commercial and non-commercial projects.
Profile and monitor applications
VisualVM
Allows you to monitor and analyse performance. It can be used as a stand-alone application or integrated with an IDE (currently Eclipse is supported).
Can be used as stand-alone application or from Eclipse
Great visual analysis of CPU, Heap/PermGen, Classes and Threads
JVM Monitor
It's a profiler integrated with Eclipse.
For simple usages should be enough
Integration with Eclipse only
Sometimes it gets stuck and the list of available applications to profile won't be refreshed
JProfiler
The award winning tool for profiling Java applications. If you need the best tool around and you have some money to spend you can go for it.
Award winning tool
Integration with application servers
Trial licence
Thread and Monitor Dump Analyzer for Java
Useful for analysing javacore dumps.
Collects the data and shows it in a very simple form, but still better than raw file
Heap dump
Memory Analyzer (MAT)
Great tool for analysing hprof heap dumps.
Acquire a heap dump from running process
Wizard for easy start
Build-in reports (leak suspects, top components)
HeapAnalyser
I've used it for analysing memory problems on IBM WebSphere application server.
A graphical tool for discovering possible Java heap leaks
Supports .phd and .ha
Various possibilities to analyse heap
Avalilable as a jar file
Logs
StdErr Analyser - hsa_jdk15.jar
If you face a problem and the only thing you have is a log file (the stderr log), this application may be helpful. It plots heap size (with free heap, used heap and allocation failures).