Play Framework (2.5) - порт JMX позволяет видеть в JVisualVM

Я пытаюсь увидеть управление потоками приложения Play. Нужно использовать JVisualVm, чтобы увидеть запущенные потоки. По сути, порт JMX должен быть включен, чтобы увидеть приложение Play. Я использую Play 2.5 с активатором. Используйте команду acivator run для запуска приложения и настройки аргументов Java в файле build.sbt, как показано ниже.

javaOptions ++= Seq(
   "-Dcom.sun.management.jmxremote",
   "-Dcom.sun.management.jmxremote.port=5678",
   "-Dcom.sun.management.jmxremote.local.only=false",
   "-Dcom.sun.management.jmxremote.ssl=false",
   "-Dcom.sun.management.jmxremote.authenticate=false",
   "-Djava.rmi.server.hostname=192.11.1.18"
)

Но ничего не работает с вышеуказанной конфигурацией. Может ли кто-нибудь помочь мне в этом?


person Rama Krishna. G    schedule 03.05.2017    source источник
comment
Что именно JVisualVM сообщает вам при попытке подключения?   -  person Sergiy Sokolenko    schedule 11.09.2017


Ответы (1)


Причиной, по которой JMX-клиент не может подключиться к вашему серверу, может быть брандмауэр, отказывающий в подключении к com.sun.management.jmxremote.rmi.port, который по умолчанию назначается случайным образом, поэтому вы можете явно установить для него то же значение, что и com.sun.management.jmxremote.port для удобства.

Другая причина может быть связана с неправильным значением для java.rmi.server.hostname, это должен быть тот же IP-адрес, который вы используете для доступа к приложению через браузер.

Итак, ваша конфигурация может выглядеть так:

javaOptions += "-Dcom.sun.management.jmxremote"
javaOptions += "-Dcom.sun.management.jmxremote.port=5678"
javaOptions += "-Dcom.sun.management.jmxremote.rmi.port=5678"
javaOptions += "-Dcom.sun.management.jmxremote.local.only=false "
javaOptions += "-Dcom.sun.management.jmxremote.ssl=false"
javaOptions += "-Dcom.sun.management.jmxremote.authenticate=false"
javaOptions += "-Djava.rmi.server.hostname=192.11.1.18" // make sure it's your app's web address

Если ничего не помогает, обратитесь к Руководство по устранению неполадок VisualVM.

Также проверьте приведенные ниже ресурсы для получения дополнительной информации по аналогичным проблемам (они о докере, но по сути это то же самое, что и подключение к удаленному хосту с помощью jmc):

person Sergiy Sokolenko    schedule 11.09.2017