IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Wildfly/JBoss Java Discussion :

Monitorer JVM de JBoss EAP 6.2 - Visual VM


Sujet :

Wildfly/JBoss Java

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2009
    Messages : 139
    Par défaut Monitorer JVM de JBoss EAP 6.2 - Visual VM
    Bonjour,

    J'ai ajouté cette ligne dans standalone.conf.bat

    JAVA_OPTS="$JAVA_OPTS -Djboss.bind.address=X.x.x.x"

    Mais impossible de monitorer la jvm du jboss eap 6.2

    Par contre en ligne de commande standalone.bat ... Ça fonctionne ... Mais je démarre le service jboss Windows donc ça ne me sert à rien que ça fonctionne en ligne de commande ...

    Qu'est-ce que je fois rajouter en plus dans standalone.conf.bat pour monitorer la jvm dans visual vm ?

    Merciiiiii

  2. #2
    Membre Expert
    Avatar de hasalex
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2009
    Messages
    879
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Janvier 2009
    Messages : 879
    Par défaut
    Pour pouvoir établir une connexion locale entre visualvm et jboss, il faut qu'ils soient démarrés avec le même user windows.

    Sinon, il faut démarrer en mode remote. Pour ça, il faut reprendre le script jconsole.bat et modifier la dernière ligne pour lancer visualvm à la place de jconsole.

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2009
    Messages : 139
    Par défaut
    Merci à toi hasalex, je vais essayer ..;

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2009
    Messages : 139
    Par défaut
    Bonjour Hasalex,

    le service jboss et le visualvm ont été lancé avec le même utilisateur mais j'ai juste le monitoring de la jvm locale java mais pas de jboss.
    J'ai adapté le script jconsole.bat et j'exécute jvisualvm.exe à la fin du script mais je n'ai pas eu plus de succès également ...

    J'ai essayé cette commande aussi

    c:\progra~1\Java\jdk1.0.7_45\bin\jconsole -J-Djava.class.path=c:\progra~1\Java\jdk1.0.7_45\lib\tools.jar;c:\progra~1\Java\jdk1.0.7_45\lib\jconsole.jar;c:\progra~1\Jboss-eap-6.2\bn\client\jboss-cli-client.jar

    Le telnet localhost 9990 ne répond déjà pas, ça ne va pas aider je pense ...

    Merci à toi :-)

  5. #5
    Membre Expert
    Avatar de hasalex
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2009
    Messages
    879
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Janvier 2009
    Messages : 879
    Par défaut
    Et quand tu demandes à netstat, le port 9990 est en binding sur quelle adresse IP (127.0.0.1, 0.0.0.0,...) ?

    Au passage, je relis ton premier post. Quand tu écris

    J'ai ajouté cette ligne dans standalone.conf.bat

    JAVA_OPTS="$JAVA_OPTS -Djboss.bind.address=X.x.x.x"
    Je suppose que tu pensais à

    JAVA_OPTS="%JAVA_OPTS% -Djboss.bind.address=X.x.x.x"

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2009
    Messages : 139
    Par défaut
    Bonjour hasalex,

    en effet c'est une erreur syntaxique, je voulais bien entendu parler de cette variable

    JAVA_OPTS="%JAVA_OPTS% -Djboss.bind.address=X.x.x.x"

    Alors voici, ce que j'obtiens dans le netstat: TCP 10.198.*.*:9990 0.0.0.0:0 LISTENING

    Le telnet écoute bien sur le port 9990 mais impossible de me connecter en local ou en remote via jvisualvm pour monitorer la jvm du jboss ...

    Merci à toi

  7. #7
    Membre Expert
    Avatar de hasalex
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2009
    Messages
    879
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Janvier 2009
    Messages : 879
    Par défaut
    Il y a 2 choses que je ne comprends pas dans ton netstat :

    • les *, c'est pour cacher ton IP ou c'est ce que tu as vraiment ?
    • le binding de management est sur localhost par défaut, et se modifie avec -Djboss.bind.address.management, que tu ne renseignes pas ; comment ça se fait que tu n'aies pas 127.0.0.1 ?

  8. #8
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2009
    Messages : 139
    Par défaut
    Bonjour Hasalex,

    oui les * c'est pour cacher mon ip ...

    Donc le binding de management (-Djboss.bind.address.management) qui se trouve dans le fichier standalone.conf.bat doit être configuré sur 127.0.0.1 ?

    Et JAVA_OPTS=%JAVA_OPTS% -Djboss.bind.address=127.0.0.1 ?
    Merci à toi

  9. #9
    Membre Expert
    Avatar de hasalex
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2009
    Messages
    879
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Janvier 2009
    Messages : 879
    Par défaut
    -Djboss.bind.address sert pour le binding des ports applicatifs, en particulier 8080
    -Djboss.bind.address.management sert pour le binding des ports de management, 9990 pour le management http et 9999 pour le management natif (jboss-cli et JMX)

    Si tu ne mets rien, la valeur par défaut est 127.0.0.1. Il faudrait donc que tu vérifies ta config, soit en system property soit dans standalone.xml pour vérifier que ça n'a pas été modifié.

  10. #10
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2009
    Messages : 139
    Par défaut
    Hasalex,

    Si je recommence avec une installation From scratch, qu'est-ce que je dois configurer pour que je puisse monitorer la jvm avec jvisualvm ?

    Merci à toi ...

  11. #11
    Membre Expert
    Avatar de hasalex
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2009
    Messages
    879
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Janvier 2009
    Messages : 879
    Par défaut
    Avec un JBoss EAP 6.2 toute neuve, le port d'admin est le 9999 et est ouvert sur localhost.

    Une fois JBoss démarré, il faut préparer un script pour lancer visualvm. Pour ça, j'ai fait une copie de jconsole.bat (ou .sh) et j'ai modifié la fin du script, pour la partie qui concerne le classpath :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    ...
    CLASSPATH="$CLASSPATH:$JBOSS_HOME/bin/client/jboss-cli-client.jar"
     
    echo CLASSPATH $CLASSPATH
     
    $JAVA_HOME/bin/jvisualvm --cp:a "$CLASSPATH" "$@"
    Traduit en windows, ça devrait donner ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    ...
    set "CLASSPATH=%CLASSPATH%;%JBOSS_HOME%\bin\client\jboss-cli-client.jar"
     
    rem echo %CLASSPATH%
     
    "%JAVA_HOME%\bin\jvisualvm.exe" "--cp:a %CLASSPATH%"
     
    :END
    ...
    Une fois visualvm lancé, tu fais "Add JMX connection", et dans le champs Connection, tu mets service:jmx:remoting-jmx://localhost:9999.

    Normalement, tu devrais être connecté à ton JBoss...

  12. #12
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2009
    Messages : 139
    Par défaut
    Tu ne rajoutes rien dans standalone.conf.bat et standalone.xml ?

    Grand merci à toi pour tes conseils et ton aide

  13. #13
    Membre Expert
    Avatar de hasalex
    Homme Profil pro
    Développeur Java
    Inscrit en
    Janvier 2009
    Messages
    879
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Janvier 2009
    Messages : 879
    Par défaut
    Non rien à ajouter, pour un accès via localhost, la configuration par défaut suffit.

  14. #14
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2009
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Janvier 2009
    Messages : 139
    Par défaut
    Merci à toi pour tes conseils

    Et afin de pouvoir monitorer la jvm en remote, qu'est-ce que je dois rajouter ?

    Merci d'avance, je serai équipé comme ça

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème pour monitorer JVM - JBoss EAP 6.2 - en remote
    Par norten dans le forum Wildfly/JBoss
    Réponses: 4
    Dernier message: 20/02/2015, 13h16
  2. Monitoring des sessions JBoss
    Par scorplayer dans le forum Wildfly/JBoss
    Réponses: 3
    Dernier message: 07/10/2010, 10h20
  3. Gestion des pools de threads dans JBoss EAP 4.2
    Par mOuLi dans le forum Wildfly/JBoss
    Réponses: 0
    Dernier message: 04/12/2009, 10h52
  4. Réponses: 0
    Dernier message: 03/09/2009, 03h38
  5. monitorer JVM avec console jmx-console
    Par norten dans le forum Wildfly/JBoss
    Réponses: 1
    Dernier message: 29/07/2009, 11h05

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo