この章では、Fusion Middleware Controlで、Oracle Service Busサービスの実行トレースを有効化して使用する方法について説明します。次の項が含まれます:
Service Busでは、サーバーをシャットダウンすることなく、メッセージをトレースできます。これは、開発環境と本番環境の両方に役立つ機能です。管理者、エンジニアおよびシステム・エンジニアは、実行トレース機能を使用して、1つまたは複数のパイプラインまたは分割-結合のメッセージ・フローを診断したり、トラブルシューティングすることができます。
たとえば、あるパイプラインが失敗しているときに、どのステージに問題があるかを調べるには、そのパイプラインに対する実行トレースを有効にします。トレースを有効にすると、ステージ名、パイプラインの名前、ルート・ノード名などの様々な詳細情報が、システムによってメッセージ・フローから抽出され、ログに記録されます。ログ・エントリには、ヘッダーとメッセージ本文を含む完全なメッセージ・コンテキストも含まれています。メッセージ・フローでフォルトが発生した場合は、エラー・コードや理由などの詳細もログに記録されます。実行トレースは、ステージ、パイプライン・ペア、ブランチおよびノードを含む、パイプラインの各コンポーネントの最初と最後に行われます。アクションは個別にはトレースされません。
Service Busでは、サーバーをシャットダウンすることなく、メッセージをトレースできます。これにより、メッセージ・フローのトラブルシューティングと診断が簡単になります。デフォルトでは、実行トレースは無効にされています。実行トレースを有効にすると、パイプライン・コンテキストやメッセージ・コンテキストから選別された各種情報がログに記録されます。これには、ステージ名、パイプラインまたはルート・ノード名および現在のメッセージ・コンテキストが含まれます。
パイプラインまたは分割-結合の実行トレースは、Fusion Middleware Controlでサーバーまたはプロジェクトの「操作」タブか、パイプラインまたは分割-結合の「プロパティ」タブから有効化できます。
ログ・ファイルまたは標準出力(サーバー・コンソール)にトレースを表示するには、Oracle WebLogic Serverのロギングを次の重大度に設定する必要があります。
ログの最低の重大度: 情報
ログ・ファイル: 情報
標準出力: 情報
ログの重大度の設定の詳細は、『Oracle WebLogic Serverログ・ファイルの構成とログ・メッセージのフィルタ処理』のログの重大度の使用に関する項を参照してください。
複数のサービスに対する実行トレースを構成するには:
実行トレース情報は、次に示すサーバー・ディレクトリのログに記録されます。
DOMAIN_HOME/servers/server_name/logs/server_name-diagnostic.log
Oracle WebLogic Server管理コンソールとFusion Middleware Controlでは、ログ・ファイルを直接表示することも、ログのエントリを表示することもできます。
注意:
サーバー・ログの実行トレース・パターンはテスト・コンソールの実行トレースと同じになります。
次の例は、ログ・ファイル内の実行トレース・エントリの例を示しています。
例 - トレース・エントリの例
####<Dec 6, 2013 12:32:35 PM PST> <Info> <oracle.osb.pipeline.kernel.router> <MyServer> <osb_server1> <[ACTIVE] ExecuteThread: '19' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-7438AA7859AFBEC29BF0> <7f5b2958-8673-4439-87ec-f860ccac436b-0005f450> <1386361955302> <OSB-382159> <[OSB Tracing] The following variables are changed: $body = <soapenv:Body xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"> <cus:Customer xmlns:cus="http://oracle.com/Customer"> <cus:first>Mike</cus:first> <cus:last>Morse</cus:last> <cus:company>CompanyA</cus:company> </cus:Customer> </soapenv:Body> $inbound = <con:endpoint name="ProxyService$osb-102-FileHandling$CustomerPoller" xmlns:con="http://www.bea.com/wli/sb/context"> <con:service/> <con:transport> <con:uri>file:///customer/data/input</con:uri> <con:mode>request</con:mode> <con:qualityOfService>exactly-once</con:qualityOfService> <con:request xsi:type="file:FileRequestMetaData" xmlns:file="http://www.bea.com/wli/sb/transports/file" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <tran:headers xsi:type="file:FileRequestHeaders" xmlns:tran="http://www.bea.com/wli/sb/transports"> <file:fileName>/customer/data/input/CustList.txt </file:fileName> </tran:headers> <tran:encoding xmlns:tran="http://www.bea.com/wli/sb/transports">utf-8 </tran:encoding> <file:isFilePath>false</file:isFilePath> </con:request> </con:transport> <con:security> <con:transportClient> <con:username>anonymous></con:username> </con:transportClient> </con:security> </con:endpoint> > ####<Dec 6, 2013 12:32:35 PM PST> <Info> <oracle.osb.pipeline.kernel.router> <MyServer> <osb_server1> <[ACTIVE] ExecuteThread: '19' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <BEA1-7438AA7859AFBEC29BF0> <7f5b2958-8673-4439-87ec-f860ccac436b-0005f450> <1386361955303> <OSB-382186> <[OSB Tracing] Exiting Pipeline>