如何在WebSphere中启用JMX以使用JConsole进行监控?
java管理扩展(jmx)是一种强大的技术,用于管理和监控应用程序或服务驱动的网络。使用jmx,您可以快速检查websphere jvm的健康状态。
如果您已经在使用企业监控系统,则很可能不需要这个。
然而,对于学习或面试问题,这将帮助您启用jmx并监视websphere jvm的关键指标。
好处是您不需要安装任何额外的软件。
让我们从实施开始…
- 登录到dmgr控制台
- 点击servers >> server types >> websphere application servers
- 从列表中选择您希望使用jmx监视的jvm,并点击
- 在“服务器基础结构”下展开java和进程管理,并点击进程定义
- 在“附加属性”下点击java虚拟机
- 在“通用jvm参数”框中输入以下内容
-djavax.management.builder.initial= -dcom.sun.management.jmxremote -dcom.sun.management.jmxremote.authenticate=false -dcom.sun.management.jmxremote.ssl=false -dcom.sun.management.jmxremote.port=9000
在上面的示例中,我输入了9000。您必须输入一个唯一的端口号以避免冲突。
- 点击review and synchronize changes with nodes
最好重启jvm以使端口号生效。要验证端口号,可以使用netstat命令。
[root@localhost server1]# netstat -anlp|grep 9000 tcp6 0 0 :::9000 :::* listen 4575/java [root@localhost server1]#
现在,我知道jvm的jmx端口正在监听并准备好从jconsole连接。
jconsole在jdk包中,因此如果您已安装jdk,应该可以在java/bin文件夹下看到它们。或者,您可以使用find命令。
find / -name jconsole
执行jconsole,它将提示您输入远程进程的详细信息。在这里,您必须提供服务器主机名和jvm端口号。
例如:localhost:9000
它将花费几秒钟并使用jmx端口连接到websphere jvm。
在概述选项卡上,您可以查看堆内存使用情况、线程、类和cpu使用情况的详细信息。
您可以在其他选项卡上进行操作,以查看您需要的指标。如果您在内存选项卡下注意到,您将看到一个“执行gc”的选项。所以您可以看到它在很多方面都很有帮助。
所以继续在您的测试环境中尝试以熟悉它。
接下来,了解有关线程转储的信息。