0

私はsimplejmx自分のを公開するために使用していJMX Resourcesます。

私は持っているjmx-config.xml

<bean id="beanPublisher" class="com.j256.simplejmx.spring.BeanPublisher">
    <property name="jmxServer" ref="jmxServer" />
</bean>

<bean id="jmxServer" class="com.j256.simplejmx.server.JmxServer"
    init-method="start" destroy-method="stop">
    <property name="registryPort" value="8123" />
</bean>

アプリケーションを開始していJBossます。すべて問題ありません。

15:20:11,860 INFO  [org.springframework.beans.factory.support.DefaultListableBeanFactory] (MSC service thread 1-8) Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@1be30160: defining beans [...,beanPublisher,jmxServer,...]; root of factory hierarchy

単純なクラスを作成しました。

package com.mypckg.jmx;

import com.j256.simplejmx.common.JmxAttributeField;
import com.j256.simplejmx.common.JmxResource;

@JmxResource(description = "Blah1", domainName = "Blah2", beanName = "Blah3")
public class DummyJMX {

    @JmxAttributeField(description = "Blah4")
    private int var = 3;
}

を開始しています。アプリケーションをJConsole選択JBossしており、次に進みMBeansます。それが私が見るものです:

ここに画像の説明を入力 *

おそらく、私のDummyJMXクラスは公開されていません (または単に見つからないだけです)。

どのステップについて忘れましたか?

前もって感謝します


編集 :

ここに画像の説明を入力


編集 :

@アンドレイ・ステファン

あなたのリンクを使用して得たエラー:

ここに画像の説明を入力

@グレー

私が使用して得たエラーlocalhost:8123

ここに画像の説明を入力

4

3 に答える 3

0

最後に、私は自分のJMX Beansusingに接続していJConsoleます。

おそらく、私は での作業の最初に何か間違ったことをしましたsimplejmx

私は多くのことを変えていません。私はjmx-configファイルを保持し、まだバージョン1.8simplejmx.

この Bean に簡単に接続できlocallyます。以前に接続できなかった理由がわかりません。なぜあなたの意見では、それはすべきではないのか教えていただけますlocal processか?

JMX Bean以下では、 myが に表示されていることがわかりますJConsole

ここに画像の説明を入力

于 2014-04-15T08:49:57.960 に答える
0

リモート プロセス オプションを使用して、JConsole で次の URL を試してください。service:jmx:rmi:///jndi/rmi://localhost:8123/jmxrmi

私がコメントで提供したものとは少し異なります。

于 2014-04-14T07:30:53.947 に答える
0

おそらく、私の DummyJMX クラスは公開されていません (または単に見つからないだけです)。

registryPortそのための構成を使用している場合、JmxServerJconsole の下の「ローカル プロセス」リストには表示されません。で「リモートプロセス」としてアクセスできるようになりますlocalhost:8123。Linux ボックスを使用している場合netstat -an | grep LISTENは、アプリケーションがリッスンしているポートを確認するために使用できます。リストに 8123 が表示されない場合は、すでに RMI サーバーが構成されている可能性があります。

ローカル プロセスとして表示されるプラットフォーム mbean-server を使用する場合は最近リリースされたバージョン 1.9 (2014 年 4 月) の新しいセッターまたはコンストラクターを使用します。残念ながら、SimpleJMX はプログラムでそれ自体を登録できないため、プロセス リストに表示されます。これは、JVM がエクスポートするコードではありません。

<bean id="jmxServer" class="com.j256.simplejmx.server.JmxServer"
    init-method="start" destroy-method="stop">
    <property name="usePlatformMBeanServer" value="true" />
</bean>
于 2014-04-13T19:12:02.227 に答える