JVM Troubleshooting命令-jinfo
概述
用来查看正在运行的Java应用程序的扩展参数,支持在运行时,修改部分参数。
命令格式
jinfo [ option ] pid
jinfo [ option ] executable core
jinfo [ option ] [ servier-id ] remote-hostname-or-IP
-
option : 命令行功能选项
-
pid : 进程id
-
executable : 生成可执行的core dump文件
-
core : 要打印配置信息的核心文件
-
remote-hostname-or-IP : 远程调试服务器主机名或IP地址
-
servier-id : 在同一个远程主机上运行多个调试服务器时使用的可选唯一ID
查看最大内存: jinfo -flag MaxHeapSize pid
查看垃圾回收器 : jinfo -flag UseParallelGC pid
功能选项
-
无参数 : 以key=value的方式输出全部的参数和系统属性
-
-flag 参数名 : 输出指定的参数的值
- 如
jinfo -flag PrintGC 8520
显示PrintGC参数状态
- 如
-
-flag [+|-] 参数名 : 启用或禁用指定参数的功能(参数必须是布尔型的)
- 如
jinfo -flag -PrintGC 8520
关闭PrintGC功能 - 如
jinfo -flag +PrintGC 8520
打开PrintGC功能
- 如
-
-flag name=value : 设置参数name值为value
-
-flags : 输出传递给JVM的参数
-
-sysprops : 以key-value的方式打印java系统属性
-
-h : 打印帮助信息
-
-help : 打印帮助信息
不是所有参数都可以修改的, 哪些参数可以修改的,可以使用下面命令查询:
java -XX:+PrintFlagsFinal -version | grep manageable
官方文档: https://docs.oracle.com/javase/8/docs/technotes/tools/unix/jinfo.html