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

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

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

WLDF コンフィグレーションについて

WebLogic 診断フレームワーク (WLDF) では、BEA WebLogic Server® インスタンスおよびサーバ インスタンスにデプロイされたアプリケーションから診断データを生成、収集、解析、永続化できます。サーバ スコープの診断では、一部の WLDF 機能は、ドメインのコンフィグレーションの一部としてコンフィグレーションされます。その他の機能は、サーバ (またはクラスタ) を対象指定できるシステム リソース記述子としてコンフィグレーションされます。アプリケーション スコープの診断では、診断機能は、アプリケーションのリソース記述子としてコンフィグレーションされます。

以下のトピックでは、WLDF コンフィグレーションの概要について説明します。

WebLogic Server のドメイン コンフィグレーションの一般情報については、「ドメイン コンフィグレーション ファイルの概要」を参照してください。

 


コンフィグレーション MBean と XML について

他の WebLogic Server サブシステムと同様に、WLDF は、コンフィグレーション MBean (管理対象 Bean) でコンフィグレーションされます。コンフィグレーションは、XML コンフィグレーション ファイルの形式で永続化されます。コンフィグレーション MBean は、XML ファイルのコンフィグレーション設定を基に、起動時にインスタンス化されます。MBean 属性の値を変更してコンフィグレーションを変更すると、それらの変更内容は XML ファイルに保存 (永続化) されます。

MBean と XML ファイルとの間の関係で特徴的なものとして、コンフィグレーション MBean 属性がコンフィグレーション XML 要素に直接マップされることが挙げられます。たとえば、WLDFInstrumentationMBeanEnable 属性は、診断モジュール用に、リソース記述子ファイル (コンフィグレーション ファイル) の <instrumentation><enabled> サブ要素に直接マップされます。MBean 属性の値を変更した場合、コンフィグレーションを保存したときに XML 要素の内容も変更されます。一方、コンフィグレーション ファイルで XML 要素を直接編集した場合は、MBean がインスタンス化されたときに MBean 属性の値が更新されます。

WLDF コンフィグレーション MBean の詳細については、「コンフィグレーション MBean の階層と XML 要素へのマッピングについて」を参照してください。WebLogic Server でどのように MBean が実装され、使用されるかについては、『JMX によるカスタム管理ユーティリティの開発』の「Understanding WebLogic Server MBeans」を参照してください。

 


WLDF のコンフィグレーション用ツール

他の WebLogic Server サブシステムと同様に、WLDF のコンフィグレーションには、以下のような複数の方法があります。

 


WLDF コンフィグレーションが永続化されるしくみ

WLDF を使用すると、サーバ インスタンス (とクラスタ) およびアプリケーションに対して診断タスクを実行できます。

サーバ レベルのコンフィグレーション

ドメイン内のサーバ インスタンスのコンフィグレーションの一部として、以下の WLDF コンポーネントがコンフィグレーションされます。コンフィグレーションは、ドメインの config.xml ファイルで永続化されます。

診断イメージ キャプチャと診断アーカイブのコンフィグレーション」を参照してください。

以下の WLDF コンポーネントが、サーバ インスタンスにデプロイ可能な診断モジュール (リソース) としてコンフィグレーションされます。これらのコンフィグレーション設定は、1 つまたは複数のサーバ インスタンスを対象に指定できる診断リソース記述子ファイル (コンフィグレーション ファイル) に永続化されます。

診断システム モジュールのコンフィグレーション」を参照してください。

注意 : (診断モジュールのインスツルメンテーションの一部としてコンフィグレーションされた) サーバ インスタンス用の診断コンテキストをコンフィグレーションした場合は、モジュール自体のコンフィグレーションではなく、ドメインの config.xml ファイルで、そのモジュールのコンテキストをグローバルに有効化または無効化します。

アプリケーション レベルのコンフィグレーション

WLDF インスツルメンテーション コンポーネントはアプリケーションで使用できます。インスツルメンテーション コンポーネントは、アプリケーション アーカイブ ファイルのアプリケーションでデプロイされたリソース記述子ファイルでコンフィグレーションされます。アプリケーション用の診断モジュールのコンフィグレーション」を参照してください。

 


診断イメージ キャプチャと診断アーカイブのコンフィグレーション

診断イメージ キャプチャ コンポーネントと診断アーカイブ コンポーネントは、ドメインの config.xml ファイルで、<server-diagnostic-config> 要素としてコンフィグレーションされます。この要素は、 コード リスト 2-1 に示すように、ドメインの <server> 要素の子要素です。

コード リスト 2-1 ドメインの config.xml ファイルにある WLDF コンフィグレーション情報のサンプル

<domain>
  <server>
    <name>myserver</name>
    <server-diagnostic-config>
      <image-dir>logs\diagnostic_images</image-dir>
      <image-timeout>3</image-timeout>
      <diagnostic-store-dir>data/store/diagnostics</diagnostic-store-dir>
      <diagnostic-data-archive-type>FileStoreArchive
      </diagnostic-data-archive-type>
    </server-diagnostic-config>
  </server>
  <!-- このドメイン内の他の要素をコンフィグレーションするための他のサーバ要素 -->
  <!-- 他のドメインベースのコンフィグレーション要素。WLDF システム リソース、
       つまり診断システム モジュールへの参照を含む。
       コード リスト 2-2 を参照。-->
</domain>

詳細については、以下を参照してください。

 


診断システム モジュールのコンフィグレーション

インスツルメンテーション、ハーベスタ、監視と通知の各コンポーネントをサーバ レベルでコンフィグレーションおよび使用するには、「診断システム モジュール」というシステム リソースをあらかじめ作成する必要があります。システム モジュールでは、ドメイン内でコンフィグレーションされたサーバおよびクラスタをグローバルに対象指定できます。

診断システム モジュールとそのリソース記述子について

診断システム モジュールは WLDFResourceBean として作成され、そのコンフィグレーションは、DIAG_MODULE.xml (DIAG_MODULE は診断モジュールの名前) というリソース記述子ファイル (コンフィグレーション ファイル) で永続化されます。記述子ファイル名は指定できますが、必須ではありません。ファイル名を付けなかった場合、記述子ファイルの <name> 要素の値を基に名前が付けられます。デフォルトでは、ファイルは DOMAIN_NAME\config\diagnostics ディレクトリに作成されます。DOMAIN_NAME は、ドメインのホーム ディレクトリ名です。ファイルの拡張子は .xml です。

注意 : 診断モジュールは diagnostics.xsd スキーマに準拠しています。このスキーマは、http://www.bea.com/ns/weblogic/90/diagnostics.xsd で参照できます。ドキュメントについては、『WebLogic Server Diagnostics Configuration Schema Referenceを参照してください。

config.xml からの診断システム モジュールの参照

Administration Console または WebLogic Scripting Tool (WLST) を使って診断システム モジュールを作成すると、WebLogic Server は、DOMAIN_NAME/config/diagnostics ディレクトリに診断システム モジュールを作成します。また、ドメインの config.xml ファイルに、モジュールへの参照が追加されます。

注意 : 独自の XML コンフィグレーション ファイルを作成している場合でも、Administration Console から診断モジュールを作成できます。その際、Administration Console が作成する有効な XML を利用できます。詳細については、Administration Console オンライン ヘルプの「診断システム モジュールの作成」を参照してください。

config.xml ファイルには、1 つまたは複数の <wldf-system-resource> 要素を使って診断モジュールへの参照を複数指定できます。<wldf-system-resource> 要素には、診断モジュール ファイル名、およびその診断モジュールの対象となるサーバとクラスタのリストが含まれます。また、<wldf-system-resource> 要素には、対象のサーバ インスタンスまたはクラスタ (いずれも複数可) の診断コンテキストを有効化または無効化する <diagnostic-context-enabled> 要素を指定することもできます。

コード リスト 2-2 では、サーバ myserver を対象にした myDiagnosticModule というモジュールに加え、サーバ ManagedServer1ManagedServer1 を対象にした newDiagnosticMod というモジュールの例を示します。診断コンテキストは、newDiagnosticMod モジュールに対して有効化されます。

コード リスト 2-2 ドメインの config.xml ファイルにある WLDF コンフィグレーション情報のサンプル

<domain>
  <!-- 他のドメイン レベルのコンフィグレーション要素 -->
  <wldf-system-resource 
         xmlns="http://www.bea.com/ns/weblogic/90/diagnostics">
    <name>myDiagnosticModule</name>
    <target>myserver</target>
    <descriptor-file-name>diagnostics/MyDiagosticModule.xml
    </descriptor-file-name>
    <description>My diagnostic module</description>
  </wldf-system-resource>
  <wldf-system-resource>
    <name>newDiagnosticMod</name>
    <target>ManagedServer1,ManagedServer2</target>
    <descriptor-file-name>diagnostics/newDiagnosticMod.xml
    </descriptor-file-name>
    <diagnostic-context-enabled>true</diagnostic-context-enabled>
    <description>A diagnostic module for my managed servers</description>
  </wldf-system-resource>
<!-- 他の WLDF システム リソース コンフィグレーション -->
</domain>

config.xml ファイルと MyDiagnosticModule.xml ファイルとの関係を図 2-1 に示します。

図 2-1 config.xml とシステム記述子ファイルとの関係

config.xml とシステム記述子ファイルとの関係


 

リソース記述子のコンフィグレーションについて

診断モジュールの名前と対照のリストは、上記のように config.xml ファイルに記述されますが、それ以外の診断モジュールに関するコンフィグレーションは、すべてリソース記述子ファイルに保存されます。コード リスト 2-3 では、myDiagnosticModule という診断モジュールの記述子ファイルの一部を示します。

コード リスト 2-3 診断システム モジュール記述子ファイル MyDiagnosticModule.xml のサンプル

<wldf-resource xmlns="http://www.bea.com/ns/weblogic/90/diagnostics" 
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation="http://www.bea.com/ns/weblogic/90/diagnostics.xsd">
  <name>MyDiagnosticModule</name>
  <instrumentation>
    <!-- 1 つまたは複数の診断モニタ用のコンフィグレーション要素 -->
  </instrumentation>
  <harvester>
    <!-- 1 つまたは複数の MBean の型、インスタンス、および属性から
         メトリックを収集するためのコンフィグレーション要素 -->
  </harvester>
  <watch-notification>
    <!-- 1 つまたは複数の監視および通知に対する
         コンフィグレーション要素 -->
  </watch-notification>
</wldf-resource>

診断モジュールの管理

1 つのサーバを対象にできるモジュールは一度に 1 つだけですが、診断システム モジュールは、0 個、1 つ、または複数のサーバを対象にできます。システムのさまざまな側面をモニタするために、複数のモジュールを作成できます。複数のモジュールを作成した場合、その時にモニタする内容を基に、サーバまたはクラスタを対象にするモジュールを選択できます。

同じモジュールで複数のサーバまたはクラスタを対象にできるので、ドメイン内全体で使用する汎用モジュールを作成できます。

診断モジュールの対象を変更した場合でも、対象に指定したサーバまたは対象指定を解除したサーバを再起動する必要はありません。この機能により、特定の診断目的に対応する診断モニタを柔軟に作成および使用できます。また、その際、サーバ インスタンス自体の操作が妨げられることはありません。

診断システム リソースのコンフィグレーションの詳細

WLDF システム リソースの詳細なコンフィグレーション手順については、以下の節を参照してください。

 


アプリケーション用の診断モジュールのコンフィグレーション

アプリケーション スコープのインスツルメンテーションは、診断システム モジュールによく似た診断モジュールとしてコンフィグレーションおよびデプロイされます。ただし、アプリケーション モジュールは、アプリケーション アーカイブでパッケージ化された weblogic-diagnostics.xml という XML コンフィグレーション ファイルでコンフィグレーションされます。

注意 : アプリケーションの診断記述子では、インスツルメンテーション コンポーネントのみをコンフィグレーションできます。

診断コンテキストのコンフィグレーションに使用する DyeInjection モニタは、サーバ レベルでのみコンフィグレーション可能です。ただし、診断コンテキストが作成されると、受信した要求にアタッチされた診断コンテキストは、アプリケーション内のフローのまま送られてきます。

アプリケーション用にインスツルメンテーションをコンフィグレーションする詳細な手順については、「アプリケーション スコープのインスツルメンテーションのコンフィグレーション」を参照してください。

 


コンフィグレーション MBean の階層と XML 要素へのマッピングについて

図 2-2 に、WebLogic ドメイン内の WLDF コンフィグレーション MBean および WLDF オブジェクトの診断システム モジュール Bean の階層を示します。

図 2-2 WLDF コンフィグレーション Bean ツリー

WLDF コンフィグレーション Bean ツリー


 

以下の WLDF MBean は、サーバ レベルで WLDF をコンフィグレーションします。また、ドメインの config.xml コンフィグレーション ファイルの XML 要素にマッピングされます。

 

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