この章では、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>