Java应用程序监控之 jconsole

article/2025/9/21 8:04:32

jconsole

jconsole 启动一个图形控制台,使您可以监视和管理Java应用程序。JConsole图形用户界面是一个符合Java Management Extensions(JMX)规范的监视工具。JConsole使用Java虚拟机(Java VM)的广泛工具来提供有关Java平台上运行的应用程序的性能和资源消耗的信息。

启动JConsole

该JConsole的可执行文件中可以找到 JDK_HOME / bin中,其中JDK_HOME是在安装了Java开发工具包(JDK)的目录。如果此目录位于系统路径中,则只需在命令(shell)提示符下键入jconsole即可启动JConsole 。否则,您必须键入可执行文件的完整路径。

在windows命令窗口执行(当然你得先添加环境变量)jconsole -h 会弹出一个使用说明:

用法: jconsole [ -interval=n ] [ -notile ] [ -pluginpath <path> ] [ -version ] [ connection ... ]

  -interval   将更新间隔设置为 n 秒 (默认值为 4 秒)
  -notile     初始不平铺窗口 (对于两个或多个连接)
  -pluginpath 指定 jconsole 用于查找插件的路径
  -version    输出程序版本

  connection = pid || host:port || JMX URL (service:jmx:<协议>://...)
  pid         目标进程的进程 ID
  host        远程主机名或 IP 地址
  port        远程连接的端口号

  -J          指定运行 jconsole 的 Java 虚拟机
              的输入参数

oracle的说明简洁明了,就不做多于说明了,若有不解,评论区见。也可以是天价后续命令,直接执行jconsole,则会弹出这个:

概览

本地进程会在列表里展示,只需要双击便能进入,远程进程需要在远程开启jmx端口,有口令的话输入口令,进入一个进程以后的样子就是这个样子:

 在概览标签页,可以看到堆内存、线程、类、CPU 的走势,可以帮助我们对项目资源使用有个直观的了解。右键走势图,可以选择将数据另存为csv文件,jconsole会把每个时间的数值导出。内容分别是这个样子:

 

除此之外,jconsole还提供了内存、线程、类、VM概要、Mbean五个标签页,这五个标签页可以帮助我们对项目有着更详细的了解。接下来对每个标签页进行查看:

内存

1.可以随时执行GC回收

2.可选择内存范围:

3.详细信息包括:

  • 时间:当前时间。
  • 已用:当前使用的内存量,包括所有可访问和无法访问的对象占用的内存,。
  • 已提交:保证可供Java VM使用的内存量。提交的内存量可能会随时间而变化。Java虚拟机可以向系统释放内存,并且提交的内存量可能小于启动时最初分配的内存量。提交的内存量始终大于或等于已用内存量。
  • 最大值:可用于内存管理的最大内存量。它的值可能会改变或未定义。如果Java VM尝试将已使用的内存增加到大于提交的内存,则内存分配可能会失败,即使使用的数量小于或等于最大值(例如,当系统虚拟内存不足时)。
  • GC时间:垃圾收集的累计时间和调用总数。它可能有多行,每行代表Java VM中使用的一个垃圾收集器算法。

4.分别对应2中的选项,对每个选项进行百分比展示。

线程

1. 线程数峰值

2.活跃线程数

3.线程列表,选中线程会在右侧列出线程名称、状态、总阻止数、总等待数、堆栈跟踪等信息。

4.检测死锁,如果检测出死锁,则会在线程选项卡旁边新建选项卡:

类标签页展示了类的加载总数、当前加载总数、已卸载总数 。

VM概要

 Mbean

官网:https://docs.oracle.com/javase/8/docs/technotes/guides/management/jconsole.html 


http://chatgpt.dhexx.cn/article/SmDniaFr.shtml

相关文章

JConsole远程监控配置

首先&#xff0c;看本机&#xff08;Windows&#xff09;安装了JRE没 Win 》 CMD 打开命令窗口 如有安装&#xff0c;则会显示以下版本信息&#xff1b;若没有显示&#xff0c;就安装吧 1 C:\Users\Administrator>java -version 2 java version "1.8.0_111" 3 …

jconsole连接失败:是否重试?

背景 在学习使用jconsole的时候&#xff0c;按照大佬们的教程一步一步操作的&#xff0c;到了连接的时候却一直报这个错误&#xff0c;连接不上远程服务&#xff0c;百度了很久也没有相关的说明&#xff0c;都是让添加那些启动参数&#xff0c;问题是启动参数我早就添加了。。…

JConsole详解

一、JConsole是什么 从Java 5开始 引入了 JConsole。JConsole 是一个内置 Java 性能分析器,可以从命令行或在 GUI shell 中运行。您可以轻松地使用 JConsole(或者,它更高端的 “近亲” VisualVM )来监控 Java 应用程序性能和跟踪 Java 中的代码。 二、如何启动JConsole 如…

Jconsole小记

今天在看jmeter相关的文章时&#xff0c;看到了这个&#xff0c;网上查看了一些相关的博客&#xff0c;虽然现在还不做性能方面的&#xff0c;先记录下来以便日后查看。 Jconsole&#xff0c;Java Monitoring and Management Console。 Jconsole是JDK自带的监控工具&#xff…

jconsole使用

目的&#xff1a; 为了检查一个经常会跑死的java程序&#xff0c;在网上查询了下&#xff0c; 觉得jconsole这个工具还不错&#xff0c;所以就部署了一把 一、服务器端部署 首先在服务器端&#xff0c;启动你要监控的java程序&#xff0c;我的启动脚本如下&#xff1a; /ho…

java jconsole_jconsole与jvisualvm

jvisualvm同jconsole都是一个基于图形化界面的、可以查看本地及远程的JAVA GUI监控工具,可以认为jvisualvm是jconsole的升级版,因此这里不再介绍jconsole,只介绍jvisualvm。jvisualvm是一个综合性的分析工具,可以认为其整合了jstack、jmap、jinfo等众多调试工具的功能,并以…

JConsole工具使用

转自&#xff1a;https://www.cnblogs.com/baihuitestsoftware/articles/6405580.html#top Jconsole&#xff0c;Java Monitoring and Management Console。Jconsole是JDK自带的监控工具&#xff0c;在JDK/bin目录下可以找到。它用于连接正在运行的本地或者远程的JVM&#xff…

Jconsole

JConsole有界面,能够比较方便地看到堆内存 \线程\类,以及JMX的变化. 线下环境中算是个不错的诊断工具. 那怎么操作呢? 十分简单, 本地的JDK安装路径中找到 jConsole.exe ,双击,填写远程JVM进程即可. 要注意: JConsole使用时要求远程JVM打开了 JMX 端口, JMX端口和服务端口是…

完全体,千字详解:“Java性能调优六大工具”之JConsole工具

JConsole工具是JDK自带的图形化性能监控工具。 通过JConsole工具, 可以查看Java应用程序的运行概况, 并监控堆信息、 永久区使用情况及类的加载情况等。 本文主要介绍JConsole工具的基本使用方法。 一,JConsole连接Java程序 JConsole程序在%JAVA_HOME%/bin目录下,启动…

JConsole使用教程

JConsole是一个Java虚拟机的监控和管理工具&#xff0c;可以监控Java应用程序的内存使用、线程和类信息等。 以下是JConsole的使用教程&#xff1a; 1.启动JConsole JConsole是一个Java自带的工具&#xff0c;可以在bin目录下找到jconsole.exe文件。双击运行该文件即可启动JC…

深入理解Java虚拟机——可视化监控工具(Jconsole)

目录 一、可视化监控工具&#xff08;Jconsole&#xff09;的作用二、可视化监控工具&#xff08;Jconsole&#xff09;的使用三、测试实例四、修改测试实例代码 一、可视化监控工具&#xff08;Jconsole&#xff09;的作用 内存监控线程监控 二、可视化监控工具&#xff08;…

深入理解java虚拟机(十)JConsole:Java监视与管理控制台

文章目录 一、JConsole介绍二、启动JConsole三、内存监控四、线程监控结尾 一、JConsole介绍 JConsole&#xff08; Java Monitoring and Management Console&#xff09;是一款基于JMX&#xff08; Java Manage-ment Extensions&#xff09;的可视化监视、管理工具。它的主要…

使用JConsole观察分析Java程序的运行(转)

一、JConsole是什么 从Java 5开始 引入了JConsole。JConsole是一个内置Java性能分析器,可以从命令行或在GUI shell中运行。您可以轻松地使用JConsole(或者,它更高端的 “近亲” VisualVM )来监控Java应用程序性能和跟踪Java中的代码。 二、如何启动JConsole 如果是从命令行…

JConsole可视化工具介绍

JConsole 可视化工具介绍 一、 JConsole介绍 1.1 JConsole描述 Jconsole &#xff08;Java Monitoring and Management Console&#xff09;&#xff0c;一种基于JMX的可视化监视、管理工具。 1.2 启动JConsole 点击JDK/bin 目录下面的jconsole.exe 即可启动然后会自动自动搜…

附加:PageHelper分页插件的:Page和PageInfo的区别;

说明&#xff1a; &#xff08;1&#xff09;为什么写本篇博客&#xff1f;&#xff1a; ● 在【Spring Boot电商项目29&#xff1a;商品分类模块八&#xff1a;后台的【分类列表&#xff08;平铺&#xff09;】接口&#xff1b;】中&#xff0c;实现分页功能时&#xff0c;使用…

JSP之page对象及其常用方法

JSP之page对象及其常用方法

java常用page分页对象,mysql查询

1.创建page对象 public class PageUtils {//当前页默认第一页private Integer page 1;//默认每页10条private Integer limit 10;//总数private Integer count;//开始行private Integer startRow;//结束行private Integer endRow;public PageUtils(){this.startRow (page - …

JSP page对象

JSP内置对象——page对象 一、page对象&#xff1a;是指指向当前JSP页面本身&#xff0c;有点像类中的this指针&#xff0c;它是java.long.Object类的实例。 二、常用方法如下&#xff1a;主要是Object类中声明的方法class getClass() 返回此Object的类 int hashCode() 返回此O…

玩转MyBatis-Plus分页插件一:分页基本使用+方法解释+解析Page对象

hello&#xff0c;我是X&#xff0c;已经快半年的时间没有写过博文了&#xff0c;这段时间里我成长了许多&#xff0c;现在趁着放暑假的功夫&#xff0c;好好的总结一下我上半年的知识储备&#xff0c;信息量较大&#xff0c;赶紧上车吧&#xff01; 上车前晒一张后台系统分页的…

JSP的page对象

一 简介 page对象就是指向当前JSP页面本身&#xff0c;有点像类中的this指针&#xff0c;它是java.lang.Object类的实例。 二 常用方法 三 实例 <% page language "java" import "java.util.*" contentType "text/html; charsetutf-8" %&g…