1

karaf コンソールで、バンドルがスプリング フレームワークに接続されている場合、バンドルを一覧表示するとスプリングの状態が表示されます。たとえば、以下のバンドル 91 を参照してください。スプリングの状態は「FAILED」です。

JMX karaf MBeans を介してこの情報を取得する方法はありますか?

MBean org.apache.karaf:type=bundles,name=SOMENAME/attribute=Bundles はバンドルの osgi 状態をリストしますが、karaf 状態はリストしません。ブループリント用に別の MBean がありますが、調べてみると、バンドルのスプリング状態をリストする公開されたものは見つかりません。

   ID   State         Blueprint      Spring    Level  Name
[  91] [Active     ] [            ] [FAILED ] [   80] Foo Common Services (1.0.0)
[  92] [Active     ] [            ] [       ] [   80] Apache Felix Declarative Services (1.6.0)
[  93] [Active     ] [            ] [       ] [   80] Commons Codec (1.4)
[  94] [Active     ] [            ] [       ] [   80] Foo Crypto (1.0.0)
[  95] [Active     ] [            ] [       ] [   80] Commons Lang (2.6)
4

1 に答える 1

3

karaf 3 ではバンドル状態を統一しました。ブループリントとスプリング状態を含む状態は 1 つだけです。getDiag(bundleId) を呼び出して、失敗した Spring バンドルのエラー メッセージを取得することもできます。

残念ながら karaf 2.x にはそのような機能はありません。

于 2014-02-21T06:27:05.877 に答える