windows系统下监控被注册成服务的程序

前段时间有个客户反馈我们的系统慢的很,遂进行排查,经各方排查基本都无问题,没办法只能去监控一下程序看看堆大小、消耗等等。

问题来了,我发现我们常用的监控工具jconsolo就能实现对程序的监控,但是对已经注册成服务的程序却是没办法连接。经过一天的研究,对此进行记录。

1.首先我们需要找到jconsolo。这是jdk自带的监控软件,位于jdk的bin目录下。

2.打开我们将程序注册成服务的bat文件,在其中加入

-Dcom.sun.management.jmxremote

-Dcom.sun.management.jmxremote.port=8010

-Dcom.sun.management.jmxremote.localhost=127.0.0.1

-Dcom.sun.management.jmxremote.ssl=false

-Dcom.sun.management.jmxremote.authenticate=false 

特别注意插入的位置,一定是在jdk路径后,-Djava前,同时要确保8010端口未被使用或者你们自己换个没用的端口

我把所有的配置都放出来,有小伙伴需要可以直接拷贝使用

@echo off
setlocal enabledelayedexpansion
cd /d %~dp0
for /f "delims=" %%i in ('type "config.ini"^| find /i "="') do set %%i
set path=%cd%
md "%path%/logs"
echo %serviceName%
echo %jarName%
echo %JAVA_HOME%
echo %path%
JavaService.exe -install %serviceName% "%JAVA_HOME%/jre/bin/server/jvm.dll" -Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.port=8010 -Dcom.sun.management.jmxremote.localhost=127.0.0.1 -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=false -Djava.class.path="%path%/%jarName%.jar;%JAVA_HOME%/lib/tools.jar" -Xms512M -Xmx4096M -start org.springframework.boot.loader.JarLauncher -stop org.springframework.boot.loader.JarLauncher -method systemExit -out "%path%/logs/out.log" -err "%path%/logs/err.log" -current "%path%" -auto -overwrite
set 1=1
pause
3.写完bat文件后运行,成功将程序注册成服务,下面还需要配置权限

我们在服务中找到我们刚才注册的服务名,右键点击属性,在上方切换到登录栏

这是我们一定选择【此账户】,点击浏览,输入当前登录用户的用户名后点击【检查名称】,系统会自动查找该用户

完事就最简单的应用确认。如果到这都没有问题,我们基本就是成功了。

这时我们打开jconsolo,选择远程连接,输入我们刚才在配置文件中写的host地址和端口,然后填写刚才在服务中配置的用户名和密码

点击连接后就能监控被注册成服务的程序啦

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值