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命令使用的更多相关文章

  1. 【九】虚拟机工具 02 - jstat命令使用

    java8jstat官方文档 jstat命令可以查看堆内存各部分的使用量,以及加载类的数量.命令的格式如下: jstat [-命令选项] [vmid] [间隔时间/毫秒] [查询次数] 注意:使用的j ...

  2. 【八】虚拟机工具 01 jps命令详解

    JPS 名称: jps - Java Virtual Machine Process Status Tool 命令用法: jps [options] [hostid] options:命令选项,用来对 ...

  3. 十、jdk工具之Jdb命令(The Java Debugger)

    目录 一.jdk工具之jps(JVM Process Status Tools)命令使用 二.jdk命令之javah命令(C Header and Stub File Generator) 三.jdk ...

  4. Java的jinfo命令使用详解

    jinfo命令简介 jinfo(Java Virtual Machine Configuration Information)是JDK提供的一个可以实时查看Java虚拟机各种配置参数和系统属性的命令行 ...

  5. JVM分析工具与查看命令

    1.概述 无可避免地,我们都需要用到多线程的一天.单纯地使用多线程的参数设置,比如-Xms.-Xmx.-Xss等,还不足够,我们还要学会如何分析JVM里面的线程状况. 在进行java程序问题定位时,内 ...

  6. python开发最受欢迎的十款工具

    python开发最受欢迎的十款工具 dreamyla3个月前 今天小编给正在学习python开发的朋友介绍十款最受欢迎的开发工具,因为在学习python开发过程中少不了IDE或者代码编辑器,想要提高开 ...

  7. 在vSphere Client上安装虚拟机工具VMware Tools

    一.什么是虚拟机工具 VMware Tools是一套安装在虚拟机操作系统中的实用程序.VMware Tools可提高虚拟机的性能,并在 VMware产品中实现多个易于使用的功能. 尽管客户机操作系统在 ...

  8. 学习笔记:CentOS7学习之二十二: 结构化命令case和for、while循环

    目录 学习笔记:CentOS7学习之二十二: 结构化命令case和for.while循环 22.1 流程控制语句:case 22.2 循环语句 22.1.2 for-do-done 22.3 whil ...

  9. vSphere Client上安装虚拟机工具VMware Tools

    vSphere Client上安装虚拟机工具VMware Tools 1.安装虚拟机 具体安装步骤就不详述了,安装虚拟机之后右击虚拟机名->客户机->安装/升级VMware Tools,这 ...

随机推荐

  1. C 头文件、宏、编译问题

    @2019-02-15 [小记] > C 头文件的防重复包含是针对同一个源文件而言 原因: #include 头文件就是一段代码的拷贝,头文件中若有类型定义等,重复包含就会造成编译错误,若无类型 ...

  2. 654. Maximum Binary Tree

    654. Maximum Binary Tree 题目大意: 意思就是给你一组数,先选一个最大的作为根,这个数左边的数组作为左子树,右边的数组作为右子树,重复上一步. 读完就知道是递归了. 这个题真尼 ...

  3. kafka为什么这么优秀!

    kafka为什么这么优秀! 阿飞的博客 匠心零度 今天 1.动机2.持久化3.效率4.生产者4.1负载均衡4.2异步发送5.消费者Push vs. Pull消费者位置离线数据加载 1.动机 kafka ...

  4. [ZJOI2018]历史

    [ZJOI2018]历史 最大化access轻重链的切换次数 考虑一个点的贡献,即它交换重儿子的次数 发现这个次数只和它自己ai以及每个儿子的子树次数和有关. 一个关键的事实是: 我们可以自上而下进行 ...

  5. c/c++ 大于等于 大于 时间效率比较

    变成汇编,都是: 大于等于和大于都是电路上的处理,时间上应该差不多.

  6. CodeForces - 18A Triangle(数学?)

    传送门 题意: 给出三个点的坐标,初始,这三个点可以构成一个三角形. 如果初始坐标可以构成直角三角形,输出"RIGNT". 如果某个点的 x或y 坐标移动一个单位后可以组成直角三角 ...

  7. Gym - 101755G Underpalindromity (树状数组)

    Let us call underpalindromity of array b of length k the minimal number of times one need to increme ...

  8. getchar(),scanf(),gets(),cin,输入字符串

    #include<iostream>#include<stdio.h>#include<string.h>#include<string>using n ...

  9. TensorFlow install

    $sudo pip install virtualenv Create a virtual environment (recommended) Create a new virtual environ ...

  10. linux文件系统启动流程、启动脚本

    linux文件系统启动流程.启动脚本 下面是一张Linux启动流程图: 在了解启动流程之前,我们应该先知道系统的几个重要脚本和配置文件,他们对应的路径为: 1. /sbin/init 2. /etc/ ...