![]() ![]() ![]() ![]() |
WebLogic 診断フレームワーク (WLDF) では、BEA WebLogic Server® インスタンスおよびサーバ インスタンスにデプロイされたアプリケーションから診断データを生成、収集、解析、永続化できます。サーバ スコープの診断では、一部の WLDF 機能は、ドメイン内のサーバのコンフィグレーションの一部としてコンフィグレーションされます。その他の機能は、サーバ (またはクラスタ) を対象指定できるシステム リソース記述子としてコンフィグレーションされます。アプリケーション スコープの診断では、診断機能は、アプリケーションのリソース記述子としてコンフィグレーションされます。
以下の節では、WLDF コンフィグレーションの概要について説明します。
WebLogic Server のドメイン コンフィグレーションの一般情報については、「ドメイン コンフィグレーション ファイルの概要」を参照してください。
他の WebLogic Server サブシステムと同様に、WLDF はコンフィグレーション MBean (管理対象 Bean) を使用してコンフィグレーションされ、コンフィグレーションは XML コンフィグレーション ファイルに永続化されます。コンフィグレーション MBean は、XML ファイルのコンフィグレーション設定に基づいて、起動時にインスタンス化されます。MBean 属性の値を変更してコンフィグレーションを変更すると、それらの変更内容は XML ファイルに保存 (永続化) されます。
コンフィグレーション MBean の属性はコンフィグレーション XML 要素に直接マップされます。たとえば、WLDFInstrumentationBean
の Enable
属性は、診断モジュールのリソース記述子ファイル (コンフィグレーション ファイル) で、<instrumentation>
要素の <enabled>
下位要素に直接マップされます。MBean 属性の値を変更した場合、コンフィグレーションを保存するときに XML 要素の内容も変更されます。反対に、コンフィグレーション ファイルの XML 要素を直接編集した場合 (推奨されません)、MBean 値の変更は次のセッションが開始するときに有効になります。
WLDF コンフィグレーション MBean の詳細については、「WLDF コンフィグレーション MBean と XML 要素へのマッピング」を参照してください。WebLogic Server でどのように MBean が実装され、使用されるかについては、『JMX によるカスタム管理ユーティリティの開発』の「WebLogic Server MBean について」を参照してください。
他の WebLogic Server サブシステムと同様に、WLDF のコンフィグレーションには、以下のような複数の方法があります。
注意 : | コンフィグレーション ファイルを編集してコンフィグレーションを変更した場合、その変更を有効にするにはサーバを再起動する必要があります。 |
WLDF を使用すると、サーバ インスタンス (とクラスタ) およびアプリケーションに対して診断タスクを実行できます。
以下のコンポーネントは、ドメインのサーバ インスタンスの一部としてコンフィグレーションします。コンフィグレーション設定は MBean を使用して制御され、ドメインの config.xml
ファイルに永続化されます。
「診断イメージ キャプチャと診断アーカイブのコンフィグレーション」を参照してください。
以下の WLDF コンポーネントは、1 つまたは複数のサーバ インスタンス (またはクラスタ) にデプロイできる、1 つまたは複数の診断システム モジュールまたはリソースの一部としてコンフィグレーションします。これらのコンフィグレーション設定は Bean を使用してコンフィグレーションされ、1 つまたは複数のサーバ インスタンス (クラスタ) に対象指定できる、1 つまたは複数の診断リソース記述子ファイル (コンフィグレーション ファイル) に永続化されます。
「診断システム モジュールのコンフィグレーション」を参照してください。
WLDF インスツルメンテーション コンポーネントは、サーバ レベルだけでなくアプリケーションレベルでも使用できます。インスツルメンテーション コンポーネントは、アプリケーション アーカイブ ファイルのアプリケーションでデプロイされたリソース記述子ファイルでコンフィグレーションされます。「アプリケーション用の診断モジュールのコンフィグレーション」を参照してください。
ドメインの config.xml
ファイルの <server-diagnostic-config>
要素で、診断イメージ キャプチャ コンポーネントと診断アーカイブ コンポーネントをコンフィグレーションします。<server-diagnostic-config> 要素はドメインの <server>
要素の子です。コード リスト 3-1 を参照してください。
<domain>
<server>
<name>myserver</name><server-diagnostic-config>
</server>
<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>
<!-- このドメイン内の他の要素をコンフィグレーションするための他のサーバ要素 -->
<!-- 他のドメインベースのコンフィグレーション要素。WLDF システム リソース、
つまり診断システム モジュールへの参照を含む。
コード リスト 3-2 を参照 -->
</domain>
インスツルメンテーション、ハーベスタ、監視と通知の各コンポーネントをサーバ レベルでコンフィグレーションして使用するには、「診断システム モジュール」というシステム リソースをあらかじめ作成する必要があります。診断システム モジュールには、これらのすべてのコンポーネントのコンフィグレーションが含まれます。システム モジュールは、ドメインでコンフィグレーションされているサーバおよびクラスタにグローバルに対象指定できます。個別のコンフィグレーションを持つ複数の診断システム モジュールを作成できます。ただし、特定のサーバまたはクラスタに対象指定できる診断システム モジュールは 1 つだけです。
診断システム モジュールは Administration Console または WebLogic Scripting Tool (WLST) を使用して作成します。診断システム モジュールは 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 Schema Reference』を参照してください。 |
診断システム モジュールの作成手順については、Administration Console オンライン ヘルプの「診断システム モジュールの作成」を参照してください。
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>
要素には、診断モジュール ファイル名、およびその診断モジュールの対象となるサーバとクラスタのリストが含まれます。
コード リスト 3-2 では、サーバ myserver
を対象にした myDiagnosticModule
というモジュールに加え、サーバ ManagedServer1
と ManagedServer2
を対象にした newDiagnosticMod
というモジュールの例を示します。
<domain>
<!-- 他のドメイン レベルのコンフィグレーション要素 -->
<wldf-system-resource
xmlns="
http://www.bea.com/ns/weblogic/90/diagnostics"
>
<name>myDiagnosticModule</name>
<target>myserver</target>
<descriptor-file-name>diagnostics/MyDiagnosticModule.xml
<description>My diagnostic module</description>
</descriptor-file-name>
</wldf-system-resource>
<wldf-system-resource>
<name>newDiagnosticMod</name>
<target>ManagedServer1,ManagedServer2</target>
<descriptor-file-name>diagnostics/newDiagnosticMod.xml
</descriptor-file-name>
<description>A diagnostic module for my managed servers</description>
</wldf-system-resource>
<!-- 他の WLDF システム リソース コンフィグレーション -->
</domain>
config.xml
ファイルと MyDiagnosticModule.xml
ファイルとの関係を図 3-1 に示します。
診断システム モジュールの名前と対象のリストは、上記のように config.xml
ファイルに記述されますが、それ以外の診断システム モジュールに関するコンフィグレーションは、すべてリソース記述子ファイルに保存されます。コード リスト 3-3 では、myDiagnosticModule
という診断システム モジュールの記述子ファイルの一部を示します。
<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>
<!-- ゼロ個以上の診断モニタのコンフィグレーション要素 -->
</instrumentation>
<harvester>
<!-- ゼロ個以上の MBean の型、インスタンス、および属性から
メトリックを収集するためのコンフィグレーション要素 -->
</harvester>
<watch-notification><!-- 1 つまたは複数の監視および通知に対する
</watch-notification>
コンフィグレーション要素 -->
</wldf-resource>
1 つのサーバを対象にできるモジュールは一度に 1 つだけですが、診断システム モジュールは、0 個、1 つ、または複数のサーバを対象にできます。システムのさまざまな側面をモニタするために、複数のモジュールを作成できます。複数のモジュールを作成した場合、その時にモニタする内容を基に、サーバまたはクラスタを対象にするモジュールを選択できます。
同じモジュールで複数のサーバまたはクラスタを対象にできるので、ドメイン内全体で使用する汎用モジュールを作成できます。
診断モジュールの対象を変更した場合でも、対象に指定したサーバまたは対象指定を解除したサーバを再起動する必要はありません。この機能により、特定の診断目的に対応する診断モニタを柔軟に作成および使用できます。また、その際、サーバ インスタンス自体の操作が妨げられることはありません。
WLDF システム リソースの詳細なコンフィグレーション手順については、以下の章を参照してください。
アプリケーションの診断記述子では、インスツルメンテーション コンポーネントのみをコンフィグレーションできます。
アプリケーション スコープのインスツルメンテーションは、診断システム モジュールに似た「診断モジュール」としてコンフィグレーションおよびデプロイします。ただし、アプリケーション モジュールは weblogic-diagnostics.xml
という XML 記述子 (コンフィグレーション) ファイルでコンフィグレーションされます。このファイルは、デプロイされるアプリケーションの ARCHIVE_PATH
/META-INF
ディレクトリ内で、アプリケーション アーカイブと一緒にパッケージ化されます (D:\bea\wlserver_10.0\samples\server\medrec\dist\medrecEar\META-INF\weblogic-diagnostics.xml
など)。
注意 : | (システム内を通過する要求を追跡する方法として) 診断コンテキストをコンフィグレーションする際に使用される DyeInjection モニタは、サーバ レベルでのみコンフィグレーションできます。ただし、診断コンテキストが作成されると、受信した要求にアタッチされた診断コンテキストは、要求と一緒にアプリケーション内を通過します。診断コンテキストの詳細については、「診断コンテキストを管理するための DyeInjection モニタのコンフィグレーション」を参照してください。 |
アプリケーションの診断モジュールのコンフィグレーションとデプロイの詳細については、以下を参照してください。
図 3-2 に、WebLogic Server ドメイン内の WLDF コンフィグレーション MBean および WLDF オブジェクトの診断システム モジュール Bean の階層を示します。
以下の WLDF MBean は、サーバ レベルで WLDF をコンフィグレーションします。また、ドメインの config.xml
コンフィグレーション ファイルの XML 要素にマップされます。
WLDFServerDiagnosticMBean
は、サーバのデータ アーカイブ コンポーネントと診断イメージ コンポーネントのコンフィグレーション設定を制御し、診断モジュールの診断コンテキストをグローバルに有効化または無効化するかどうかを制御します (診断コンテキストは、要求をユニークに識別し、システム内を通過する際に要求を追跡する手段です)。「診断コンテキストを管理するための DyeInjection モニタのコンフィグレーション」を参照してください。
この MBean は、サーバのドメインの config.xml
ファイルで、<server>
要素の <server-diagnostic-config>
子要素で表されます。
WLDFSystemResourceMBean
には、DOMAIN_NAME/
config/diagnostics
ディレクトリにある診断モジュールの記述子ファイルの名前、およびそのモジュールがデプロイされる対象サーバ (複数可) の名前が含まれます。
この MBean は、ドメインの config.xml
ファイルの <wldf-system-resource>
要素で表されます。
注意 : | ドメイン内に複数の診断システム モジュールを作成できます。モジュールのコンフィグレーションは、ドメインの config/diagnostics ディレクトリの複数の記述子ファイルに保存されます。したがって、ドメインの config.xml ファイルには、それらのモジュールを表す複数の <wldf-system-resource> 要素を指定できます。ただし、サーバに対象指定できる診断システムモジュールは一度に 1 つのみです。同じサーバをアクティブな対象にしている 2 つのファイルが config/diagnostics ディレクトリに存在することはできません。 |
WLDFResourceBean
には、診断システム モジュールのコンフィグレーション設定が収められています。この Bean は、ドメインの config/diagnostics
ディレクトリにある DIAG_MODULE
.xml
診断記述子ファイルの <wldf-system-resource>
要素で表されます (図 3-1 およびコード リスト 3-3 を参照)。WLDFResourceBean
には、以下のコンポーネントのコンフィグレーション設定が収められています。WLDFHarvesterBean
は、DIAG_MODULE
.xml
ファイルの <harvester>
要素で表されます。WLDFInstrumentationBean
は、DIAG_MODULE
.xml
ファイルの <instrumentation>
要素で表されます。WLDFWatchNotificationBean
は、DIAG_MODULE
.xml
ファイルの <watch-notification>
要素で表されます。
WLDFResourceBean
が WLDFSystemResourceMBean
からリンクされている場合、その WLDF コンポーネントの設定は対象指定されたサーバに適用されます。アプリケーション アーカイブの一部としてデプロイされている weblogic-diagnostics.xml
記述子ファイルに WLDFResourceBean
が含まれている場合、コンフィグレーション可能なのはインスツルメンテーション コンポーネントのみであり、設定はそのアプリケーションにのみ適用されます。後者の場合、WLDFResourceMBean
は WLDFSystemResourceMBean
の子ではありません。
![]() ![]() ![]() |