11
votes

Accéder à un serveur MBean distant

J'exécute une application client / serveur à l'aide de JBoss.

Comment puis-je me connecter au serveur JVM ''s MBeanserver? Je souhaite utiliser le MemoryMX MBean pour suivre la consommation de mémoire.

Je peux me connecter au JBoss MBeanserver à l'aide de la recherche JNDI, mais le java.lang.memorymx Mbean n'est pas enregistré avec le jboss Mbeanserver.

Edit: L'exigence est destinée à un accès programmatique à l'utilisation de la mémoire du client.


0 commentaires

5 Réponses :


1
votes

Avez-vous essayé de lancer un JConsole (code> $ java_home / bin ) pour vous connecter avec le serveur? Vous devriez être capable de voir des statistiques de mémoire de là


2 commentaires

Oui, cela fonctionne. Mais je veux un accès programmatique de mon application client. Mon client peut se connecter au serveur JBoss Mbean, mais je ne sais pas comment vous connecter au serveur MBean de la plate-forme.


Toutes mes excuses - ce n'était pas clair de votre question que l'accès programmatique était une exigence



4
votes

Un exemple de code d'un article IBM: lien < Pré> xxx


0 commentaires

6
votes

Contrairement au MBeanserver Server de JBoss, le serveur Mbean de JVM n'autorise pas la surveillance à distance par défaut. Vous devez définir diverses propriétés du système pour permettre que:

http://java.sun.com/ Javase / 6 / Documents / Technotes / Guides / Gestion / Agent.html


0 commentaires

18
votes

J'ai écrit une classe comme ceci: xxx


1 commentaires

Avoir l'URL du service JMX résolu My problème - merci!



1
votes

Les listes de code suivantes Tous les MBEANS d'une application Java donnée (JMX activée) avec leurs attributs et leurs opérations regroupés par le domaine. Il suffit de démarrer l'application Java que vous voulez surveiller avec un port JMX fixe, par ex. En utilisant ces paramètres VM:

-Dcom.sun.management.jmxremote
-Dcom.sun.management.jmxremote.port = 9000
-Dcom.sun.management.jmxremote.local.only = faux
-Dcom.sun.management.jmxremote.ssl = faux
-Dcom.sun.management.jmxremote.authentide = faux

Ensuite, exécutez cette page principale: xxx

comme vous devez le voir, dans le domaine java.lang sont plusieurs mbans liés à la mémoire. Choisissez celui dont vous avez besoin.


0 commentaires