左下角列出了所以正在运行的线程。如果你在过滤器中输入一个字符,线程列表将仅显示线程名字包含你输入字符的线程。通过点击某个线程,你可以获取这个线程的相关信息。 线程的MBean标签提供了一些Thread标签没有提供有用的操作。
- findMonitorDeadlockedThreads. 如果发生线程死锁,可以通过这个检查出来。操作返回一组死锁的线程ID.
-
- getThreadInfo. 返回线程的信息。包括线程的名称、堆栈信息,导致当前线程阻塞的锁,如果有的话,还返回哪儿线程持有这个锁,和这个线程信息的统计.
-
- getThreadCpuTime.返回指定线程消耗的CPU时间.
findMonitorDeadlockedThreads. 如果发生线程死锁,可以通过这个检查出来。操作返回一组死锁的线程ID.
getThreadInfo. 返回线程的信息。包括线程的名称、堆栈信息,导致当前线程阻塞的锁,如果有的话,还返回哪儿线程持有这个锁,和这个线程信息的统计.
getThreadCpuTime.返回指定线程消耗的CPU时间.
为使用上面这些属性,可以到MBeans标签下,在MBeans树上选择Threading MBean。它列出了当前监控的JVM所有属性的操作。
Figure 10: MBeans Tab Threading.
为检查你的应用是否进入死锁(例如,你的应用挂起),你可以使用findMonitorDeadlockedThreads
操作。
Figure 11: Find Deadlocked Threads.
一旦你选择了findMonitorDeadlockedThreads按钮,将会有一个弹出窗口显示结果。在上面例子中,JConsole连接了一个存在3个死锁线程的示例应用SampleTest。如上所示,检查出ID为12,10和11的线程死锁。想查询更多的线程信息,可以使用getThreadInfo操作。线程的MBean支持getThreadInfo操作的四种形式:
对一个给定的线程ID,给出最深的堆栈情况
对一系列的线程ID,给出最深的堆栈情况
Of a given thread ID with no stack trace.
Of an array of thread IDs with no stack trace.
对应死锁情况,你一般会比较关系堆栈情况。你可以在getThreadInfo操作的第一个参数中输入死锁的线程ID和你想跟踪的堆栈深度。
Figure 12: ThreadInfo for Thread ID = 12.
双击stackTrace属性的值域将会显示一个复合对话框,你可以在堆栈中来回查看。图13,14显示了死锁线程-1的复合对话框中的第一层堆栈和第二层堆栈。
Figure 13: Top Frame of the Stack Trace of DeadlockedThread-1.
Figure 14: Second Frame of the Stack Trace of DeadlockedThread-1.
线程标签页提供了一个友好的界面供查看线程的堆栈。你可以找到死锁线程的名字,使用getThreadInfo
查找线程信息。然后又可以使用线程标签页来分析死锁。
控制日志等级
Logging MBean定义了LoggerNames
属性,用于描述日志名称。为找到你的应用的日志,可以选择在MBeans树中java.util.logging
下的Logging MBean,双击LoggerNames属性
分享到:
相关推荐
JConsole是一个基于JMX的GUI工具,用于连接正在运行的JVM,不过此JVM需要使用可管理的模式启动。如果要把一个应用以可管理的形式启动,可以在启动是设置com.sun.management.jmxremote。JConsole能够提供被监控虚拟机...
jconsole+tomcat配置说明 附加Tomcat内存说明(基于jdk5.0).docx ),希望对大家有帮助
Java内存泄露_JVM监控工具介绍jstack_jconsole_jinfo_jmap_jdb_jstat
性能监控JConsole远程监控Tomcat服务
jdk.jconsole Defines the JMX graphical tool, jconsole, for monitoring and managing a running application. jdk.jdeps Defines tools for analysing dependencies in Java libraries and programs, including...
配置tomcat使用jconsole 修改catalina脚本 Windows平台:修改catalina.bat,在dorun和dostart段开头增加一行(注意是一行): set JAVA_OPTS=%JAVA_OPTS% -Djava.rmi.server.hostname=192.168.1.101 -Dcom.sun....
JDK1.5提供JMX remote的管理工具Jconsole,可以监控Java运行程序的内存使用情况、活动线程数量、类装载的数量、MBeans的状态、虚拟机的各种信息等,还可以执行MBean公开的方法或强制进行垃圾回收。只要应用服务器...
Jconsole是Sun jdk 1.5以上版本自带的监控工具,可以对JVM进行全面的监控
jconsole.1.8.0jar 这个包也经常maven导入报错 也是本人亲测有效
NULL 博文链接:https://kennylee26.iteye.com/blog/1402260
java开发常用组件,jconsole-1.8.0.jar jconsole-1.8.0.jar
分享 JConsole 源代码,MyEclipse工程
NULL 博文链接:https://myhearsnow.iteye.com/blog/1851119
NULL 博文链接:https://xiaotao-2010.iteye.com/blog/1460209
使用jconsole远程监控tomcat jmx 实验操作详细信息,本人实验实操
jdk1.6安装教程及环境变量配置: 双击运行"jdk-6u45-windows-x64.exe"程序,依提示进行安装即可。 包含组件 javac – 编译器,将源程序转成字节码 jar – 打包工具,将相关的类文件打包成一个文件 javadoc – 文档...
maven 项目缺少或报相关jdk- jconsole相关的错,这个jar包使用后就没问题了
jconsole工具,内置在jdk8中,主要监控 JVM 的概览、内存、线程、类、vm概要、MBean等内容。内含jconsole的连接使用说明
JDK包含了JRE,同时还包含了编译java源码的编译器javac,还包含了很多java程序调试和分析的工具:jconsole,jvisualvm等工具软件,还包含了java程序编写所需的文档和demo例子程序。 如果你需要运行java程序,只需...