この章の内容は次のとおりです。
Oracle WSM Policy ManagerはすべてのOracle WSMポリシーを管理しており、Oracle WSMポリシー・フレームワークを使用するためには、稼働している必要があります。次の図に示すOracle WSM Policy Managerのページで、ポリシー・マネージャの現在の状態を確認し、レスポンス時間、負荷およびその他のデータを確認できます。
Oracle WSM Policy Managerのページを表示する手順は次のとおりです。
ナビゲーション・ペインで「アプリケーションのデプロイ」を開きます。
「内部アプリケーション」を開きます。
wsm-pmをクリックします。
Oracle WSM Policy Managerのホームページが表示されます。
次のタスクを1つ以上実行します。
ポリシー・マネージャの現在の状態を確認し、デプロイ先のサーバーを識別します。
レスポンス時間と現在の負荷を表示します。
「テスト・ポイント」のURLをクリックし、ポリシー・マネージャを検証します。ポリシー・マネージャの検証リンクをクリックします。使用可能な場合、事前定義済ポリシーのリストが説明とともに表示されます。
注意: ブラウザに次のURLを入力して、テスト・ポイントのURLに移動できます。http:// host : port /wsm-pm/validator |
次に、Oracle WSM Policy Managerが稼働していないことを確認する方法を示します。Oracle Fusion Middlewareの管理者ガイドのFusion Middleware Controlを使用してアプリケーションを起動および停止する手順に関する項に従って、wsm-pmアプリケーションを再起動できます。
ポリシー・マネージャの状態が、図16-1に示すように、Oracle WSM Policy Managerのホームページで停止中として表示されます。
wsm-pm内部アプリケーションのデプロイが、次の図に示すように、Enterprise Managerの「ファーム」ページで停止中として表示されます。
Enterprise ManagerでOracle WSMのポリシー管理ページへのアクセスを試みると、次のようなエラー・ダイアログ・ボックスが表示されます。このエラー情報は、「サンプル・ログの確認」の説明に従って、診断ログ・ファイルにも書き込まれます。
Webサービスを含むOracle Fusion Middlewareコンポーネントは、起動情報と停止情報、エラー、警告メッセージ、HTTPリクエストのアクセス情報など、すべてのタイプのイベントを記録するメッセージを含むログ・ファイルを生成します。各ログ・メッセージには、時間、コンポーネントID、および発生する問題の検出と診断を支援するユーザーなどの特定の情報が含まれます。
ログ・メッセージを確認し、Webサービスなど特定のコンポーネントでの問題を診断できます。ログ・ファイルには2つのカテゴリがあり、Webサービスに関する問題の診断に役立てるために参照できます。
診断ログ: Oracle Fusion Middlewareの特定の機能コンポーネントに関する診断データにアクセスできます。詳細は、「Webサービス診断ログの使用」を参照してください。
事前定義済診断ログ出力のセットがあります。「Webサービスに対する診断ログ出力の構成」の説明に従って、独自の診断ログ出力を構成できます。
メッセージ・ログ: SOAPメッセージ・リクエストの要素を表示できます。ポリシーを使用してメッセージ・ログの作成を制御します。詳細は、「Webサービス・メッセージ・ログの使用」を参照してください。
Oracle Fusion Middlewareのロギングの詳細は、Oracle Fusion Middlewareの管理者ガイドのログ・ファイルと診断データの管理に関する項を参照してください。
次の項では、問題を診断するための、診断およびメッセージ・ログの使用方法を説明します。この項の最後にサンプル・ログのセットがあります。
診断ログを使用して、Oracle Fusion Middlewareの特定の機能コンポーネントに関する診断データにアクセスできます。
次の項では、診断ログ・ファイルの表示方法および管理方法を説明します。
「ログ構成」ページを使用して、WebLogic ServerレベルでWebサービスおよびOracle WSMのコンポーネントのロギング・レベルを設定します。
また、「Webサービス・エンドポイント」ページから、特定のWebサービス・エンドポイントのサーバー・レベルで設定されたログ・レベルをオーバーライドできます。Webサービス・エンドポイント・レベルで設定されたロギング・レベルは、WebLogic Serverレベルで設定されたレベルよりも詳細なレベルである必要があります。詳細でない場合は、WebLogic Serverレベルで設定されたロギング・レベルが使用されます。
次の手順では、WebLogic ServerおよびWebサービス・エンドポイント・レベルで診断ログのログ・レベルを設定する方法を説明します。詳細は、Oracle Fusion Middlewareの管理者ガイドのログ・ファイルに書き込まれた情報レベルの設定に関する項を参照してください。
WebLogic Serverレベルで診断ログのログ・レベルを設定する手順
診断ログを構成するWebLogic Serverに移動します。
ナビゲーション・ペインで「WebLogicドメイン」を開きます。
ドメインを開きます。
リストから必要なサーバーを選択します。
「WebLogicサーバー」ホームページが表示されます。
「WebLogicサーバー」メニューから、「ログ」→「ログ構成」を選択します。
「ログ構成」ページが表示されます。
「ログ・レベル」タブを選択します。
「ルート・ログ出力」を開きます。
「Oracle」を開きます。
次の1つ以上のコンポーネントのロギング・レベルを設定します。
oracle.webservices: Webサービス・コンポーネント。
oracle.wsm: Oracle WSMコンポーネント。
前述のコンポーネントのいずれかを開いてサブコンポーネント・レベルでロギング・レベルを指定することで、ロギング・レベルを微調整できます。デフォルトでは、ロギング・レベルはその親から継承され、WebサービスおよびOracle WSMのコンポーネントとサブコンポーネントに対してNOTIFICATION: 1 (INFO)に設定されます。
Webサービス・エンドポイント・レベルで診断ログのログ・レベルを設定する手順
「Webサービス・エンドポイントの詳細の表示」の説明に従って、「Webサービス・エンドポイント」ページに移動します。
「構成」タブをクリックします。
「ロギング・レベル」フィールドに、「重度」、「警告」、「情報」、「構成」、「密」、「詳細」、「最も詳細」または「NULL」のいずれかを設定します。
注意: setWebServiceConfiguration WLSTコマンドを使用して、Webサービス・エンドポイントでログ・レベルを設定することもできます。itemProperties 引数のloggingLevel プロパティに、SEVERE、WARNING、INFO、CONFIG、FINE、FINER、FINEST、NULLのいずれかを設定します。このコマンドの使用に関する詳細は、「Webサービス・エンドポイントの構成」の「WLSTの使用」を参照してください。 |
「ログ・メッセージ」ページから、ADFおよびWebCenter Webサービス・エンドポイントの診断ログ・ファイルを表示できます。
Webサービス・エンドポイントの診断ログを表示する手順
「Webサービス・エンドポイントの詳細の表示」の説明に従って、「Webサービス・エンドポイント」ページに移動し、「Webサービス・エンドポイント」ページの「クイックリンク」セクション(右上)で「診断ログ」をクリックします。
次の図に示すように、「ログ・メッセージ」ページが表示されます。
メッセージ領域のメッセージをクリックすると、ページの下部に詳細が表示されます。必要に応じて、リスト上のメッセージを選択して「メッセージをファイルにエクスポート」をクリックすることで、メッセージをテキスト、XMLまたはCSVファイルにエクスポートできます。
次のコントロールを使用して、表示されるメッセージ・コンテンツを制御できます。
検索: 検索条件を変更します。詳細は、「診断ログのフィルタ処理」を参照してください。
「表示」メニュー: 表で表示する列を選択します。特定の列をクリックすると、コンテンツが昇順または降順にソートされます。
「表示」メニュー: メッセージをタイプまたはID別にグループ化したり、年代順にメッセージを表示します。
関連メッセージの表示: リストで選択したメッセージに関連するメッセージを表示します。
広範囲のターゲット・スコープ: 表示されるメッセージのスコープを拡大します。ドメイン、WebLogic Serverまたはファームのすべてのメッセージを含めるように、スコープを拡大できます。
「リフレッシュ」メニュー: 自動または手動リフレッシュ率を指定します。
生成されたログ・ファイルのコンテンツを表示する手順は次のとおりです。
メッセージに関連付けられたログ・ファイルのアイコンをクリックし、そのログ・ファイルのコンテンツを表示します。
「ターゲット・ログ・ファイル」をクリックし、「ログ・ファイル」ページを表示して、生成されたログ・ファイルすべてのコンテンツを表示またはダウンロードします。
詳細は、Oracle Fusion Middlewareの管理者ガイドのログ・ファイルの検索と表示に関する項を参照してください。
デフォルトでは、「ログ・メッセージ」ページには、過去1時間に記録された診断メッセージのサマリーが表示されます。
診断ログをフィルタ処理する手順
次のフィールドを使用して検索条件を更新して、表示されるメッセージをフィルタ処理します。
日付範囲: 日付範囲を次のいずれかに設定します。
最新: 期間を定義する時間を設定します。
時間間隔: 間隔を定義する開始日と終了日を設定します。
メッセージ・タイプ: 表示するメッセージ・タイプを選択します。
フィールドの追加: メッセージID、コンポーネントなどの他のメッセージ・フィールドを検索条件に追加します。
フィールドを設定したら、必要に応じて「検索」をクリックします。
メッセージ領域は、フィルタ処理された結果で更新されます。
詳細は、Oracle Fusion Middlewareの管理者ガイドのログ・ファイルの検索と表示に関する項を参照してください。
メッセージ・ログを使用して、ADFおよびWebCenterのWebサービスとクライアントに対する、SOAPメッセージ・リクエストとレスポンスのコンテンツにアクセスできます。デフォルトでは、メッセージ・ログは診断メッセージとは別のログ・ファイルに格納されます。
次の項では、メッセージ・ログ・ファイルの表示方法および管理方法を説明します。
ロギング・アサーションを含むポリシーを添付して、Webサービスまたはクライアントのメッセージ・ログを構成します。
ある事前定義済ロギング・アサーション・テンプレートである、oracle/log_templateがあります。このテンプレートは、WebサービスのリクエストとレスポンスのSOAPメッセージ全体をログ出力するように構成されています。デフォルトでは、すべての事前定義済Webサービス・セキュリティ・ポリシーで、最初のセキュリティ・アサーションが実行される前後にSOAPメッセージ全体を取得するために、このロギング・アサーションが使用されます。デフォルトでは、ロギング・アサーションは実行されません。SOAPメッセージをメッセージ・ログに記録するためには、ロギング・アサーションを有効にする必要があります。ロギング・アサーションは、デバッグおよび監査の目的のみで有効にすることをお薦めします。事前定義済のロギング・ポリシーの詳細は、「oracle/log_policy」を参照してください。
独自のロギング・ポリシーまたはアサーション・テンプレートを作成して、Webサービスのリクエストとレスポンスに対するログを出力するSOAPメッセージの要素をより詳細にできます。たとえば、リクエスト・メッセージのSOAP本文のみを表示できます。新規ポリシーを作成するには、「Webサービス・ポリシーの作成」の手順に従ってください。oracle/log_templateアサーション・テンプレートのコピーを作成して、新規ポリシーで使用できるように構成できます。新規アサーション・テンプレートの作成の詳細は、「アサーション・テンプレートの作成」を参照してください。
「ログ・メッセージ」ページから、ADFおよびWebCenter Webサービス・エンドポイントのメッセージ・ログ・ファイルを表示できます。
Webサービス・エンドポイントのメッセージ・ログを表示する手順
「Webサービス・エンドポイントの詳細の表示」の説明に従って、「Webサービス・エンドポイント」ページに移動し、「Webサービス・エンドポイント」ページの「クイックリンク」セクション(右上)で「メッセージ・ログ」をクリックします。
図16-4のような「ログ・メッセージ」ページが表示されます。「ログ・メッセージ」ページのコンテンツの詳細は、「診断ログの表示」を参照してください。
デフォルトでは、「ログ・メッセージ」ページには、過去1時間に記録されたSOAPメッセージのサマリーが表示されます。検索条件を更新することで、表示されるメッセージをフィルタ処理できます。プロセスは診断ログのプロセスと同じです。詳細は、「診断ログのフィルタ処理」を参照してください。
デフォルトでは、「コンポーネント」および「モジュール」メッセージ・フィールドは、メッセージ・ログの検索条件の一部に含まれます。「コンポーネント」フィールドは、WebLogic Server名に設定されます。「モジュール」フィールドは、メッセージ・ロギング・コンポーネント名のoracle.wsm.msg.loggingに設定されます。
次の項に、ログ・エントリを使用して特定の問題を診断する方法を実演する、サンプル・ログからの抜粋を示します。
次のサンプル・ログの抜粋は、Oracle WSM Policy Managerが停止していることを示します。この問題を解決するには、Oracle Fusion Middlewareの管理者ガイドのFusion Middleware Controlを使用してアプリケーションを起動および停止する手順に関する項の説明に従って、wsm-pmアプリケーションを再起動します。
2009-02-16 16:21:28,029 [[ACTIVE] ExecuteThread: '4' for queue: 'weblogic.kernel.Default (self-tuning)'] ERROR policymgr.PolicyManagerModelBean logp.251 - Service lookup failed with URL:t3://stadk13.us.oracle.com:7001/wsm-pm oracle.wsm.policymanager.PolicyManagerException: WSM-02118 : The query service cannot be created. ...
次のサンプル・ログの抜粋は、メッセージ保護されているOracle WSMセキュリティ・ポリシーが適用されていて、キーストアが構成されていないことを示します。このセキュリティ・フォルトを解決するには、「メッセージ保護に関するキーストアの設定」の説明に従って、キーストアを構成します。
Feb 16, 2009 5:29:56 PM oracle.wsm.common.logging.WsmMessageLogger logSevere SEVERE: The specified Keystore file /scratch/sbollapa/stage131/user_projects/domains/sai131_domain/config/fmwconfig/default-keystore.jks cannot be found; it either does not exist or its path is not included in the application classpath. Feb 16, 2009 5:29:56 PM oracle.wsm.common.logging.WsmMessageLogger logSevere SEVERE: Keystore is not properly configured in jps config. Feb 16, 2009 5:29:56 PM oracle.wsm.common.logging.WsmLogUtil log SEVERE: failure in OWSM Agent processRequest, category=security, function=agent.function.client, application=default, composite=pe3test3, modelObj=Service1, + policy=null, policyVersion=null, assertionName=null oracle.wsm.common.sdk.WSMException: WSM-00101 : The specified Keystore file /scratch/sbollapa/stage131/user_projects/domains/sai131_domain/config/fmwconfig/default-keystore.jks cannot be found; it either does not exist or its path is not included in the application classpath. ...
次のサンプル・ログの抜粋は、メッセージ保護されているOracle WSMセキュリティ・ポリシーが適用されていて、キーストアで使用できないセキュリティ証明書が必要なことを示します。このセキュリティ・フォルトを解決するには、「メッセージ保護に関するキーストアの設定」の説明に従って、証明書を持つキーストアを構成します。
[2009-04-15T04:07:02.821-07:00] [jrfServer] [ERROR] [WSM-000062] [oracle.wsm.resources.security] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: <anonymous>] [ecid: 0000I2dTFG7DScT6uBe9UH19tRyv000000,0:1] [WEBSERVICE_PORT.name: NonCAAsCAMessageProtectionPolicyPort] [APP: jaxwsservices] [J2EE_MODULE.name: NonCAAsCAMessageProtectionPolicy] [WEBSERVICE.name: NonCAAsCAMessageProtectionPolicyService] [J2EE_APP.name: jaxwsservices] [arg: oracle.wsm.security.SecurityException: WSM-00062 : The path to the certificate used for the signature is invalid.] [2009-04-15T04:07:02.810-07:00] [jrfServer] [NOTIFICATION] [] [oracle.wsm.security.policy.scenario.processor.Wss11X509TokenProcessor] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: <anonymous>] [ecid: 0000I2dTFG7DScT6uBe9UH19tRyv000000,0:1] [WEBSERVICE_PORT.name: NonCAAsCAMessageProtectionPolicyPort] [APP: jaxwsservices] [J2EE_MODULE.name: NonCAAsCAMessageProtectionPolicy] [WEBSERVICE.name: NonCAAsCAMessageProtectionPolicyService] [J2EE_APP.name: jaxwsservices] Certificate path validation failed for signing certificate [2009-04-15T04:07:02.821-07:00] [jrfServer] [ERROR] [WSM-00006] [oracle.wsm.resources.security] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: <anonymous>] [ecid: 0000I2dTFG7DScT6uBe9UH19tRyv000000,0:1] [WEBSERVICE_PORT.name: NonCAAsCAMessageProtectionPolicyPort] [APP: jaxwsservices] [J2EE_MODULE.name: NonCAAsCAMessageProtectionPolicy] [WEBSERVICE.name: NonCAAsCAMessageProtectionPolicyService] [J2EE_APP.name: jaxwsservices] [arg: oracle.wsm.security.SecurityException: WSM-00062 : The path to the certificate used for the signature is invalid.] Error in receiving the request: oracle.wsm.security.SecurityException: WSM-00062 : The path to the certificate used for the signature is invalid.
診断データをより詳細に編成するには、Webサービスの新規診断ログ出力を構成します。SOA、ADFおよびWeb Centerサービスの診断ログ出力を構成できます。
デフォルトでは、次のログ出力が定義されています。
odl-handler: サーバーのJava EEコンポーネントの一般的な診断データをログ出力します。
owsm-message-handler: SOAPメッセージをOracle WSMロギング・ポリシーとしてそれぞれログ出力します。
owsm-odl-handler: Oracle WSMコンポーネントの診断データをログ出力します。
Webサービスの診断ログ出力を構成する手順
診断ログ出力を構成するWebLogic Serverに移動します。
ナビゲーション・ペインで「WebLogicドメイン」を開きます。
ドメインを開きます。
リストから必要なサーバーを選択します。
「WebLogicサーバー」ホームページが表示されます。
「WebLogicサーバー」メニューから、「ログ」→「ログ構成」を選択します。
「ログ構成」ページが表示されます。
「ログ・ファイル」タブを選択します。
診断ログ出力の現在のリストが表示されます。
「作成」をクリックします。
注意: 既存の診断ログ出力の構成をコピーするには、ログ出力を選択して「類似作成」をクリックします。 |
「ログ・ファイルの作成」ページが表示されます。
診断ログ出力のデータを次のように入力します。
表16-1 「ログ・ファイルの作成」ページのフィールド
フィールド | 説明 |
---|---|
ハンドラ・クラス |
ハンドラ・クラス。この値はoracle.core.ojdl.looging.ODLHandlerFactoryの設定のままにします。 |
ログ・ファイル |
ログ・ファイルの名前。 |
ログ・パス |
ログ・ファイルのパス。 |
ログ・ファイル形式 |
ログ・ファイルの形式。有効な値はテキストまたはXMLです。 |
ログ・レベル |
診断ログ出力のデフォルトのログ・レベル。リストからログ・レベルを選択します。有効な値にはINCIDENT_ERRORが含まれます。
|
デフォルト属性の使用 |
診断ログ出力にデフォルト属性を使用するかどうかを指定するフラグ。 |
サプリメンタル属性 |
サプリメンタル属性は必須です。 |
関連付けるログ出力 |
ログ出力に関連付けるコンポーネント。 |
ローテーション・ポリシー |
期間によるファイル・サイズに基づいて、ログ・ファイルをローテーションするかどうか指定します。詳細は、Oracle Fusion Middlewareの管理者ガイドのログ・ファイルのローテーションの構成に関する項を参照してください。 |
「OK」をクリックして診断ログ出力を作成します。