【十】虚拟机工具 03 - jinfo命令使用
guchunchaodeMacBook-Air:workspaces guchunchao$ jinfo
Usage:
jinfo [option] <pid>
(to connect to running process)
jinfo [option] <executable <core>
(to connect to a core file)
jinfo [option] [server_id@]<remote server IP or hostname>
(to connect to remote debug server) where <option> is one of:
-flag <name> to print the value of the named VM flag
-flag [+|-]<name> to enable or disable the named VM flag
-flag <name>=<value> to set the named VM flag to the given value
-flags to print VM flags
-sysprops to print Java system properties
<no option> to print both of the above
-h | -help to print this help message
参数说明
- pid 对应jvm的进程id
- executable core 产生core dump文件
- [server-id@]remote server IP or hostname 远程的ip或者hostname,server-id标记服务的唯一性id
option
- no option 输出全部的参数和系统属性
- -flag name 输出对应名称的参数
- -flag [+|-]name 开启或者关闭对应名称的参数
- -flag name=value 设定对应名称的参数
- -flags 输出全部的参数
- -sysprops 输出系统属性
Javacore 概述
Javacore,也可以称为“threaddump”或是“javadump”,它是 Java 提供的一种诊断特性,能够提供一份可读的当前运行的 JVM 中线程使用情况的快照。即在某个特定时刻,JVM 中有哪些线程在运行,每个线程执行到哪一个类,哪一个方法。
应用程序如果出现不可恢复的错误或是内存泄露,就会自动触发 Javacore 的生成。
示例一: no option
命令:jinfo pid
描述:输出当前 jvm 进程的全部参数和系统属性
(****经验证,对rcm进行验证,报错,进程死掉***)
示例二: -flag name
查看虚拟机某个参数的状态 -:关闭状态 + :开启状态
guchunchaodeMacBook-Air:workspaces guchunchao$ jps
6112 Bootstrap guchunchaodeMacBook-Air:workspaces guchunchao$ jinfo -flag UseSerialGC 6112
-XX:-UseSerialGC
guchunchaodeMacBook-Air:workspaces guchunchao$ jinfo -flag UseG1GC 6112
-XX:-UseG1GC
guchunchaodeMacBook-Air:workspaces guchunchao$ jinfo -flag UseParallelGC 6112
-XX:+UseParallelGC
使用该命令,可以查看指定的 jvm 参数的值。如:查看当前 jvm 进程是否开启打印 GC 日志。
示例三:-flag [+|-]name
命令:jinfo -flag [+|-]name pid
描述:开启或者关闭对应名称的参数
使用 jinfo 可以在不重启虚拟机的情况下,可以动态的修改 jvm 的参数。尤其在线上的环境特别有用。
使用如下:
guchunchaodeMacBook-Air:workspaces guchunchao$ jinfo -flag PrintGCDetails
-XX:+PrintGCDetails
guchunchaodeMacBook-Air:workspaces guchunchao$ jinfo -flag -PrintGCDetails
guchunchaodeMacBook-Air:workspaces guchunchao$ jinfo -flag PrintGCDetails
-XX:-PrintGCDetails
guchunchaodeMacBook-Air:workspaces guchunchao$ jinfo -flag +PrintGCDetails
guchunchaodeMacBook-Air:workspaces guchunchao$ jinfo -flag PrintGCDetails
-XX:+PrintGCDetails
示例四:-flag name=value
命令:jinfo -flag name=value pid
描述:修改指定参数的值。
同示例三,但示例三主要是针对 boolean 值的参数设置的。
如果是设置 value值,则需要使用 name=value 的形式。
使用如下:
guchunchaodeMacBook-Air:workspaces guchunchao$ jinfo -flag MaxHeapFreeRatio
-XX:MaxHeapFreeRatio=
guchunchaodeMacBook-Air:workspaces guchunchao$ jinfo -flag MaxHeapFreeRatio=
guchunchaodeMacBook-Air:workspaces guchunchao$ jinfo -flag MaxHeapFreeRatio
-XX:MaxHeapFreeRatio=
并不是所有的参数都支持动态修改:
guchunchaodeMacBook-Air:workspaces guchunchao$ jinfo -flag SurvivorRatio=
Exception in thread "main" com.sun.tools.attach.AttachOperationFailedException: flag 'SurvivorRatio' cannot be changed at sun.tools.attach.BsdVirtualMachine.execute(BsdVirtualMachine.java:213)
at sun.tools.attach.HotSpotVirtualMachine.executeCommand(HotSpotVirtualMachine.java:261)
at sun.tools.attach.HotSpotVirtualMachine.setFlag(HotSpotVirtualMachine.java:234)
at sun.tools.jinfo.JInfo.flag(JInfo.java:134)
at sun.tools.jinfo.JInfo.main(JInfo.java:81)
示例五: -flags
命令:jinfo -flags pid
描述:输出全部的参数

其中,Command line是在启动java进程时写的命令行
(****经验证,对rcm进行验证,报错,进程死掉***)
示例六:-sysprops
命令:jinfo -sysprops pid
描述:输出当前 jvm 进行的全部的系统属性

(****经验证,对rcm进行验证,报错,进程死掉***)
【十】虚拟机工具 03 - jinfo命令使用的更多相关文章
- 【九】虚拟机工具 02 - jstat命令使用
java8jstat官方文档 jstat命令可以查看堆内存各部分的使用量,以及加载类的数量.命令的格式如下: jstat [-命令选项] [vmid] [间隔时间/毫秒] [查询次数] 注意:使用的j ...
- 【八】虚拟机工具 01 jps命令详解
JPS 名称: jps - Java Virtual Machine Process Status Tool 命令用法: jps [options] [hostid] options:命令选项,用来对 ...
- 十、jdk工具之Jdb命令(The Java Debugger)
目录 一.jdk工具之jps(JVM Process Status Tools)命令使用 二.jdk命令之javah命令(C Header and Stub File Generator) 三.jdk ...
- Java的jinfo命令使用详解
jinfo命令简介 jinfo(Java Virtual Machine Configuration Information)是JDK提供的一个可以实时查看Java虚拟机各种配置参数和系统属性的命令行 ...
- JVM分析工具与查看命令
1.概述 无可避免地,我们都需要用到多线程的一天.单纯地使用多线程的参数设置,比如-Xms.-Xmx.-Xss等,还不足够,我们还要学会如何分析JVM里面的线程状况. 在进行java程序问题定位时,内 ...
- python开发最受欢迎的十款工具
python开发最受欢迎的十款工具 dreamyla3个月前 今天小编给正在学习python开发的朋友介绍十款最受欢迎的开发工具,因为在学习python开发过程中少不了IDE或者代码编辑器,想要提高开 ...
- 在vSphere Client上安装虚拟机工具VMware Tools
一.什么是虚拟机工具 VMware Tools是一套安装在虚拟机操作系统中的实用程序.VMware Tools可提高虚拟机的性能,并在 VMware产品中实现多个易于使用的功能. 尽管客户机操作系统在 ...
- 学习笔记:CentOS7学习之二十二: 结构化命令case和for、while循环
目录 学习笔记:CentOS7学习之二十二: 结构化命令case和for.while循环 22.1 流程控制语句:case 22.2 循环语句 22.1.2 for-do-done 22.3 whil ...
- vSphere Client上安装虚拟机工具VMware Tools
vSphere Client上安装虚拟机工具VMware Tools 1.安装虚拟机 具体安装步骤就不详述了,安装虚拟机之后右击虚拟机名->客户机->安装/升级VMware Tools,这 ...
随机推荐
- LaTex in Markdown
上次写了Markdown,这次用到了LaTex,也出一期(吐槽,工作量比Markdown高太多...) Markdown基础:https://www.cnblogs.com/dotnetcrazy ...
- Python学习day4 数据类型Ⅱ(列表,元祖)
day4 知识补充&数据类型:列表,元祖 1.知识补充 1.编译型/解释型 编译型:在代码编写完成之后编译器将其变成另外一个文件教给你算计执行. 代表语言:Java,c,c++ ,c#, Go ...
- NowCoder--牛客练习赛30 C_小K的疑惑
题目链接 :牛客练习赛30 C_小K的疑惑 i j k 可以相同 而且 距离%2 只有 0 1两种情况 我们考虑 因为要 d(i j)=d(i k)=d(j k) 所以我们只能找 要么三个点 任意两个 ...
- 【CH6801】棋盘覆盖
题目大意:给定一个 N*N 的棋盘,棋盘上有些位置不能防止任何东西,现用 1*2 的骨牌填充棋盘,问最多能铺多少块骨牌. 题解:由于骨牌只能覆盖相邻的两个格子,那么按照对角线进行划分的格子可以保证一定 ...
- [luogu3391][文艺平衡树]
题目链接 思路 splay区间操作的裸题. 假如要对l-r这段区间操作,那么就先把l-1伸展到根节点,然后把r +1伸展为根的儿子.这样r + 1的左儿子就是要操作的区间了.只要在上面打上标记,以后每 ...
- zxing二维码的生成与解码(C#)
ZXing是一个开源Java类库用于解析多种格式的1D/2D条形码.目标是能够对QR编码.Data Matrix.UPC的1D条形码进行解码. 其提供了多种平台下的客户端包括:J2ME.J2SE和An ...
- .Net Core Nlog日志记录到MySql
前段时间想要实现这个功能网上找了很多资料,现在整理一下发布出来,希望给大家一点帮助. 首先是依赖项的选择: 关于NLog版本不是最新是因为最新版本有点问题我试了试不支持,所以选了这几个版本,MySql ...
- 记录EXCEL格式和TXT文本格式之间的互转
EXCEL格式转变成TXT文本格式 1.打开execl文档,点击文件另存为 2.选择txt保存 3.重命名文档,打开该txt文档 4.按Ctrl+H,将文档中空格转换成其他分割符,单击确定 TXT格式 ...
- Day16--Python--初识面向对象
今日主要内容一. 面向对象思想 1. 面向过程. 重点在'过程'. 按照事物迭代发展流程. 优点: 简单,流水线式的操作 缺点: 可扩展性差.可维护性差. 2. 面向对象. 对象是属性和动作的集合体. ...
- 【好用的Mac分屏软件】Magnet for Mac 2.3
「Magnet」是一款Mac窗口管理工具. 当您每次将内容从一个应用移动到另一应用时,当您需要并排比较数据时,或是以其他方式进行多任务处理时,你需要妥善放置所有窗口.Magnet 让这一过程清爽又 ...
