0

私のWebアプリケーションはTomcat6で実行され、jmsにactiveMQ5.5libを使用します。Hyperic 4.5がjmxを介してブローカーを監視するためのプラグインを作成していますが、hypericはそれを自動検出できません。また、管理プラグインマネージャーでのロードに失敗します(アクティブなmq 5.5は、使用しているhypericのバージョンではサポートされていませんが、マイナーリビジョンです)。

ログにエラーがあり、ヒントがありません。idmlBroker4.xmlのプラグイン転送を開始しようとしましたが、プラグインが本社に存在しません

PDTエラー[グローバルプラグイン同期(プラグインデプロイによって開始)1] [org.hyperic.hq.appdef.server.session.AgentManagerImpl@1552]がBroker4.xmlのプラグイン転送を開始しようとしましたが、プラグインがHQPDT情報に存在しません[スケジューラ-2][org.hyperic.hq.product.server.session.ProductPluginDeployer@409]プラグインのデプロイ解除:/home/hyperic/server-4.6.6/hq-engine/hq-server/webapps/ROOT/WEB-INF /hq-plugins/Broker4.xml

私のMBeanとプラグインは次のとおりです。


MBean:org.apache.activemq.broker.jmx.QueueView名前:org.apache.activemq:BrokerName = IDMLBroker、Type = Queue、Destination = idml1.com.cequint.idml.report.persistence0。属性:CacheEnabled = true( r)... 13.属性:PrioritizedMessages = false(r)14.属性:EnqueueCount = 2877(r)15.属性:DequeueCount = 2877(r)16.属性:DispatchCount = 2877(r)...操作: voidurge []操作:boolean removeMessage[java.lang.String]...。


<plugin>
<service name="Broker"
       server="Sun JVM" version="1.5">

<property name="OBJECT_NAME"
          value="org.apache.activemq:BrokerName=Broker,Type=Queue,Destination=host1.com.server.report"/>

<plugin type="autoinventory"/>

<plugin type="measurement"
        class="org.hyperic.hq.product.jmx.MxMeasurementPlugin"/>

<plugin type="control"
        class="org.hyperic.hq.product.jmx.MxControlPlugin"/>

<!-- reset is an MBean operation, set* are attribute setters -->
<actions include="cursorSize"/>

<config>
    <option name="jmx.url" description="JMX URL to MBeanServer"  default="service:jmx:rmi:///jndi/rmi://localhost:8186/jmxrmi"/>
    <option name="jmx.username" description="JMX username" optional="false" default="user"/>
    <option name="jmx.password" description="JMX password" optional="false" default="password" type="secret"/>
</config>

<properties>
  <property name="EnqueueCount" description="Cache Size"/>
  <property name="DequeueCount" description="TrainThreshold"/>
</properties>

<filter name="template"
        value="${OBJECT_NAME}:${alias}"/>

<metric name="EnqueueCount"
        template="${OBJECT_NAME}:EnqueueCount"
        indicator="true"/>

<metric name="DequeueCount"
        alias="DequeueCount"
        collectionType="trendsup"
        indicator="true"/>

4

1 に答える 1

1

私もこの問題を抱えていました。私にとって、このエラーは私のファイル名が[ServiceName]-plugin.xmlではないことが原因でした。

したがって、サービスはブローカーであるため、ファイル名はbroker-plugin.xmlである必要があります。このファイル名では大文字と小文字が区別されないようです。

さらに、プラグインをサーバーのhq-pluginsディレクトリに直接ドロップすると、プラグインマネージャーを使用するよりもサーバーログではるかに優れたフィードバックが得られることがわかりました。これを使用することをお勧めします。

于 2013-07-18T19:34:48.230 に答える