H Oracle Fusion Middlewareのトラブルシューティング

Oracle Fusion Middlewareを使用しているときに問題が発生し、そのトラブルシューティング方法についての情報が必要な場合があります。

Oracle Fusion Middlewareの障害の診断

Oracle Fusion Middlewareの障害の診断を容易にするために、ログ・ファイルの他、重大エラーの場合は診断フレームワークを使用できます。

Oracle Fusion Middlewareコンポーネントは、起動および停止情報、エラー、警告メッセージ、HTTPリクエスト時のアクセス情報や追加情報を含め、すべての種類のイベントを記録するメッセージが格納されたログ・ファイルを生成します。このログ・ファイルを、障害の特定と診断に使用できます。ログ・ファイルの使用と読取りの詳細は、「ログ・ファイルと診断データの管理」を参照してください。

Oracle Fusion Middlewareには、問題の検出、診断および解決を支援する診断フレームワークが組み込まれています。特に対象としている障害は、コードのbug、メタデータの破損、顧客データの破損に起因する障害、スレッドのデッドロック、一貫性のない状態などのクリティカル・エラーです。

クリティカル・エラーが発生すると、そのエラーにはインシデント番号が割り当てられ、エラーの診断ログ(ログ・ファイルなど)が即座に取得され、その番号でタグ付けされます。データは、自動診断リポジトリ(ADR)に格納されます。ADRでは、後でデータをインシデント番号によって取得し、分析することができます。診断フレームワークの詳細は、「問題の診断」を参照してください。

Fusion Middleware Controlの「サポート・ワークベンチ」ページを使用して、問題の集計リストを表示できます。

  1. 「WebLogicドメイン」メニューから、「診断」を選択し、次に、「サポート・ワークベンチ」を選択します。

  2. サマリー・ページは、このWebLogicドメインのメンバーであるすべてのWebLogicサーバーでのサポート・ワークベンチ診断情報を集計し、各サーバーの問題数を示します。「問題」列の数をクリックし、特定のサーバーの問題についての情報を表示します。

一般的な障害のトラブルシューティングと解決策

Oracle Fusion Middlewareには一般的な障害と解決策がいくつかあります。

この項では、一般的な障害と解決策について説明します。次の項目が含まれます。

データ・ソース接続の不足

データベースのパフォーマンスが低下している場合や、Oracle WebLogic Serverのログ・ファイルに次のメッセージが出力された場合は、データ・ソース接続がリークしている可能性があります。

No resources currently available in pool datasource name
 
Any product functionality that depend on the datasource will not function as it can't connect database to get required data.

このメッセージが出力された場合は、管理コンソールのデータ・ソース・モニタリング・ページから接続使用量をモニターします。

  1. 「ドメイン構造」で、「サービス」「データ・ソース」を選択します。
  2. モニターするデータ・ソースをクリックします。
  3. 「モニタリング」タブ→「統計」タブを選択します。
  4. 表に「現在アクティブな接続の数」が表示されない場合は、「この表のカスタマイズ」をクリックします。
  5. 「列の表示」で、「現在アクティブな接続の数」を選択して、それを「使用可能」ボックスから「選択済み」ボックスに移動します。「適用」をクリックします。
  6. 表内の「現在アクティブな接続の数」列の数に注目します。

現在アクティブなデータ・ソースの数が増え続け、減少しないようであれば、このデータ・ソースで接続がリークしています。Oracleサポートに連絡してください。

異なるバージョンのSpringの使用

JRFを使用して管理対象サーバーを構成すると、Spring 2.0.6がインストールされ、Oracle WebLogic Serverのシステム・クラスパスに配置されます。JRF環境で実行されているカスタム・アプリケーションが、異なるバージョンのSpringを必要とする場合、フィルタリングClassLoaderメカニズムを使用して、Springのバージョンを指定する必要があります。

Oracle WebLogic Serverには、デプロイメント記述子を構成して特定のパッケージが常に(システム・クラス・ローダーによってではなく)アプリケーションからロードされることを明示的に指定できるように、FilteringClassLoaderメカニズムが用意されています。この機能により、SpringやAntなど、アプリケーションの代替のバージョンを使用できます。

FilteringClassLoaderメカニズムの使用方法の詳細は、『Oracle WebLogic Serverアプリケーションの開発』FilteringClassLoaderの使用方法に関する項を参照してください。

管理対象サーバー起動時のClassNotFoundエラー

管理対象サーバーがノード・マネージャによって起動される場合(サーバーがOracle WebLogic Server管理コンソールまたはFusion Middleware Controlによって起動される場合)、管理対象サーバーを起動するときに起動スクリプトを使用するようにノード・マネージャが構成されていないと、ClassNotFoundエラーが発生する場合があります。この障害の解決方法の詳細は、「管理対象サーバーを起動するためのノード・マネージャの構成」を参照してください。

SSLのトラブルシューティング

この項では、SSL構成を使用する場合の一般的な問題および解決策について説明します。次の項目が含まれます。

コンポーネントですべてのサポートされている暗号が有効になる場合がある

暗号が明示的に構成されていない場合、12c (12.2.1.1)の一部のコンポーネントでDH_Anon (Diffie-Hellman匿名)暗号を含む、サポートされているすべてのSSL暗号が有効になることに注意してください。

この時点では、次のように暗号を設定することがわかっているコンポーネントはOracle HTTP Serverのみです。

DH_Anonが希望でない場合、希望する暗号でコンポーネントを構成します。

特定のブラウザで必要なSSL証明書チェーン

Oracle HTTP Server用にSSLを構成する場合、証明書チェーン全体(ルートCA、中間CAなど)のインポートが必要な場合があります。

Internet Explorerなどの特定のブラウザでは、SSLハンドシェイクが機能するように証明書チェーン全体をブラウザにインポートする必要があります。証明書が中間CAによって発行されている場合、証明書チェーン全体がブラウザで利用できることを確認する必要があり、そうしないとハンドシェイクが失敗します。チェーンの中間証明書の期限が切れている場合、チェーンのすべての証明書(OHS Serverの証明書など)とともに更新する必要があります。

JDK8の証明書ではkeyUsage拡張機能が必要

JDK6では、keyCertSignビットを有効化しなくても、自己署名付き証明書にkeyUsage拡張機能を含めることができます。これは、JDK8では拒否されます。

JDK8では、自己署名付きCA証明書を使用する場合は、keyUsage拡張機能のkeyCertSignビットを設定する必要があります。そうしないと、接続が次のような例外により失敗します。

weblogic.common.resourcepool.ResourceDeadException:
0:weblogic.common.ResourceException: Could not create pool connection. The
DBMS driver exception was: IO Error:
sun.security.validator.ValidatorException: PKIX path validation failed:
java.security.cert.CertPathValidatorException: Path does not chain with any
of the trust anchors

キー使用目的の拡張機能は、証明書に設定されているキーの使用目的(暗号用、署名用、証明書署名用など)を定義します。

準拠しているCAでは、公開キー(その他の公開キー証明書またはCRLでのデジタル署名の検証に使用される)が設定されている証明書にこの拡張機能を含める必要があります。

公開キー証明書の署名の検証にサブジェクトの公開キーが使用される場合は、keyCertSignビットがアサートされます。つまり、JDK8で自己署名付きCA証明書を生成するときには、keyUsagekeyCertSignビットがオンであることを確認する必要があります。

これは、たとえば次のような方法で達成できます。

  1. ku:c=keyCertSignオプションを指定して自己署名付きJKSキーストアを作成し、

  2. キーストアからの証明書をルート・ウォレット(SSL DB接続で使用される)に移行します

    orapki wallet jks_to_pkcs12 -wallet ./ -pwd password -keystore ./ewallet.jks-jkspwd password

FIPS構成のトラブルシューティング

このトピックの詳細は、「FIPS 140問題のトラブルシューティング」を参照してください。

その他の解決策

My Oracle Supportでさらに解決策を探すことも、Remote Diagnostic Agentを使用することもできます。

この他の解決策は、My Oracle Support (http://support.oracle.com)で公開されています。発生した障害の解決策が見つからない場合は、サービス・リクエストを発行してください。

次の参照先で説明するように、Remote Diagnostic Agentを使用することもできます:

Remote Diagnostic Agentの使用

Remote Diagnostic Agent (RDA)は、ご使用の環境の全体像を提供するコマンド行診断ツールです。また、RDAでは、構成やセキュリティなど、様々な項目に関する推奨事項が提供されています。これは、ユーザーとOracleサポートの問題解決を支援します。

リモート診断エージェントは、1つのスクリプト化された実行を通じて、次のような頻繁に使用される診断データを収集することによる追加データのためのリターン・トリップを削減するように設計されています。

  • オペレーティング・システムと環境

    • メモリー、CPUおよびディスク・データ

    • OSパッチおよびパッケージ

    • 環境設定

    • ネットワークの構成と統計

  • 対象のOracle製品

    • インストール・バージョンおよびパッチ情報

    • すべての構成およびログ・ファイル

    • メトリック(ステータス情報、DMSダンプ、MBean値など)

RDAはインストール前および後のヘルス・チェックも提供します。インストール前チェックを使用して、ホスト環境がFusion Middlewareシステム要件を満たしているかどうかを確認します。インストール後チェックを実行して、変更しないと問題を引き起こす可能性のある構成設定を明らかにします。問題が発生するまで待っていてはいけません。すぐに、ヘルス・チェックを利用してください。

このツールに必要なディスク領域、CPUおよびメモリー使用率に関するフットプリントは小さいです。RDAはできるかぎり目立たないように設計されており、受動的にデータを収集し、実行に際してソフトウェアや環境の状態を変更しません。ホスト名やIPアドレスのような機密である可能性のある情報をコレクションから削除するために、セキュリティ・フィルタを有効にできます。

RDAの詳細は、次を参照してください。

  • My Oracle SupportのドキュメントID 1498376.1

  • readmeファイル。これは、次の場所にあります。

    (UNIX) ORACLE_HOME/oracle_common/rda/README_Unix.txt
    (Windows) ORACLE_HOME\oracle_common\rda\README_Windows.txt