ヘッダーをスキップ
Oracle Enterprise Service Bus 開発者ガイド
10g (10.1.3.4.0)
B50869-02
  目次
目次
索引
索引

戻る
戻る
 
次へ
次へ
 

10 Enterprise Service Bus内でのメッセージ・インスタンスのトラッキング

この章では、Oracle ESB Controlの「インスタンス」ビューを使用して、Enterprise Service Bus内でメッセージ・インスタンスをトラッキングする方法について説明します。

項目は次のとおりです。

Oracle ESB Controlの「インスタンス」ビューの概要

「インスタンス」ビューを使用すると、ESBシステム内のインスタンス処理に関する詳細を表示できます。このビューでは、次のいずれかのプロパティに基づいて、メッセージ・インスタンスをフィルタリングできます。

「インスタンス」パネル(図10-1の左下部に表示)からメッセージ・インスタンスを選択すると、Enterprise Service Busを経由するメッセージ・インスタンスのパスが「トラッキング」タブのダイアグラムに表示されます。このダイアグラム内で、メッセージ・インスタンスが正常に処理されたサービスは緑色で、エラーが発生したサービスは赤色で、メッセージの処理時に呼び出されなかった(または、呼び出されていなかった)サービスは灰色で表されます。トランザクションがロールバックされた場合、そのサービスは黄色で表されます。「トラッキング」タブのダイアグラムでサービスを選択して、「詳細」サブタブで処理の詳細を表示できます。図10-1の右下部を参照してください。

図10-1は、CRMアダプタ・サービス(CRMOut)が正常に呼び出されたこと、および、フィルタ式によってデータベース・アダプタ・サービスへの配信からメッセージが除外されたためにデータベース・アダプタ・サービス(CustDBOut)が呼び出されなかったことを示しています。

図10-1 「インスタンス」ビュー – 「トラッキング」タブと「詳細」サブタブ

図10-1の説明は次にあります。
「図10-1 「インスタンス」ビュー – 「トラッキング」タブと「詳細」サブタブ」の説明

「インスタンス」ビューの要素およびコントロールの理解

図10-1に示すように、Oracle ESB Controlの「インスタンス」ビューは、次の4つの主要なリージョンに分割されています。

メッセージ・インスタンスの管理

メッセージ・インスタンスの詳細および統計を表示できます。また、メッセージ・インスタンスは検索したり、削除できます。さらに、メッセージ・インスタンス・トラッキングを有効および無効にすることもできます

ここでは、次の項目について説明します。

インスタンス・トラッキングの有効化と無効化

インスタンス・トラッキングはデフォルトで有効になっています。ただし、大量に処理する場合はスループットを最大限にするために、インスタンス・トラッキングを無効にしておくことをお薦めします。

メッセージのトラッキングを有効または無効にする手順は、次のとおりです。

  1. 「インスタンス」ビューが表示されていない場合は、Oracle ESB Controlの上部の「インスタンス」ボタンをクリックします。

  2. 「管理」パネルを開きます(まだ開いていない場合)。

  3. 「インスタンスのトラッキングの有効化」を選択するか、選択を解除して、インスタンス・トラッキングをそれぞれ有効または無効にします。

  4. 「管理」パネルのタイトル・バーにある適用アイコン(緑色の矢印)をクリックします。

インスタンスの詳細の表示

「詳細」タブ(Oracle ESB Controlの「インスタンス」ビューにある図式の下)には、メッセージ・インスタンスに関する次の詳細が表示されます。

  • 「インスタンス」パネルまたは図式のサービスを選択した場合

    • ステータス

      このフィールドでは、メッセージの成功または失敗のステータスが指定されます。メッセージは正常に処理されたが、他のエラーのためにトランザクションがロールバックされた場合は、その情報が「ステータス」フィールドに表示されます。ステータスの例には、「成功しましたが、CRMOUT:Writeのエラーが原因でトランザクションがロールバックされました。」などがあります。

    • アクティビティ時間

      このフィールドでは、メッセージが、「インスタンス」パネルで選択したサービスによって処理された時間が指定されます。

    • トラッキング・データ

  • 図式で、2つのサービス間の接続をクリックした場合

    • ソース

      メッセージ・インスタンスの送信元のサービスと操作が、source_service::operation形式で指定されます。

    • ターゲット

      メッセージ・インスタンスの送信先のサービスと操作が、target_service::operation形式で指定されます。

    • ステータス

      ターゲット・サービスのステータスが指定されます。たとえば、ステータスは、次のいずれかになる場合があります。

      • メッセージを処理しませんでした。

      • メッセージ・フローの一部として実行されませんでした。

      • ターゲットの呼出し中にエラーが発生したため、成功しませんでした。

インスタンス統計の表示

「オーバーレイ」タブ(Oracle ESB Controlの「インスタンス」ビューにある図式の下)を使用すると、統計をオーバーレイとして図式に表示できます。

「処理時間(ミリ秒)。」を有効にしている場合、図式には、図10-7に示すように、Enterprise Service Bus内の各サービスがメッセージ・インスタンスの処理に要した時間がミリ秒単位で表示されます。

図10-7 「インスタンス」ビューのオーバーレイ統計のサンプル

図10-7の説明は次にあります。
「図10-7 「インスタンス」ビューのオーバーレイ統計のサンプル」の説明

メッセージ・インスタンスの検索

「インスタンス」パネルに、多数のメッセージ・インスタンスがあるため、すばやく目的のメッセージ・インスタンスを検出できない場合は、次の方法でメッセージを検索できます。

  1. 「インスタンス」ビューが表示されていない場合は、Oracle ESB Controlの上部の「インスタンス」ボタンをクリックします。

  2. 「検索」パネルを開きます(まだ開いていない場合)。

  3. 表10-1の説明に従って、目的の検索条件を指定します。

  4. 「検索」パネルのタイトル・バーにある適用アイコン(緑色の矢印)をクリックします。

表10-1 メッセージ・インスタンスの検索条件の指定

検索条件 説明

インスタンスID

メッセージを特定のインスタンスIDが付いたメッセージに制限する手順は、次のとおりです。

  1. 「拡張」オプションが表示されていない場合は、拡張アイコンをクリックして開きます。 (このアイコンは、「インスタンス」パネルの「基本」の横にあるプラス記号(+)ボックスです。)

  2. 「インスタンスID」フィールドで、目的のメッセージ・インスタンスのIDを入力します。

複数のインスタンスIDは指定できません。検索条件としてインスタンスIDを指定した場合、他のフィルタ条件は無視されます。

最終のアクティビティ<time frame>

特定の時間に処理されたメッセージに制限する手順は、次のとおりです。

  1. 「拡張」オプションが表示されていない場合は、拡張アイコンをクリックして開きます。 (このアイコンは、「インスタンス」パネルの「基本」の横にあるプラス記号(+)ボックスです。)

  2. 「最終のアクティビティ」フィールドの横にあるドロップダウン・リストから期間を選択します。

  3. 「最終のアクティビティ」フィールドで、手順2で指定した期間に含める数値を選択します。

    メッセージが消去されている場合は、特定の時間に対するメッセージ・インスタンスが使用できない場合があります。「メッセージ・インスタンスの消去」を参照してください。

サービス

メッセージを特定のサービスで処理されたメッセージに制限する手順は、次のとおりです。

  1. 「サービス」フィールドの右にあるESBサービス・ブラウザ・アイコンをクリックします。

    ダイアログ・ボックスが開きます。

  2. 目的のサービスが含まれているESBシステムに移動します。

  3. 目的のサービスを選択します。

  4. 「選択」をクリックします。

ステータス

メッセージを特定のステータスのメッセージに制限するには、「ステータス」フィールドで、次のいずれかのステータスを選択します。

  • 任意: すべてのメッセージ・インスタンスを表示する場合は、このオプションを選択します。

  • エラー: メッセージ・インスタンスを、処理中にエラーが発生したメッセージ・インスタンスに制限する場合は、このオプションを選択します。

  • 失敗: メッセージ・インスタンスを、サービスWSDLによって定義された失敗が発生したメッセージ・インスタンスに制限する場合は、このオプションを選択します。

  • 再送信可能: メッセージ・インスタンスを再送信可能なメッセージ・インスタンスに制限する場合は、このオプションを選択します。

一致

「トラッキング名」フィールドと「トラッキング値」フィールドで、「任意」または「すべて」の基準に一致するかどうかを指定します。

トラッキング名とトラッキング値(トラッキング可能フィールド)

メッセージを、1つまたは複数のトラッキング可能フィールドで特定の値が設定されているメッセージに制限する手順は、次のとおりです。

  1. <トラッキング名>を、以前定義したトラッキング可能フィールドの名前に置き換えます。

    トラッキング可能フィールドの定義の手順は、「トラッキング・フィールドの定義と管理」を参照してください。

  2. 論理演算子は選択できません。完全一致の場合は常に等しい(=)です。

  3. <トラッキング値>をトラッキング可能フィールドの値に置き換えます。

  4. 複数のトラッキング可能フィールドと値のペアを指定する場合は、プラス記号(+)ボタンをクリックしてから、追加のペアごとに手順1と手順2を繰り返します。

  5. リストで指定されている1つまたは複数のトラッキング・フィールドとトラッキング値のペアに一致するメッセージ・インスタンスを表示する場合は、「一致」フィールドで、「任意」を選択します。リストされているすべてのトラッキング・フィールドとトラッキング値のペアに一致するメッセージのみを表示する場合は、「すべて」を選択します。

トラッキング可能フィールドとトラッキング値のペアを削除する場合は、該当する行の横に表示されているマイナス記号(-)ボタンをクリックします。


メッセージ・インスタンスの消去

デフォルトでは、メッセージ・インスタンスは消去されません。その結果、「インスタンス」パネルにあるメッセージ・インスタンスのリストの処理が困難になる場合があります。この場合は、ESBサーバーに、すべてのメッセージまたは特定の時間範囲外で発生したすべてのメッセージ・インスタンスを消去するように指示できます。消去したインスタンスは、永久に失われます。

メッセージを消去する手順は、次のとおりです。

  1. 「インスタンス」ビューが表示されていない場合は、Oracle ESB Controlの上部の「インスタンス」ボタンをクリックします。

  2. 「管理」パネルを開きます(まだ開いていない場合)。

  3. メッセージを消去する頻度を選択します。

    • すべてのメッセージ・インスタンスを消去するには、「インスタンスの消去」の下にある「すべて」を選択します。

    • 特定の時間範囲外で発生したすべてのメッセージ・インスタンスを消去するには、「インスタンスの消去」の下にある「次より古い」を選択して時間範囲を指定します。

  4. 「管理」タイトル・バーにある適用アイコン(緑色の矢印)をクリックします。