Oracle® Fusion Middleware Oracle WebLogic Server診断フレームワークの構成と使用 12cリリース1(12.1.1) B65916-02 |
|
前 |
次 |
この章では、キャプチャ時のサーバー内部の実行時状態について診断スナップショット(またはダンプ)を作成できる、WebLogic診断フレームワーク(WLDF)の診断イメージ・キャプチャ・コンポーネントについて説明します。この情報は、サーバー障害の原因の分析に役立ちます。
WebLogic ServerがOracle JRockitで構成され、JRockitフライト・レコーダが有効になっている場合、診断イメージのキャプチャには、JRockit Mission Controlで表示できるWebLogic Server診断データが存在します。
この章の内容は以下のとおりです。
診断イメージ・キャプチャは、以下のいずれかによって開始されます。
構成された監視通知。第10章「通知の構成」を参照してください。
管理コンソールでユーザーが開始したリクエスト(および、サードパーティの診断ツールから開始されたリクエスト)。詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプの診断イメージの構成とキャプチャに関する項を参照してください。
JMXによるAPIの直接呼出し。例5-1を参照してください。
WLSTコマンド
診断イメージ・キャプチャは、主に障害発生後の解析ツールとして利用するものなので、どのような情報をキャプチャするかについては限られた権限しか与えられていません。診断イメージ・キャプチャで指定可能な構成オプションは次のとおりです。
イメージの宛先
デフォルトの宛先とは別の宛先(指定したキャプチャの場合)
サーバーの障害発生から回復までにイメージがキャプチャされる頻度を設定するロックアウト(タイムアウト)期間
フライト・レコーダ・ファイルでキャプチャされるWebLogic Serverイベント情報のボリュームを決定するWLDF診断ボリューム。
他のWLDFコンポーネントと同様に、診断イメージ・キャプチャは、管理コンソール(Oracle WebLogic Server管理コンソール・オンライン・ヘルプの診断イメージの構成とキャプチャに関する項を参照してください)やWebLogic Scripting Tool (WLST)を使用して、またはプログラムで構成できます。
注意: 多くの場合、サーバー障害の発生時に診断イメージ・キャプチャを生成するのが有効です。そのためには、サーバーの状態がFAILEDに変更されたときにtrueに評価されるように監視ルールを設定し、監視にイメージ通知を関連付けます。 監視ルールは以下のとおりです。
詳細は、「ハーベスタ監視の構成」および「イメージ通知の構成」を参照してください。また、Oracle WebLogic Server管理コンソール・オンライン・ヘルプの監視および通知の構成に関する項を参照してください。 |
WebLogic ServeがOracle JRockitで構成され、JRockitフライト・レコーダを有効にしている場合、JRockitフライト・レコーダ・データも診断イメージのキャプチャで自動的にキャプチャされます。このデータは、診断イメージのキャプチャから抽出され、JRockit Mission Controlで表示できます。JRockitフライト・レコーダを有効にしていない場合、またはWebLogic Serverを別のJVMで構成した場合、フライト・レコーダ・データが診断イメージのキャプチャで抽出されません。
キャプチャしたフライト・レコーダ・データのボリュームはWebLogic Server管理コンソールから構成することができます。これによって、次の設定が指定できます。
Off
-フライト・レコーダ診断イメージでデータがキャプチャされません。
Low
- (デフォルト)「緊急」、「アラート」または「クリティカル」レベルのメッセージが記録された場合、基本情報をキャプチャします。
注意: WLDF診断ボリュームのデフォルト設定は |
Medium
- 「エラー」レベル以上のメッセージが記録された場合、追加情報をキャプチャします。
High
- 「エラー」レベル以上のメッセージが記録された場合、詳細情報をキャプチャします。
キャプチャしたデータのボリュームを設定する方法の詳細は、Oracle WebLogic Server管理コンソール・オンライン・ヘルプのWLDF診断ボリュームの構成に関する項を参照してください。
例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ファイルを編集しないことをお薦めします。 |
診断イメージ・キャプチャでは、以下のようなサーバーの状態の最も一般的な情報がキャプチャされます。
構成
ログ・キャッシュの状態
Java仮想マシン(JVM)
ワーク・マネージャの状態
JNDIの状態
最近収集されたデータ
診断イメージ・キャプチャ・コンポーネントは、様々なサーバー・サブシステムによって生成されたイメージをキャプチャおよび結合して、単一のZIPファイルにします。サーバー状態の最も一般的な情報をキャプチャするだけでなく、このコンポーネントは、たとえばJMS、JDBC、EJB、およびJNDIサブシステムによって生成されたイメージなど、すべてのサーバー・サブシステムからイメージをキャプチャします。
WebLogic ServerがOracle JRockitで構成され、JRockitフライト・レコーダを有効にすると、診断イメージのキャプチャには、JRockit Mission Controlで表示されるJRockitフライト・レコーダのイメージFlightRecording.jfr
が含まれます。JRockit Flight Recorderイメージには、Flight Recorderからの使用可能なすべてのデータが含まれていて、診断ボリュームの設定によっては、WLDFで作成されたデータのボリュームが含まれます。JRockit Flight Recorderを有効にすると、データは常にOracle JRockitによって提供されます。オプションで、WebLogic Serverから提供されるデータが含まれます。Oracle Dynamic Monitoring System (DMS)などのOracleの追加コンポーネントからのデータをFlight Recorderイメージに含めることもできます。
注意:
|
各イメージは、サーバー全体で1つのファイルとしてキャプチャされます。デフォルトの場所はSERVER\logs\diagnostic_images。各イメージ・インスタンスには、次のように一意の名前が付けられます。
diagnostic_image_DOMAIN_SERVER_YYYY_MM_DD_HH_MM_SS.zip
ファイルには、少なくとも以下の情報が収められています。
診断イメージの作成日および作成時間
キャプチャリクエストのソース
診断イメージに含まれる各イメージ・ソースの名前と処理にかかった時間
JVMおよびOS情報(取得可能な場合)
コマンド・ライン引数(使用可能な場合)
WLSのバージョン(パッチおよびビルド番号情報を含む)
「JRockitフライト・レコーダ用の診断イメージ・キャプチャの構成」での説明のように、WLDFがOracle JRockitで構成されている場合、イメージには、JRockitフライト・レコーダ(JFR)ファイル、FlightRecording.jfr
も含まれます。診断イメージ・キャプチャのダウンロード用のWLSTオンライン・コマンドでの説明のように、JFRファイルを抽出し、JRockit Mission Controlで表示できます。詳細は、『Oracle JRockitフライト・レコーダ・ラン・タイム・ガイド』を参照してください。
図5-1はイメージ・ファイルの内容を示します。このZIPファイル内のほとんどのファイルは、テキスト・エディタで開いて内容を確認できます。
WLSTオンラインでは、WLSTが接続されているサーバーから診断イメージのキャプチャをダウンロードするための次のコマンドが提供されます。
getAvailableCapturedImages
- サーバーで構成した診断イメージの宛先ディレクトリで作成された診断イメージのリストを戻します。
saveDiagnosticImageCaptureFile
- 指定した診断イメージのキャプチャ・ファイルをダウンロードします。
saveDiagnosticImageCaptureEntryFile
- 診断イメージのキャプチャ内の特定のエントリをダウンロードします。JRockit Mission Controlに表示する診断データを取得するときにこのコマンドが特に役立ちます。
これらのコマンドと使用方法の例の詳細は、WebLogic Scripting Toolコマンド・リファレンスを参照してください。診断イメージのリストを戻し、その中のJFRファイルを取得するWLSTスクリプトの例は、付録D「WebLogic Scripting Toolの例」を参照してください。