如何为SpringBoot应用配置jmx来监控内置tomcat

2025-06-02 15:22:37

1、jmx可用于监控tomcat,对于独立的tomcat应用,可以通过在其启动文件 cataline.bat 中配置相关jvm参数,来开启jvm的这个功能,相关参数如下:set JAVA_OPTS=%JAVA_OPTS% -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=9988 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false注意,其中的 9988 是一个可修改的端口号,根据自己的情况进行配置即可。更详细的配置以及JConsole的使用可参考如下经验引用。

如何为SpringBoot应用配置jmx来监控内置tomcat

2、对于基于SpringBoot开发的web应用,其启动时默认使用内置的tomcat来作为web容器,那是否能配置jmx来监控这个内置的tomcat呢?答案是肯定的,下面就来演示如何进行。

3、首先基于SpringBoot快速创建一个web应用,导入到IDE中后,直接启动(运行启动类),然后通过 jconsole 来连接该 jvm。1. SpringBoot应用导入到eclipse中后,直接启动(图1示)2. 直接启动 jconsole,此时我们只能通过本地进程的方式连接上面启动的jvm(图2示),并通过 jconsole 的 MBean 菜单提供的信息来监控内置的 tomcat 应用(图3示)。

如何为SpringBoot应用配置jmx来监控内置tomcat
如何为SpringBoot应用配置jmx来监控内置tomcat
如何为SpringBoot应用配置jmx来监控内置tomcat

4、通过上述方式已经可以实现使用 jconsole 来监控内置tomcat,对于本地监控,这种方式没有问题,但生产环境上,监控通常是在另一台机器上进行的(远程监控),这种情况下,这种方式就无效了。我们需要在启动SpringBoot应用时,做如下处理:1. 不直接启动应用,在启动类中右键,选择 "Run As-->Run Configurations..." 打开启动配置窗口(图1示)2. 在打开的配置窗口中,在 "Arguments" 页签下的 "VM arguments" 输入框中补充如下配置项,并点击下发的 "Run" 按钮(图2示)-Dcom.sun.management.jmxremote-Dcom.sun.management.jmxremote.port=9001-Djava.rmi.server.hostname=127.0.0.1-Dcom.sun.management.jmxremote.ssl=false-Dcom.sun.management.jmxremote.authenticate=false注意,其中配置的9001是端口号,可以根据情况进行修改。

如何为SpringBoot应用配置jmx来监控内置tomcat
如何为SpringBoot应用配置jmx来监控内置tomcat

5、再次启动 jconsole, 此时可以通过远程进程的方式来连接jvm了(图1示),并可以和本地连接一样通过MBean菜单提供的信息来监控内置的tomcat应用(图2示)。

如何为SpringBoot应用配置jmx来监控内置tomcat
如何为SpringBoot应用配置jmx来监控内置tomcat
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢