Accéder à un serveur MBean distant
Je suis en cours d'exécution d'une application client/serveur à l'aide de JBoss.
Comment puis-je me connecter au serveur de la JVM du MBeanServer? Je veux utiliser le MemoryMX MBean pour suivre la consommation de mémoire.
Je peux me connecter à la plateforme JBoss MBeanServer à l'aide de recherche JNDI mais le java.lang.MemoryMX MBean est pas inscrit à l'JBoss MBeanServer.
EDIT: L'exigence est pour la programmation pour l'utilisation de la mémoire de la part du client.
source d'informationauteur parkr
Vous devez vous connecter pour publier un commentaire.
Contrairement au serveur JBoss est MBeanServer, la JVM du MBean server ne permet pas une surveillance à distance par défaut. Vous avez besoin de régler diverses propriétés du système pour permettre que:
http://java.sun.com/javase/6/docs/technotes/guides/management/agent.html
J'ai écrit une classe comme ceci:
Un exemple de code à partir d'un IBM article: lien
Avez-vous essayé de lancer un
JConsole
(est$JAVA_HOME/bin
) pour se connecter avec le serveur? Vous devriez être en mesure d'afficher la mémoire des stats il yLe code suivant répertorie tous les mbeans d'une jmx (activé) application java avec leurs attributs et les opérations groupées par le domaine. Il suffit de commencer le java application que vous voulez surveiller avec un fixe jmx port, par exemple par l'utilisation de ces paramètres de la vm:
-Dcom.soleil.de la gestion.jmxremote
-Dcom.soleil.de la gestion.jmxremote.port=9000
-Dcom.soleil.de la gestion.jmxremote.locaux.seulement=false
-Dcom.soleil.de la gestion.jmxremote.ssl=false
-Dcom.soleil.de la gestion.jmxremote.authentifier=false
Puis exécutez le principal:
Que vous devriez voir, dans le java.lang domaine sont plusieurs liée à la mémoire de mbeans. Choisissez le produit dont vous avez besoin.