JMXアクティブディスカバリー

最終更新日: 25 年 2020 月 XNUMX 日

JMX Active Discoveryは、以下を検出できます。

  • 指定されたMBeanオブジェクトのすべてのインスタンス
  • 完全に指定されたMBeanの属性に基づくインスタンス

JMX Active Discoveryは、複数のポートでリッスンしているデバイス上の複数のJavaインスタンスを検出し、各ポート上のすべてのオブジェクトを検出して、オブジェクトの配列を作成することもできます。

デバイスのプロパティ jmx.user & jmx.pass 認証情報に使用されます。

JMXディスカバリのパラメータは次のとおりです。

  • JMXパス:MBeanまたはMBean属性の場所。 パスは、JMXドメインとオブジェクト名をリストすることによって指定されます。
  • URLサービス (オプション):JMXサーバーのURL。 このフィールドに何も指定されていない場合、単一のポートがカスタムプロパティ「」を介してデバイスレベルで宣言されていると見なされます。jmx.ポート「、このフィールドのデフォルトは「service:jmx:rmi:/// jndi / rmi:// ## HOSTNAME ##:## jmx.port ## / jmxrmi」。  ## PORT ##トークンは、サービスURLフィールドで宣言して、「ポート」フィールドからポートのリストを反復処理し、複数のJMXオブジェクト/ JVMインスタンスを検出できます。
  • ポート:JMXオブジェクトを監視するためのポートのコンマ区切りリスト。 通常、このフィールドはに設定されます ## jmx.ports ## プロパティを使用してポートのリストを提供できるようにします。 ザ・ 財産 デバイスグループごとまたはデバイスごとに設定できます。

たとえば、次の画像の構成では、Tomcatサーバー上のすべてのスレッドプールが一覧表示されます。

JMXパスパラメータで指定された属性が次の場合:

  • プリミティブ型(整数や文字列など)の場合、JMX ActiveDiscoveryは属性の値をエイリアスおよびインスタンスの値として返します。
  • 配列の場合、Active Discoveryは、各要素の配列インデックスをエイリアスおよび報告されたインスタンスの値として返します。
  • マップの場合、Active Discoveryは、レポートされたインスタンスのエイリアスと値としてキーのセットを返します。

ポートのリスト(または次のようなトークン) jmx.ports ポートのリストに置き換えられます)は、 ポートフィールドでは、収集時に## WILDVALUE ##がポートの代わりに使用され、## WILDVALUE2 ##が検出されたJMXオブジェクト(または属性)の代わりに使用されます。

(MBeanオブジェクト名の代わりに)XNUMXつまたは複数の属性値を検出する場合は、属性をコロンでオブジェクトから分離する必要があります。 たとえば、CatalinaドメインのServer MbeanのserverInfo属性の値を持つインスタンスを検出するには、「Catalina:type = Server:serverInfo」のJMXパスを指定します。

これにより、「Apache Tomcat / 5.5.25」など、Tomcatサーバーによって返される属性serverInfoの値を持つインスタンスが返されます。 この値は、必要に応じてフィルタリングに使用できます。

JMXでのフィルタリング

JMXフィルタリングは、ポート、検出されたMBeanパス、または検出された属性値のいずれかに適用できます。

フィルタで指定された属性がパスまたはパスコンポーネントである場合、それは文字列として扱われます。 ## WILDVALUE ##トークンを使用して、パスの変数検出部分を含めることができます。ポート検出も使用している場合は、## WILDVALUE2 ##を含めることができます。

例:path =” Catalina:type = Manager、host = localhost、path = *”を検出した場合

返された結果は次のとおりです。

 / / myapp / example / myotherapp

フィルタを追加することで、特定のアプリケーションのみを含めることができます。

フィルタリングの別の方法は、属性値に基づいています。 たとえば、有効なセッションがあったことのあるすべてのパスを動的に含めるフィルターを作成できます。

実際のJMXActive Discoveryの例については、データソースのJVMメモリプール-またはTomcatセッション-を参照してください。

記事上で