ヘッダーをスキップ
Oracle® Fusion Middleware Oracle WebLogic Server診断フレームワークの構成と使い方
11g リリース1 (10.3.3)
B60994-01
  ドキュメント・ライブラリへ移動
ライブラリ
製品リストヘ移動
製品
目次へ移動
目次

前
 
次
 

5 診断イメージの構成とキャプチャ

WebLogic診断フレームワーク(WLDF)の診断イメージ・キャプチャ・コンポーネントを使用すると、キャプチャ時のサーバー内部の実行時状態について診断スナップショット(またはダンプ)を作成できます。この情報は、サーバー障害の原因の分析に役立ちます。

WebLogic ServerがOracle JRockitで構成され、JRockit Flight Recorderが有効になっている場合、診断イメージのキャプチャには、JRockit Mission Controlで表示できるWebLogic Server診断データが存在します。

次の項では、診断イメージ・キャプチャ・コンポーネントについて説明します。

イメージ・キャプチャの開始方法

診断イメージ・キャプチャは、以下のいずれかによって開始されます。

診断イメージ・キャプチャの構成

診断イメージ・キャプチャは、主に障害発生後の解析ツールとして利用するものなので、どのような情報をキャプチャするかについては限られた権限しか与えられていません。診断イメージ・キャプチャで指定可能な構成オプションは次のとおりです。

他のWLDFコンポーネントと同様に、診断イメージ・キャプチャは、管理コンソール(Oracle WebLogic Server管理コンソール・オンライン・ヘルプ診断イメージの構成とキャプチャを参照してください)やWebLogic Scripting Tool (WLST)を使用して、またはプログラムで構成できます。


注意:

多くの場合、サーバー障害の発生時に診断イメージ・キャプチャを生成するのが有効です。そのためには、サーバーの状態がFAILEDに変更されたときにtrueに評価されるように監視ルールを設定し、監視にイメージ通知を関連付けます。

監視ルールは以下のとおりです。

(${[weblogic.management.runtime.ServerRuntimeMBean]//State} = 'FAILED')

詳細は、ハーベスタ監視の構成およびイメージ通知の構成を参照してください。また、詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプ監視および通知の構成に関する項を参照してください。


WLDF診断ボリュームの構成

WebLogic ServeがOracle JRockitで構成され、JRockit Flight Recorderを有効にしている場合、JRockit Flight Recorderデータも診断イメージのキャプチャで自動的にキャプチャされます。このデータは、診断イメージのキャプチャから抽出され、JRockit Mission Controlで表示できます。JRockit Flight Recorderを有効にしていない場合、またはWebLogic Serverを別のJVMで構成した場合、Flight Recorderデータが診断イメージのキャプチャで抽出されません。

キャプチャしたFlight RecorderデータのボリュームはWebLogic Server管理コンソールから構成することができます。これによって、次の設定が指定できます。

  • Off - Flight Recorder診断イメージでデータがキャプチャされません。


    注意:

    WLDF診断ボリュームのデフォルトの設定はOffです。ただし、今後のWebLogic Serverのリリースで変更される場合があります。デフォルト設定の変更方法の詳細は、「Oracle WebLogic Serverの新機能」を参照してください。

  • Low - 「緊急」、「アラート」または「クリティカル」レベルのメッセージが記録された場合、基本情報をキャプチャします。

  • Medium - 「エラー」レベル以上のメッセージが記録された場合、追加情報をキャプチャします。

  • High - 「エラー」レベル以上のメッセージが記録された場合、詳細情報をキャプチャします。

キャプチャしたデータのボリュームを設定する方法の詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのWLDF診断ボリュームの構成に関する項を参照してください。

イメージ・キャプチャ生成用のWLSTコマンド

例 5-1では、イメージ・キャプチャを生成するためのWLSTコマンドの例を示します。

例5-1 診断イメージを生成するためのWLSTコマンドのサンプル

url='t3://localhost:7001'
username='system'
password='gumby1234'
server='myserver'
timeout=120
connect(username, password, url)
serverRuntime()
cd('WLDFRuntime/WLDFRuntime/WLDFImageRuntime/Image')
argTypes = jarray.array(['java.lang.Integer'],java.lang.String)
argValues = jarray.array([timeout],java.lang.Object)
invoke('captureImage', argValues, argTypes)

サーバーの構成における診断イメージ・キャプチャの永続化

診断イメージ・キャプチャの構成はドメインのconfig.xmlファイルで永続化されます(サーバーの<server>要素の<server-diagnostic-config>要素内)。例 5-2を参照してください。

例5-2 診断イメージ・キャプチャの構成のサンプル

<domain>
  <!-- Other domain configuration elements -->
  <server>
    <name>myserver</name>
    <server-diagnostic-config>
      <image-dir>logs\diagnostic_images</image-dir>
      <image-timeout>2</image-timeout>
    </server-diagnostic-config>
    <!-- Other configuration details for this server -->
  </server>
  <!-- Other server configurations in this domain-->
</domain>

注意:

Oracleは、直接config.xmlファイルを編集しないことをお勧めします。

キャプチャされたイメージ・ファイルの内容

診断イメージ・キャプチャでは、以下のようなサーバーの状態の最も一般的な情報がキャプチャされます。

診断イメージ・キャプチャ・コンポーネントは、様々なサーバー・サブシステムによって生成されたイメージをキャプチャおよび結合して、単一のZIPファイルにします。サーバー状態の最も一般的な情報をキャプチャするだけでなく、このコンポーネントは、たとえばJMS、JDBC、EJB、およびJNDIサブシステムによって生成されたイメージなど、すべてのサーバー・サブシステムからイメージをキャプチャします。

WebLogic ServerがOracle JRockitで構成され、JRockit Flight Recorderを有効にすると、診断イメージのキャプチャには、JRockit Mission Controlで表示されるJRockit Flight RecorderイメージのJRockitFlightRecorder.jfrが含まれます。JRockit Flight Recorderイメージには、Flight Recorderからの使用可能なすべてのデータが含まれていて、診断ボリュームの設定によっては、WLDFで作成されたデータのボリュームが含まれます。JRockit Flight Recorderを有効にすると、データは常にOracle JRockitによって提供されます。オプションで、WebLogic Serverから提供されるデータが含まれます。Oracle Dynamic Monitoring System (DMS)などのOracleの追加コンポーネントからのデータをFlight Recorderイメージに含めることもできます。


注意:

  1. 診断イメージは、重大な障害を診断するためにサーバー・レベルの状態ダンプとして利用できる、サイズの大きなアーティファクトです。診断イメージは、構造化されたフォーマットで重要なデータを大量にキャプチャできるので、サポート部門のスタッフによる問題の解析に役立てることができます。

  2. DMSなどのWebLogic Server環境の非WebLogicイベント・プロデューサがデータを記録するようにJRockit Flight Recorderを構成した場合、WLDF診断ボリュームの設定がOffの場合でも、WLDF診断イメージ・キャプチャには記録したデータを含むFlight Recorderイメージ・ファイルが含まれます。


診断イメージ・キャプチャ・ファイルに含まれるデータ

各イメージは、サーバー全体で1つのファイルとしてキャプチャされます。デフォルトの場所はSERVER\logs\diagnostic_images。各イメージ・インスタンスには、次のように一意の名前が付けられます。

    diagnostic_image_DOMAIN_SERVER_YYYY_MM_DD_HH_MM_SS.zip

ファイルには、少なくとも以下の情報が収められています。

  • 診断イメージの作成日および作成時間

  • キャプチャリクエストのソース

  • 診断イメージに含まれる各イメージ・ソースの名前と処理にかかった時間

  • JVMおよびOS情報(取得可能な場合)

  • コマンド・ライン引数(使用可能な場合)

  • WLSのバージョン(パッチおよびビルド番号情報を含む)

JRockit Flight Recorder用の診断イメージ・キャプチャの構成での説明のように、WLDFがOracle JRockitで構成されている場合、イメージには、JRockit Flight Recorder (JFR)ファイル、JRockitFlightRecorder.jfrも含まれます。診断イメージ・キャプチャのダウンロード用のWLSTオンライン・コマンドでの説明のように、JFRファイルを抽出し、JRockit Mission Controlで表示できます。詳細は、『Oracle JRockit Flight Recorderラン・タイム・ガイド』を参照してください。

図5-1はイメージ・ファイルの内容を示します。このZIPファイル内のほとんどのファイルは、テキスト・エディタで開いて内容を確認できます。

図5-1イメージ・ファイル

図5-1の説明が続きます
「図5-1 イメージ・ファイル」の説明

診断イメージ・キャプチャのダウンロード用のWLSTオンライン・コマンド

WLSTオンラインでは、WLSTが接続されているサーバーから診断イメージのキャプチャをダウンロードするための次のコマンドが提供されます。

  • getAvailableCapturedImages - サーバーで構成した診断イメージの宛先ディレクトリで作成された診断イメージのリストを戻します。

  • saveDiagnosticImageCaptureFile - 指定した診断イメージのキャプチャ・ファイルをダウンロードします。

  • saveDiagnosticImageCaptureEntryFile - 診断イメージのキャプチャ内の特定のエントリをダウンロードします。JRockit Mission Controlに表示する診断データを取得するときにこのコマンドが特に役立ちます。

これらのコマンドと使用方法の例の詳細は、「WebLogic Scripting Toolのコマンド・リファレンス」を参照してください。診断イメージのリストを戻し、その中のJFRファイルを取得するWLSTスクリプトの例は、付録D「WebLogic Scripting Toolの例」を参照してください。