Profilage distant JVM avec JVisualVM


J'essaie de profiler mes applications jvm sur un hôte distant. Je suis à l'aide de Jvisualvm J'ai configuré jstatd comme recommandé dans ce http://www.codefactorycr.com/java-visualvm-to-profile-a-remote-server.html . Je suis en mesure de "telnet remotehost 1099" avec succès. Tous les ports tcp / ip sont pare-feu ouvert sur la télécommande.

J'ai ajouté mon hôte distant dans jvisualvm. En outre, assurez-vous que le port jstatd est le 1099 avec une actualisation de 3 secondes.

J'ai commencé ma demande avec

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

Mais, mes applications jvm n'apparaissent pas dans mon jvisualvm. Est-il autre chose que je dois configurer ou vérifier ?

Jvisualvm 1.3.5 local: Mac OSX Oracle jdk 1.6.37 à distance: centos 6 oracle jdk 1.6.24

Author: smartnut007, 2013-02-06

2 answers

1) Vous devez démarrer votre application avec JMX activé
Exemple de connexion à distance

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

2) Vous devriez avoir des classes JMX pour pouvoir faire quelque chose avec elles. Je suppose que vous en êtes conscient

 1
Author: Cratylus, 2013-02-05 20:07:38

Vous devez démarrer jstatd sur la machine distante. Pour cela, créez un fichier jstatd.all.policy dans le répertoire personnel de votre machine distante et ajoutez les lignes suivantes:

grant codebase "file:${java.home}/../lib/tools.jar" {   
    permission java.security.AllPermission;
};

Ensuite, sur la ligne de commande de votre machine distante, vous tapez

jstatd -J-Djava.security.policy=jstatd.all.policy -J-Djava.rmi.server.hostname={Your IP address} '

Une fois que le service jstatddémarre sur la machine distante, vous ajoutez essentiellement la connexion d'adresse IP de connexion distante sur l'interface utilisateur jvisualVM en utilisant add remote host.

Les documents Oracle pour JvisualVM peuvent être référencés à https://docs.oracle.com/javase/8/docs/technotes/guides/visualvm/applications_remote.html, mais il est vraiment déroutant jstatd étapes.

 1
Author: Mohit Hapani, 2017-11-07 21:12:53