zoukankan      html  css  js  c++  java
  • JDK命令行监控和故障处理工具

    JDK监控和故障处理工具

    名称 主要作用
    jps JVM Process Status Tool,显示指定系统内所有的HotSpot虚拟机进程。
    jstat JVM Statistics Monitoring Tool,用于收集HotSpot虚拟机各方面的运行数据
    jinfo Configuration Info for Java,显示虚拟机配置信息
    jmap Memory Map for Java,生成虚拟机内存转储快照(heapdump文件)
    jhat JVM Heap Dump Browser,用于分析heapdump文件
    jstack Stack Trace for Java,显示虚拟机线程快照

    jps 虚拟机进程状况工具

      列出正在运行的虚拟机进程,虚拟机执行主类(main函数所在的类)名称和这些进程的本地虚拟机唯一ID(LVMID)。

    jps命令格式

      jps  [ options ] [ hostid ]

    options 作用
    -q 只输出LVMID,省略主类的名称 
      -m     输出虚拟机进程启动时传递给主类main函数的参数
    -l 输出主类全名和LVMID
    -v 输出虚拟机进程启动时JVM参数

     

    jstat 虚拟机统计信息监视工具

      可以显示本地或者远程虚拟机进程中的类加载、内存、垃圾收集、JIT编译等运行数据。

    jstat命令格式

      jstat  [ option vmid  [ interval [ s | ms ]  [ count ] ] ]  (参数 interval和count代表查询间隔和次数)

      本地虚拟机进程的话,vmid和LVMID一致但如果是远程虚拟机进程的话,vmid的格式是

      [ protocol: ] [ // ] lvmid [ @hostname[ :port ]/servername ]

    option 作用
    -class 监视类装载数量、卸载数量、总空间以及类装载所耗费的时间
    -gc 监视Java堆状况,包括Eden区、两个Survivor区、老年代、永久代等的容量、已用空间、GC时间合计等信息
    -gccapacity 监视内容与-gc基本相同,输出主要关注Java堆各个区域使用到的最大、最小空间
    -gcutil 监视内容与-gc基本相同,输出内容主要是已用空间占总空间的百分比
    -gccause 与-gcutil功能一样,额外输出上一次产生GC的原因
    -gcnew 监视新生代的GC状况
    -gcnewcapacity 监视内容与-gcnew一样,输出主要关注使用到的最大、最小空间
    -gcold 监视老生代的GC状况
    -gcoldcapacity 监视内容与-gcold一样,输出主要关注使用到的最大、最小空间
    -gcpermcapacity 监视永久代使用到的最大、最小空间
    -compiler 输出JIT编译器编译过的方法、耗时等信息
    -printcompilation 输出已经被JIT编译了的方法

    jinfo jvm配置信息工具

      可以实时的查看和调整虚拟机的各项参数

    jinfo命令格式

       jinfo  [ option ]  [ arg ]  vmid

    D:javajdk1.7in>jinfo -flag MaxTenuringThreshold 7452
    -XX:MaxTenuringThreshold=15

    jmap 内存映像工具

      用于生成堆转储快照即dump文件

    jmap命令格式

      jmap  [ option ]  vmid

    option 作用
    -dump 生成Java堆转储快照,格式为:-dump:[live, ]format=b,file=<filename>;live参数说明是否只dump出存活的对象
    -finalizerinfo 显示在F-Queue中等待Finalizer线程执行finalize方法的对象,仅Linux平台有效
    -heap 显示Java堆详细信息,如使用哪种回收器,参数配置,分代状况等,仅Linux平台有效
    -histo 显示堆中对象统计信息,包括类,实例数量,合计容量
    -permstat 以ClassLoader为统计口径显示永久代内存状况,仅Linux平台有效
    -F 当虚拟机进程对-dump没有响应时,可使用该选项强制生成dump文件,仅Linux平台有效

    jhat 虚拟机堆转储快照分析工具

      与jmap搭配使用,用于分析dump文件,浏览器输入http://127.0.0.1:7000即可查看

      

      

    jstack 堆栈跟踪工具

      用于生成当前时刻的线程快照,线程快照是当前虚拟机内每一条线程正在执行的方法堆栈集合。其主要目的是定位线程出现长时间停顿的原因如线程死锁,死循环,请求外部资源等。

    jstack命令格式

      jstack  [ option ]  vmid

    option 作用
    -F 无响应时,强制输出线程堆栈快照
    -l 除堆栈快照外,额外显示关于锁的信息
    -m 如果调用到本地方法的话,可以显示C/C++的堆栈快照

  • 相关阅读:
    'try(A a = new A())' VS 'try finally'
    pom中更换阿里云仓库时不要忽略了pluginRepositories
    dubbo-spring-boot的auto-configure示例报Not found exported service的解决办法
    前后端分离部署时如何保护前端代码不被匿名访问
    拒绝一次性买卖:MyBatis的mapper和repository可重复生成工具
    关于el-dialog,我更推荐的用法
    SqlServer导入数据到MySql
    ASP.NET伪静态 UrlRewrite(Url重写) 实现和配置
    如何优化游标--使用只读游标
    多台路由器上网配置
  • 原文地址:https://www.cnblogs.com/BINGJJFLY/p/7634914.html
Copyright © 2011-2022 走看看