Unable to use JConsole with Tomcat running as windows service

后端 未结 6 1822
暖寄归人
暖寄归人 2020-12-05 05:09

I am running tomcat 6.0.18 as a windows service. In the service applet the jvm is configured default, i.e. it is using jvm.dll of the JRE.

I am trying to monitor thi

相关标签:
6条回答
  • 2020-12-05 05:38

    If Tomcat is running as a Windows service, and you want to attach to the JVM locally, you need to run VisualVM or JConsole as the System account. You can use Sysinternals PsExec.exe to accomplish this.

    psexec.exe -i -s c:\visualvm\bin\visualvm.exe
    
    0 讨论(0)
  • 2020-12-05 05:39

    I'm posting it mainly to record this information to myself, I haven't validated it - but this is supposed to work as well:

    http://mysqlandsqlserver.blogspot.com/2010/02/jconsolejmap-and-tomcat-as-windows.html

    0 讨论(0)
  • 2020-12-05 05:43

    There is still a rather simple way to connect JConsole to Java process started as Windows Service using the local mode which I discovered here.

    Basically it says that in order to connect to Java process launched as a Windows Service you need to launch JConsole as a Windows Service (you can do it using windows native api or using any wrapper like yajsw.)

    By the way, this will free you from restarting the Java Process which was critical for me.

    0 讨论(0)
  • 2020-12-05 05:45

    There's a nice GUI to edit the options, no need to muck around in the registry.

    Open up the C:\Program Files\Apache Software Foundation\Tomcat 6.0\bin\tomcat6.exe (or just double-click on the monitor icon in the task bar). Go to the Java pane, add the following to the list of arguments, and restart Tomcat.

    -Dcom.sun.management.jmxremote
    -Dcom.sun.management.jmxremote.port=8086
    -Dcom.sun.management.jmxremote.ssl=false
    -Dcom.sun.management.jmxremote.authenticate=false
    

    Then you can connect with JConsole or the newer VisualVM.

    0 讨论(0)
  • 2020-12-05 05:46

    Here's the prescribed way for changing jvmoptions & interacting with the service:

    http://tomcat.apache.org/tomcat-5.5-doc/windows-service-howto.html

    I would try going into your registry at HKLM/Software/Apache Software Foundation/Procrun 2.0//Parameters/Java and editing the "Options" multi-string value directly.

    0 讨论(0)
  • 2020-12-05 05:52

    Add the following near the top of your catalina.bat

    set JAVA_OPTS=%JAVA_OPTS% -Dcom.sun.management.jmxremote ^
        -Dcom.sun.management.jmxremote.port=8086 ^
        -Dcom.sun.management.jmxremote.ssl=false ^
        -Dcom.sun.management.jmxremote.authenticate=false
    

    Stop and restart tomcat (obviously)

    Run jconsole.exe. If your tomcat is running as service, then run jconsole.exe as administrator.

    Select Remote Process and enter localhost:8086

    0 讨论(0)
提交回复
热议问题