一.概述
程序运行中经常会遇到各种问题,定位问题时通常需要综合各种信息,如系统日志、堆dump文件、线程dump文件、GC日志等。通过虚拟机监控和诊断工具可以帮忙我们快速获取、分析需要的数据,进而提高问题解决速度。 本文将介绍虚拟机常用监控和问题诊断命令工具的使用方法,主要包含以下工具:
jps 显示系统中所有Hotspot虚拟机进程
jstack 显示虚拟机的线程栈信息
jstat收集Hotspot虚拟机各方面运行数据
jmap用于生成虚拟机的内存快照信息
jinfo 显示虚拟机的配置信息
jconsole 一个java GUI监视工具,可以以图表化的形式显示各种数据
jvisualvm 一个基于图形化界面的、可以查看本地及远程的JAVA GUI监控工具
jhat 用于对JAVA heap进行离线分析的工具
Jdb 对core文件和正在运行的Java进程进行实时地调试
以上工具的官方文档地址: http://docs.oracle.com/javase/1.5.0/docs/tooldocs/
二.工具介绍
1.jps命令(Java Virtual Machine Process Status Tool)
3.jstat命令(Java Virtual Machine Statistics Monitoring Tool)
5.jinfo命令(Java Configuration Info)
6.jconsole命令(Java Monitoring and Management Console)
7.jvisualvm命令(Java Virtual Machine Monitoring, Troubleshooting, and Profiling Tool)