暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

用 jconsole 在 Linux 上监控你的 Java | Linux 中国

Linux中国 2021-10-09
671
 
导读:如何使用 Java 开发工具包中的 Java 监控和管理控制台。                       
本文字数:1680,阅读时长大约:2分钟

https://linux.cn/article-13860-1.html
作者:Alan Formy-duval
译者:Xingyu.Wang

Java 开发工具包(JDK)提供了开发 Java 应用程序的二进制文件、工具和编译器。其中一个有用的工具是 jconsole

为了演示,我将使用 WildFly J2EE 应用服务器,它是 JBOSS 开源应用服务器项目的一部分。首先,我启动了一个独立的实例。

  1. ~/wildfly/24.0.1/bin$ ./standalone.sh
  2. =========================================================================
  3.   JBoss Bootstrap Environment
  4.   JBOSS_HOME: /home/alan/wildfly/24.0.1
  5.   JAVA: /usr/lib/jvm/java-11-openjdk-11.0.11.0.9-5.fc34.x86_64/bin/java

现在,在另一个终端,输入 jconsole

  1. $ jconsole

启动后,jconsole 会列出本地实例。选择“本地进程(Local Process)”,然后选择进程的名称并点击“连接(Connect)”。这就是连接并开始使用运行中的 Java 虚拟机(JVM)的 jconsole 的全部过程。

jconsole 与本地进程的新连接屏幕

概述

这个 Java 监控和管理控制台在仪表板的顶部显示进程标识符(PID)。“概述(Overview)”标签有四个图表,显示“堆内存使用情况(Heap Memory Usage)”、“线程(Threads)”、“(Classes)”和“CPU 使用情况(CPU Usage)”的重要信息。

jconsole 仪表板显示堆内存使用量、线程、类和 CPU 使用量

沿着顶部的标签提供每个区域的更详细的视图。

内存

内存(Memory)”标签显示 JVM 所使用的内存的各个方面的图表。分配给 JVM 的服务器系统内存量被称为“(Heap)”。这个屏幕还提供了关于堆的内部组件使用情况的详细信息,例如 “伊甸园(Eden Space)”、“老年代(Old Gen)” 和 “幸存者区(Survivor Space)”。你也可以手动请求一个垃圾收集动作。

jconsole 内存标签

线程

线程(Threads)”标签显示有多少线程在运行。你也可以手动检查是否存在死锁。

jconsole 线程仪表板显示了随时间变化的线程数量和滚动的线程列表

(Classes)”标签告诉你有多少类被加载,有多少被卸载。

jconsole 类标签显示随着时间推移加载的类数量

虚拟机摘要

虚拟机摘要(VM Summary)”标签提供了许多关于应用程序和主机系统的细节。你可以了解你所处的操作系统和架构、系统内存总量、CPU 数量,甚至交换空间。

jconsole 虚拟机摘要标签

摘要中显示的关于 JVM 的进一步细节,包括当前和最大的堆大小以及正在使用的垃圾收集器的信息。底部的窗格列出了传递给 JVM 的所有参数。

MBeans

最后一个标签,MBeans,让你通过所有的 MBeans 向下钻取,以查看每个 MBeans 的属性和值。

MBeans 标签

总结

Java 已经存在了很长时间,它将继续为全球数百万的系统提供动力。有很多开发环境和监控系统可以使用,但像 jconsole
 这样的包含在基本工具包中的工具非常有价值。


via: https://opensource.com/article/21/10/monitor-java-linux-jconsole

作者:Alan Formy-Duval 选题:lujun9972 译者:wxy 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出


欢迎遵照 CC-BY-NC-SA 协议规定转载,
如需转载,请在文章下留言 “转载:公众号名称”,
我们将为您添加白名单,授权“转载文章时可以修改”。

文章转载自 Linux中国,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论