jps
Java Virtual Machine Process Status Tool 显示当前所有java进程pid的命令
# 仅输出VM标识符,不包括class,name ,jar,name,arguments in main method等信息
[root@elastic-slave ~]# jps -q
# 输出main method的参数
[root@elastic-slave ~]# jps -m
# 输出完全的报名,应用类名,jar的完整路径买那个
[root@elastic-slave ~]# jps -l
# 输出jvm参数
[root@elastic-slave ~]# jps -v
# 输出通过flag文件传递到JVM中的参数(.hotspotrc文件或-XX:Flags=文件)
[root@elastic-slave ~]# jps -V
jcmd
jcmd工具,可替代jps工具查看本地jvm信息
# 查看本地java进程列表
[root@elastic-slave ~]# jcmd
# 查看支持的命令列表
[root@elastic-slave ~]# jcmd 17917 help
17917:
The following commands are available:
JFR.stop
JFR.start
JFR.dump
JFR.check
VM.native_memory
VM.check_commercial_features
VM.unlock_commercial_features
ManagementAgent.stop
ManagementAgent.start_local
ManagementAgent.start
VM.classloader_stats
GC.rotate_log
Thread.print
GC.class_stats
GC.class_histogram
GC.heap_dump
GC.finalizer_info
GC.heap_info
GC.run_finalization
GC.run
VM.uptime
VM.dynlibs
VM.flags
VM.system_properties
VM.command_line
VM.version
help
# 打印线程栈
[root@elastic-slave ~]# jcmd 17917 Thread.print -l
# 生成指定进程的JVM Heap Dump
[root@elastic-slave ~]# jcmd 17917 GC.heap_dump /data/filename.dump
# 查看类的统计信息
[root@elastic-slave ~]# jcmd 17917 GC.class_histogram
# 打印启动命令及参数
[root@elastic-slave ~]# jcmd 17917 VM.command_line
# 查看系统属性内容
[root@elastic-slave ~]# jcmd 17917 VM.system_properties
# 查看虚拟机启动时间
[root@elastic-slave ~]# jcmd 17917 VM.uptime
# 查看性能统计
[root@elastic-slave ~]# jcmd 17917 PerfCounter.print
javap
jstat
jmap
jinfo
jhat
jstack