What are the JVM monitoring tools included in JDK?
There are several built-in JVM monitoring tools in the JDK, such as:
- jps (JVM Process Status Tool): a tool used to view information about Java processes running on the JVM, such as process ID and main class name.
- jstat is a tool used to collect and display statistical information on the internal operations of the JVM, such as garbage collection statistics and class loading statistics.
- jinfo (Java Configuration Info): Used to view and modify JVM runtime configuration parameters, such as heap size, thread stack size, etc.
- jmap (Memory Map for Java): used to generate a memory snapshot of the JVM for analyzing memory usage, such as viewing object distribution, and identifying memory leaks.
- jstack (Stack Trace for Java) is used to generate a snapshot of the JVM’s threads for analyzing their states, such as identifying deadlocks and viewing thread call stacks.
- jcmd (JVM Diagnostic Tool): Used to send diagnostic commands to a running JVM, such as thread dumps, heap dumps, etc.
- jconsole, also known as the Java Monitoring and Management Console, is a tool used to provide a graphical interface for real-time monitoring and managing of the JVM, including information on memory, threads, class loading, and garbage collection.
- VisualVM, a visual tool based on the NetBeans platform, offers features such as JVM monitoring, memory analysis, and performance tuning.
These are some commonly used JVM monitoring tools that come with the JDK, you can choose the appropriate tool to use according to your needs.