クラス JmxUtils
java.lang.ObjectSE
org.springframework.jmx.support.JmxUtils
Spring JMX をサポートする汎用ユーティリティメソッドのコレクション。MBeanServer を見つけるための便利なメソッドが含まれています。
- 導入:
- 1.2
- 作成者:
- Rob Harrop, Juergen Hoeller
- 関連事項:
フィールドのサマリー
フィールドコンストラクターの概要
コンストラクターメソッドのサマリー
修飾子と型メソッド説明static ObjectNameSE
appendIdentityToObjectName
(ObjectNameSE objectName, ObjectSE managedResource) 追加のキーと値のペアを既存のObjectName
SE に追加します。キーは静的値identity
で、値は提供されたObjectName
SE で公開されている管理対象リソースの ID ハッシュコードです。static StringSE
getAttributeName
(PropertyDescriptorSE property, boolean useStrictCasing) 指定された JavaBeans プロパティに使用する JMX 属性名を返します。static ClassSE<?>
getClassToExpose
(ClassSE<?> clazz) 指定された Bean クラスに公開するクラスまたはインターフェースを返します。static ClassSE<?>
getClassToExpose
(ObjectSE managedBean) 指定された Bean に公開するクラスまたはインターフェースを返します。static ClassSE<?>
getMBeanInterface
(ClassSE<?> clazz) 指定されたクラスの標準 MBean インターフェースがあればそれを返します(つまり、名前が指定されたクラスのクラス名と一致するが、接尾辞が "MBean" のインターフェース)。static StringSE[]
getMethodSignature
(MethodSE method) メソッドの引数シグニチャーを表すString[]
を作成します。static ClassSE<?>
getMXBeanInterface
(ClassSE<?> clazz) 指定されたクラスの JavaMXBean インターフェース(つまり、名前が "MXBean" で終わるインターフェース、および / または適切な MXBean アノテーションを持つインターフェース)を返します。static boolean
指定された Bean クラスがそのまま MBean として適格かどうかを判断します。static MBeanServerSE
ローカルで実行中のMBeanServer
を見つけようとします。static MBeanServerSE
locateMBeanServer
(StringSE agentId) ローカルで実行中のMBeanServer
を見つけようとします。static ClassSE<?>[]
parameterInfoToTypes
(MBeanParameterInfoSE[] paramInfo) MBeanParameterInfo
の配列を、パラメーターに対応するClass
インスタンスの配列に変換します。static ClassSE<?>[]
parameterInfoToTypes
(MBeanParameterInfoSE[] paramInfo, ClassLoaderSE classLoader) MBeanParameterInfo
の配列を、パラメーターに対応するClass
インスタンスの配列に変換します。
フィールドの詳細
IDENTITY_OBJECT_NAME_KEY
既存のObjectName
SE を対応する管理対象リソースの ID ハッシュコードで拡張するときに使用されるキー。- 関連事項:
コンストラクターの詳細
JmxUtils
public JmxUtils()
メソッドの詳細
locateMBeanServer
ローカルで実行中のMBeanServer
を見つけようとします。MBeanServer
が見つからない場合は失敗します。複数のMBeanServer
が見つかった場合は警告をログに記録し、リストから最初のMBeanServer
を返します。- 戻り値:
MBeanServer
が見つかった場合- 例外:
MBeanServerNotFoundException
-MBeanServer
が見つからなかった場合- 関連事項:
locateMBeanServer
public static MBeanServerSE locateMBeanServer(@Nullable StringSE agentId) throws MBeanServerNotFoundException ローカルで実行中のMBeanServer
を見つけようとします。MBeanServer
が見つからない場合は失敗します。複数のMBeanServer
が見つかった場合は警告をログに記録し、リストから最初のMBeanServer
を返します。- パラメーター:
agentId
- 取得する MBeanServer のエージェント識別子。このパラメーターがnull
の場合、登録されているすべての MBeanServer が考慮されます。空の文字列が指定された場合、プラットフォーム MBeanServer が返されます。- 戻り値:
MBeanServer
が見つかった場合- 例外:
MBeanServerNotFoundException
-MBeanServer
が見つからなかった場合- 関連事項:
parameterInfoToTypes
@Nullable public static ClassSE<?>[] parameterInfoToTypes(@Nullable MBeanParameterInfoSE[] paramInfo) throws ClassNotFoundExceptionSE MBeanParameterInfo
の配列を、パラメーターに対応するClass
インスタンスの配列に変換します。- パラメーター:
paramInfo
- JMX パラメーター情報- 戻り値:
- クラスとしてのパラメーターの型
- 例外:
ClassNotFoundExceptionSE
- パラメーター型を解決できなかった場合
parameterInfoToTypes
@Nullable public static ClassSE<?>[] parameterInfoToTypes(@Nullable MBeanParameterInfoSE[] paramInfo, @Nullable ClassLoaderSE classLoader) throws ClassNotFoundExceptionSE MBeanParameterInfo
の配列を、パラメーターに対応するClass
インスタンスの配列に変換します。- パラメーター:
paramInfo
- JMX パラメーター情報classLoader
- パラメーター型のロードに使用する ClassLoader- 戻り値:
- クラスとしてのパラメーターの型
- 例外:
ClassNotFoundExceptionSE
- パラメーター型を解決できなかった場合
getMethodSignature
メソッドの引数シグネチャーを表すString[]
を作成します。配列の各要素は、メソッドシグネチャーの対応する引数の完全修飾クラス名です。- パラメーター:
method
- 引数の署名を作成するメソッド- 戻り値:
- 引数型の配列としての署名
getAttributeName
指定された JavaBeans プロパティに使用する JMX 属性名を返します。厳密な大文字小文字を使用する場合、
getFoo()
などの getter メソッドを使用した JavaBean プロパティは、Foo
と呼ばれる属性に変換されます。厳密な大文字小文字の区別を無効にすると、getFoo()
はfoo
だけに変換されます。- パラメーター:
property
- JavaBeans プロパティ記述子useStrictCasing
- 厳密なケーシングを使用するかどうか- 戻り値:
- 使用する JMX 属性名
appendIdentityToObjectName
public static ObjectNameSE appendIdentityToObjectName(ObjectNameSE objectName, ObjectSE managedResource) throws MalformedObjectNameExceptionSE 追加のキー / 値ペアを既存のObjectName
SE に追加します。キーは静的値identity
で、値は提供されたObjectName
SE で公開されている管理対象リソースの ID ハッシュコードです。これを使用して、特定の Bean またはクラスの個別のインスタンスごとに一意のObjectName
SE を提供できます。ObjectNamingStrategy
によって提供されるテンプレート値に基づいて、一連の管理対象リソースの実行時にObjectNames
SE を生成するときに役立ちます。- パラメーター:
objectName
- オリジナルの JMX ObjectNamemanagedResource
- MBean インスタンス- 戻り値:
- MBean ID が追加された ObjectName
- 例外:
MalformedObjectNameExceptionSE
- オブジェクト名の指定が無効な場合- 関連事項:
getClassToExpose
指定された Bean に公開するクラスまたはインターフェースを返します。これは、属性と操作を検索するクラスです(たとえば、アノテーションをチェックします)。この実装は、CGLIB プロキシのスーパークラスと指定された Bean のクラスを返します(JDK プロキシまたはプレーン Bean クラスの場合)。
- パラメーター:
managedBean
- Bean インスタンス (AOP プロキシである可能性があります)- 戻り値:
- 公開する Bean クラス
- 関連事項:
getClassToExpose
指定された Bean クラスに公開するクラスまたはインターフェースを返します。これは、属性と操作を検索するクラスです(たとえば、アノテーションをチェックします)。この実装は、CGLIB プロキシのスーパークラスと指定された Bean のクラスを返します(JDK プロキシまたはプレーン Bean クラスの場合)。
- パラメーター:
clazz
- Bean クラス (AOP プロキシクラスの可能性があります)- 戻り値:
- 公開する Bean クラス
- 関連事項:
isMBean
指定された Bean クラスがそのまま MBean として適格かどうかを判断します。この実装は、
DynamicMBean
SE クラスと、対応する "* MBean" インターフェース(標準 MBean)または対応する "* MXBean" インターフェース(Java MXBeans)を持つクラスをチェックします。- パラメーター:
clazz
- 分析する Bean クラス- 戻り値:
- クラスが MBean として適格かどうか
- 関連事項:
getMBeanInterface
指定されたクラスの標準 MBean インターフェースがあればそれを返します(つまり、名前が指定されたクラスのクラス名と一致するが、接尾辞が "MBean" のインターフェース)。- パラメーター:
clazz
- チェックするクラス- 戻り値:
- 指定されたクラスの標準 MBean インターフェース
getMXBeanInterface
指定されたクラスの JavaMXBean インターフェース(つまり、名前が "MXBean" で終わるインターフェース、および / または適切な MXBean アノテーションを持つインターフェース)を返します。- パラメーター:
clazz
- チェックするクラス- 戻り値:
- 指定されたクラスに MXBean インターフェースがあるかどうか