Monday, April 2, 2012

Java monitoring tools

There are a few tools you can use to monitor and identify performance inhibitors in your Java™ applications.

vmstat
Provides information about various system resources. It reports statistics on kernel threads in the run queue as well as in the wait queue, memory usage, paging space, disk I/O, interrupts, system calls, context switches, and CPU activity.
iostat
Reports detailed disk I/O information.
topas
Reports CPU, network, disk I/O, Workload Manager and process activity.
tprof
Profiles the application to pinpoint any hot routines or methods, which can be considered performance problems.
ps -mo THREAD
Shows to which CPU a process or thread is bound.
Java profilers [-Xrunhprof, Xrunjpa64]
Determines which routines or methods are the most heavily used.
java -verbose:gc
Checks the impact of garbage collection on your application. It reports total time spent doing garbage collection, average time per garbage collection, average memory collected per garbage collection, and average objects collected per garbage collection.