ナビゲーションをスキップ

WebLogic 診断フレームワークのコンフィグレーションと使い方

  前 次 前/次ボタンと目次ボタンとの区切り線 目次  

メトリック収集用のハーベスタのコンフィグレーション

WebLogic 診断フレームワーク (WLDF) のハーベスタ コンポーネントでは、実行中のサーバでインスタンス化される限定された MBean の属性からメトリックを収集します。ハーベスタは、BEA WebLogic Server® MBean およびカスタム MBean からメトリックを収集できます。

以下の節では、収集およびハーベスタのコンフィグレーション プロセスについて説明します。

 


メトリック収集、収集可能データ、および収集対象データ

「メトリック収集」とは、システムの状態やパフォーマンスをモニタするのに役立つデータを収集するプロセスです。メトリックは、限定された MBean の属性として WLDF に公開されます。ハーベスタは、指定したサンプリング レートで、選択した MBean 属性から値を収集します。そのため、変動する可能性がある値を継続して追跡できます。

データが「収集可能」な状態になるには、一定の条件が必要です。また、「収集対象」になるには、さらに条件が必要となります。

WLDFHarvesterRuntimeMBean で、収集可能データおよび収集対象データのセットが提供されます。この MBean から返される情報は、変更の可能性もある状態のスナップショットです。この MBean で提供されるデータの詳細については、『WebLogic Server MBean リファレンス』で weblogic.management.runtime.WLDFHarvesterRuntimeMBean に関する説明を参照してください。

Administration Console、WebLogic Scripting Tool (weblogic.WLST)、または JMX を使用すると、サーバ MBean およびカスタム MBean に格納されているメトリックを収集およびアーカイブするようにハーベスタをコンフィグレーションできます。

 


さまざまな収集可能エンティティからのデータ収集

指定した MBean の型、インスタンス、属性からデータを収集するようにハーベスタをコンフィグレーションできます。いずれの場合も、表 6-1 に示すように、ハーベスタは MBean インスタンスの属性値を収集します。

表 6-1 さまざまなコンフィグレーションからの収集対象データのソース

収集対象としてコンフィグレーションされているエンティティ

データの収集元

型 (のみ)

指定した型のすべてのインスタンスの収集可能なすべての属性

型の属性

(型 + 属性)

指定した型のすべてのインスタンスの指定した属性

型のインスタンス

(型 + インスタンス)

指定した型の指定したインスタンスの収集可能なすべての属性

型のインスタンスの属性
(型 + インスタンス + 属性)

指定した型の指定したインスタンスの指定した属性

すべての WebLogic Server 実行時 MBean の型と属性は、起動時に認識されます。そのため、ハーベスタのコンフィグレーションがロードされる場合、WebLogic Server の収集可能エンティティのセットは、WebLogic Server 実行時 MBean の型と属性と同じです。型がインスタンス化されると、そのインスタンスも認識されて収集可能になります。

収集可能なカスタム MBean の型のセットは変動します。カスタム MBean は、その型が認識される前にインスタンス化する必要があります (型が存在するようになるのは、少なくとも 1 つのインスタンスが作成されたときからです)。したがって、カスタム MBean が MBean サーバに登録されたり、MBean サーバから削除されたりするとともに、カスタム MBean の収集可能な型のセットは大きくなったり小さくなったりします。新しい MBean の登録に基づいて新しい型を検出するこのプロセスを、「型検出」と呼びます。

Administration Console でハーベスタをコンフィグレーションする場合、コンフィグレーションできる収集可能エンティティのリストが Administration Console に表示されます。このリストは、WebLogic Server MBean に関しては常に完全ですが、カスタム MBean に関しては、現在検出されている型のみが含まれます。Administration Console オンライン ヘルプの「診断システム モジュールへの収集するメトリックのコンフィグレーション」を参照してください。

 


ハーベスタのコンフィグレーション

ハーベスタがコンフィグレーションされ、メトリックが収集されるのは、1 つまたは複数のサーバ インスタンスを対象にした診断モジュールの範囲内です。

コード リスト 6-1 に、WLDF システム リソース記述子ファイル myWLDF.xml のハーベスタ コンフィグレーション要素を示します。このサンプル コンフィグレーションでは、ServerRuntimeMBeanWLDFHarvesterRuntimeMBean、およびカスタム (非 WLS) MBean からデータを収集します。コード リストに続いて、リスト内の各要素について説明します。

コード リスト 6-1 ハーベスタ コンフィグレーションのサンプル (DIAG_MODULE.xml 内)

<wldf-resource xmlns="http://www.bea.com/ns/weblogic/90/diagnostics" 
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<name>myWLDF</name>
  <harvester>
    <enabled>true</enabled>
    <sample-period>5000</sample-period>
    <harvested-type>
      <name>weblogic.management.runtime.ServerRuntimeMBean</name>
    </harvested-type>
    <harvested-type>
      <name>weblogic.management.runtime.WLDFHarvesterRuntimeMBean</name>
        <harvested-attribute>TotalSamplingTime</harvested-attribute>
        <harvested-attribute>CurrentSnapshotElapsedTime
        </harvested-attribute>
    </harvested-type>
    <harvested-type>
      <name>myMBeans.MySimpleStandard</name>
      <harvested-instance>myCustomDomain:Name=myCustomMBean1
      </harvested-instance>
      <harvested-instance>myCustomDomain:Name=myCustomMBean2
      </harvested-instance>
    </harvested-type>
  </harvester>
<!-- ----- 他の要素 ----- -->
</wldf-resource>

ハーベスタのサンプリング期間のコンフィグレーション

<sample-period> 要素は、ハーベスタのサンプル期間をミリ秒で設定します。以下に例を示します。

    <sample-period>5000</sample-period>

サンプル期間には、各サイクル間の時間を指定します。たとえば、ハーベスタが T で指定した時間に実行を開始し、サンプル期間が I の場合、次の収集サイクルは T+I に開始されます。サイクルが完了するまで A 秒かかり、AI を上回っている場合、次のサイクルは T+A に開始されます。この場合ハーベスタは、平均間隔が I になるように、より早く次のサイクルを開始しようとします。

収集するデータの種類のコンフィグレーション

1 つまたは複数の <harvested-type> 要素で、収集するデータの種類を指定します。各 <harvested-type> 要素には、メトリックを収集する MBean の型を指定します。下位要素では、収集されるその型のインスタンスと属性のどちらか、または両方を指定します (省略可能)。各オプションを次のように設定します。

WebLogic Server MBean とカスタム MBean の型名の指定

ハーベスタは、WebLogic Server MBean とカスタム MBean をサポートしています。WebLogic Server MBean は、WebLogic Server の一部としてパッケージ化されている MBean です。カスタム MBean は、ローカル実行時 MBean サーバに登録されている間は収集可能です。

WebLogic Server MBean の型とカスタム MBean の型は、その指定方法に若干の違いがあります。WebLogic Server MBean の型では、型名はその MBean を定義する Java インタフェースの名前です。たとえば、サーバの実行時 MBean の型名は weblogic.management.runtime.ServerRuntimeMBean です。カスタム MBean の場合、型名はその実装クラスの名前です (コード リスト 6-1 の例を参照)。

コンフィグレーション設定を検証するタイミング

WLDF では、できる限り速やかにコンフィグレーションを検証しようとします。ほとんどのコンフィグレーションは、サーバの起動時および動的な変更がコミットされる度に検証されます。ただし、JMX の制限により、カスタム MBean はそのインスタンスが MBean サーバに登録されるまでは検証されません。

さまざまな収集可能な型のコンフィグレーションのサンプル

コード リスト 6-2 で、DIAG_MODULE.xml コンフィグレーション ファイルの <harvested-type> 要素では、ServerRuntimeMBean が収集されることを指定しています。<harvested-instance> 下位要素の指定がないため、この型のすべてのインスタンスが収集されます。ただし、サーバの実行時 MBean のインスタンスは常に 1 つだけなので、特定のインスタンスのリストを指定する必要はありません。また、<harvested-attribute> 下位要素の指定がないため、この MBean の利用可能な属性がすべて収集されます。

コード リスト 6-2 型のすべてのインスタンスと属性を収集するコンフィグレーションのサンプル (DIAG_MODULE.xml 内)

    <harvested-type>
      <name>weblogic.management.runtime.ServerRuntimeMBean</name>
    </harvested-type>

コード リスト 6-3 で、DIAG_MODULE.xml コンフィグレーション ファイルの <harvested-type> 要素では、WLDFHarvesterRuntimeMBean が収集されることを指定しています。上記の例と同様に、存在する WLDFHarvesterRuntimeMBean は 1 つだけなので、特定のインスタンスのリストを指定する必要がありません。下位要素 <harvested-attribute> は、WLDFHarvesterRuntimeMBean の利用可能な属性のうち 2 つ、すなわち TotalSamplingTimeCurrentSnapshotElapsedTime のみを収集するように指定されています。

コード リスト 6-3 型のすべてのインスタンスの指定した属性を収集するコンフィグレーションのサンプル (DIAG_MODULE.xml 内)

    <harvested-type>
      <name>weblogic.management.runtime.WLDFHarvesterRuntimeMBean</name>
        <harvested-attribute>TotalSamplingTime</harvested-attribute>
        <harvested-attribute>CurrentSnapshotElapsedTime
        </harvested-attribute>
    </harvested-type>

コード リスト 6-4 で、DIAG_MODULE.xml コンフィグレーション ファイルの <harvested-type> 要素では、カスタム MBean 型の 1 つのインスタンスが収集されることを指定しています。この場合、カスタム MBean なので、型名は実装クラスです。この例では、2 つの <harvested-instance> 要素で、この型のインスタンスが 2 つだけ収集されるように指定しています。それぞれのインスタンスが、JMX ObjectName の標準表現によって指定されています。<harvested-attribute> のインスタンスは指定されていないので、すべての属性が収集の対象になります。

コード リスト 6-4 型の指定したインスタンスの指定した属性を収集するコンフィグレーションのサンプル (DIAG_MODULE.xml 内)

    <harvested-type>
      <name>myMBeans.MySimpleStandard</name>
      <harvested-instance>myCustomDomain:Name=myCustomMBean1
      </harvested-instance>
      <harvested-instance>myCustomDomain:Name=myCustomMBean2
      </harvested-instance>
    </harvested-type>

 

フッタのナビゲーションのスキップ  ページの先頭 前 次