文章目录

  • 命令说明
  • 语法
  • 示例说明
    • jinfo -flag pid:打印所有的jvm标志信息
    • jinfo -flag [+|-] name pid :启用或者禁用指定的jvm参数
    • info -flag name=value pid:给指定的jvm参数设置值
    • jinfo -sysprops pid:打印系统参数信息
    • jinfo pid:打印以上所有配置信息

命令说明

jinfo[Configguration Info for Java] 的作用是实时地查看和调整虚拟机的各项参数。

使用jps -v 可以查看虚拟机启动时显示指定的参数列表,但是如果想知道未被显示指定的参数的系统默认值,除了去找资料外,就只能使用jinfo的-flag选项进行查询了。

语法

[root@localhost ~]# 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

示例说明

jinfo -flag pid:打印所有的jvm标志信息

C:\Users\Think>jps -l
44748 com.jvm.TestC:\Users\Think>jinfo -flags 123
Attaching to process ID 123, please wait...
Debugger attached successfully.
Server compiler detected.
JVM version is 25.121-b13
Non-default VM flags: -XX:CICompilerCount=4 -XX:InitialHeapSize=10485760 -XX:MaxHeapSize=1048576000 -XX:MaxNewSize=349175808 -XX:MinHeapDeltaBytes=524288 -XX:NewSize=3145728 -XX:OldSize=7340032 -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:+UseFastUnorderedTimeStamps -XX:-UseLargePagesIndividualAllocation -XX:+UseParallelGC
Command line:  -agentlib:jdwp=transport=dt_socket,address=127.0.0.1:64223,suspend=y,server=n -Xms10m -Xmx1000m -Dfile.encoding=UTF-8
  1. Non-default VM flags: 非默认VM标志
  2. Command line: 命令行中指定的jvm参数
  • jinfo -flag name pid: 打印指定的jvm参数信息
[root@localhost ~]# jinfo -flag InitialHeapSize 2345
-XX:InitialHeapSize=522190848

jinfo -flag [+|-] name pid :启用或者禁用指定的jvm参数

我们运行一段程序,下面这段程序vm参数设置为:-Xms5m -Xmx5m,运行过程中会参数OOM,在运行过程中,我们添加vm参数:+HeapDumpOnOutOfMemoryError:发生OOM的时候,让程序打印堆dump文件

public class Test7 {private static final int _1M = 1024 * 1024;public static void main(String[] args) throws InterruptedException {List<Object> list = new ArrayList<>();for (int i = 0; i < 10; i++) {TimeUnit.SECONDS.sleep(3);list.add(new byte[_1M]);}}
}

运行过程中添加参数

C:\Users\Think>jps -l
44520 com.jvm.test7.Test7C:\Users\Think>jinfo -flag +HeapDumpOnOutOfMemoryError 44520C:\Users\Think>jinfo -flags 44520
Attaching to process ID 44520, please wait...
Debugger attached successfully.
Server compiler detected.
JVM version is 25.121-b13
Non-default VM flags: -XX:CICompilerCount=4 -XX:+HeapDumpOnOutOfMemoryError -XX:InitialHeapSize=6291456 -XX:MaxHeapSize=6291456 -XX:MaxNewSize=2097152 -XX:MinHeapDeltaBytes=524288 -XX:NewSize=2097152 -XX:OldSize=4194304 -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:+UseFastUnorderedTimeStamps -XX:-UseLargePagesIndividualAllocation -XX:+UseParallelGC
Command line:  -agentlib:jdwp=transport=dt_socket,address=127.0.0.1:53193,suspend=y,server=n -Xms5m -Xmx5m -Dfile.encoding=UTF-8

程序运行结果:

Connected to the target VM, address: '127.0.0.1:53193', transport: 'socket'
java.lang.OutOfMemoryError: Java heap space
Dumping heap to java_pid44520.hprof ...
Disconnected from the target VM, address: '127.0.0.1:53193', transport: 'socket'
Heap dump file created [4535342 bytes in 0.009 secs]
Exception in thread "main" java.lang.OutOfMemoryError: Java heap spaceat com.jvm.test7.Test7.main(Test7.java:18)

info -flag name=value pid:给指定的jvm参数设置值

jinfo -sysprops pid:打印系统参数信息

打印的信息和System.getProperties()一样。

C:\Users\Think>jinfo -sysprops 44748
Attaching to process ID 44748, please wait...
Debugger attached successfully.
Server compiler detected.
JVM version is 25.121-b13
java.runtime.name = Java(TM) SE Runtime Environment
java.vm.version = 25.121-b13
sun.boot.library.path = D:\installsoft\Java\jdk1.8.0_121\jre\bin
java.vendor.url = http://java.oracle.com/
java.vm.vendor = Oracle Corporation
path.separator = ;
file.encoding.pkg = sun.io
java.vm.name = Java HotSpot(TM) 64-Bit Server VM
sun.os.patch.level =
sun.java.launcher = SUN_STANDARD
user.script =
user.country = CN
user.dir = D:\code\IdeaProjects\spring-aop-demo
java.vm.specification.name = Java Virtual Machine Specification
java.runtime.version = 1.8.0_121-b13
java.awt.graphicsenv = sun.awt.Win32GraphicsEnvironment
os.arch = amd64
java.endorsed.dirs = D:\installsoft\Java\jdk1.8.0_121\jre\lib\endorsed
line.separator =java.io.tmpdir = C:\Users\Think\AppData\Local\Temp\
java.vm.specification.vendor = Oracle Corporation
user.variant =
os.name = Windows 10
sun.jnu.encoding = GBK
java.library.path = D:\installsoft\Java\jdk1.8.0_121\bin;C:\Windows\Sun\Java\bin;C:\Windows\system32;C:\Windows;C:\ProgramData\DockerDesktop\version-bin;
java.class.path = D:\installsoft\Java\jdk1.8.0_121\jre\lib\charsets.jar;D:\installsoft\Java\jdk1.8.0_121\jre\lib\deploy.jar;
java.specification.vendor = Oracle Corporation
awt.toolkit = sun.awt.windows.WToolkit
java.vm.info = mixed mode
java.version = 1.8.0_121
java.ext.dirs = D:\installsoft\Java\jdk1.8.0_121\jre\lib\ext;C:\Windows\Sun\Java\lib\ext
......

jinfo pid:打印以上所有配置信息

C:\Users\Think>jinfo 44748
Attaching to process ID 44748, please wait...
Debugger attached successfully.
Server compiler detected.
JVM version is 25.121-b13
Java System Properties:java.runtime.name = Java(TM) SE Runtime Environment
java.vm.version = 25.121-b13
sun.boot.library.path = D:\installsoft\Java\jdk1.8.0_121\jre\bin
java.vendor.url = http://java.oracle.com/
java.vm.vendor = Oracle Corporation
path.separator = ;
......VM Flags:
Non-default VM flags: -XX:CICompilerCount=4 -XX:InitialHeapSize=10485760 -XX:MaxHeapSize=1048576000 -XX:MaxNewSize=349175808 -XX:MinHeapDeltaBytes=524288 -XX:NewSize=3145728 -XX:OldSize=7340032 -XX:+UseCompressedClassPointers -XX:+UseCompressedOops -XX:+UseFastUnorderedTimeStamps -XX:-UseLargePagesIndividualAllocation -XX:+UseParallelGC
Command line:  -agentlib:jdwp=transport=dt_socket,address=127.0.0.1:64223,suspend=y,server=n -Xms10m -Xmx1000m -Dfile.encoding=UTF-8

java - jinfo jvm配置信息工具相关推荐

  1. Java配置信息工具jinfo

    转载自 http://info.51rtb.cn/guess/92.html jinfo(Configuration Info For Java)的作用是实时地查看和调整虚拟机的各项参数.使用jps ...

  2. java generatorconfig_generatorConfig.xml配置信息详细

    mybatis-generator有三种用法:命令行.eclipse插件.maven插件.我的以为maven插件最方便,能够在eclipse/intellij idea等ide上能够通用.html 下 ...

  3. java 在 jvm 配置字体库

    1.C:\Windows\Fonts 在windows上打包字体库 2./opt/jdk1.8.0_231/jre/lib/fonts 在jvm的jre/lib/fonts目录下解压 3.重启服务(完 ...

  4. java 启动内存参数_请问该如何设置Java虚拟机JVM启动内存参数?

    jps(JVM Process Status Tool):JVM机进程状况工具 用来查看基于HotSpot JVM里面所有进程的具体状态, 包括进程ID,进程启动的路径等等.与unix上的ps类似,用 ...

  5. java 虚拟机(jvm)-06-JVM jdk 自带工具 jstack jconsole jvisualvm jmap jinfo

    jdk 自带工具 在 java 安装目录 bin 下. 你可以看到对应的信息,这里有很多 java 为我们提供的工具. $ ls appletviewer.exe* java-rmi.exe* jav ...

  6. Java内存泄露和内存溢出、JVM命令行工具、.JDK可视化工具、Java Class文件

    1.Java内存泄露和内存溢出对比 1.1 Java 内存泄露 内存泄露是指一个不再被程序使用的对象或变量还在内存中占用空间. 1.1.1判断内存空间是否符合垃圾回收的标准 在Java语言中,判断一个 ...

  7. Java的JVM性能监控与故障处理工具详细介绍以及使用案例

    给一个系统定位问题的时候,知识.经验是关键基础,数据是依据.工具是运用知识处理数据的手段.这里说的数据包括:运行日志.异常堆栈.GC日志.线程快照文件(threaddump/javacore文件).堆 ...

  8. 这几款 JVM 故障诊断处理工具,你还不会?

    作者 | Silently9527   责编 | 欧阳姝黎 前言 前几天中午正在和同事最近聊股市较好,这几天每天都可以喝点肉汤,心里还是挺高兴的:正在这个时候收到了线上告警邮件和运维同学的消息,&qu ...

  9. java虚拟机(八)--java性能监控与故障处理工具

    问题定位: 除了个人经验,知识,工具也是很重要的,通过数据进行问题分析,包括:运行日志.异常堆栈.GC日志.线程快照(threaddump/javacore文件 ).堆转储快照(heapdump/hp ...

最新文章

  1. JQUERY动态生成当前年份的前5年以及后 2年
  2. 关于深度学习的小知识点
  3. Html5实现手机九宫格密码解锁功能
  4. Python__模拟实现一个ATM+购物商城程序
  5. centos中文目录换成英文目录
  6. WPF自定义控件与样式(1)-矢量字体图标(iconfont)
  7. 2019数据技术嘉年华主会场,数据英雄荟萃一堂共论道
  8. pandas读取csv某一列_让pandas处理大数据速度变快的三个技巧
  9. Linux 查看命令
  10. 腾讯还在提高围棋AI绝艺的棋力,柯洁说已经超过当年AlphaGo
  11. 微信公众平台2013.08.05更新说明
  12. 项目从 tomcat7部署到tomcat8
  13. 数据可视化|用散点图进行数据分析
  14. “RFID射频识别技术”简介
  15. 员工转正答辩官提问_转正答辩(交付经理)--王总提问6.19
  16. 用python导入dmp到oracle
  17. rhel系统启动过程_技术|Linux 开机引导和启动过程详解
  18. 《关于2010年计算机信息系统集成项目经理资质申报有关事项的通知》
  19. 云计算与云存储,具体是什么关系?
  20. Web下文件上传下载的路径问题

热门文章

  1. 人工智能培训公司Spare5获得Intel牵头的1400万美元融资,并更名为Mighty AI
  2. 新东西013--Android软键盘详解
  3. “夸夸群”5分钟20块?!手把手教你定制一款专属夸夸机器人
  4. scrcpy设置快捷键_(转载)scrcpy——Android投屏神器(使用教程)
  5. PointNet++论文解读和代码解析
  6. python3怎么切换汉版_python3 中文繁体转换简体,简体转换为繁体,汉字转换拼音...
  7. DES, RC4, RC5, AES, RSA, MD5, SHA1 安全算法分析
  8. 对google手机编译android源码刷机
  9. python如何确定拐点_经典评分卡模型python实现(mdlp离散化,woe拐点判断以及iv值筛选变量)...
  10. 做人脸识别的时候,千万别光着