WebSphere Message Broker バージョン 8.0.0.5 オペレーティング・システム: AIX、HP-Itanium、Linux、Solaris、Windows、z/OS

製品の最新バージョンについては、IBM Integration Bus バージョン 9.0 をご覧ください。

相関とモニター・イベント

モニター・アプリケーションは相関属性を使用して、同じビジネス・トランザクションに属するイベントを識別します。

ビジネス・トランザクションは以下のシナリオのいずれかになります。

イベントで使用可能な相関属性が 3 つ (ローカル相関関係子親相関関係子グローバル相関関係子) 用意されています。 相関属性の厳密な使用法は、要求に応じて異なります。 例えば、親アプリケーションは、そのトランザクション ID を (おそらくヘッダー内の) 子メッセージ・フローに渡すことができます。それにより、子メッセージ・フローはそれをイベント内で、親相関関係子として報告できます。

発行されるすべてのモニター・イベントには、ローカル相関関係子、親相関関係子、およびグローバル相関関係子を含めることができます。 相関情報は、イベントの以下の属性内に置かれます。
wmb:eventPointData/wmb:eventCorrelation/@wmb:localTransactionId
wmb:eventPointData/wmb:eventCorrelation/@wmb:parentTransactionId
wmb:eventPointData/wmb:eventCorrelation/@wmb:globalTransactionId

イベントを構成するときに、相関情報を指定できます。

イベントを構成するときに相関情報を指定しない場合、相関属性は使用されません。

相関情報を指定する場合は、使用する相関属性と、その値をどこから読み取るかを構成する必要があります。 通常は、相関情報を指定する必要があるのは、メッセージ・フローの最初のイベント・ソースに対してのみです。デフォルトで、後のイベント・ソースはすべて環境ツリーから同じ値を取得します。

相関情報を指定するための厳密なステップは、イベントを構成するためにモニター・プロパティーを使用しているかモニター・プロファイルを使用しているかによって異なりますが、両方の手法で原則は同じです。
ローカル相関関係子

環境ツリーのローカル相関関係子を再利用する場合は、「自動」を指定します。 まだローカル相関関係子が存在していない場合、新しい固有値が生成され、環境ツリー内に保存されます。

メッセージのロケーションに含まれている値を使用する場合は、メッセージ・ツリーに XPath を使用して相関関係子のロケーションを指定します。 指定されたロケーションが、このメッセージ・フローの呼び出しに固有な相関関係子値を含んでいることを確認してください。 抽出された値は、環境ツリーにローカル相関関係子として保存されます。

親相関関係子

環境ツリーの親相関関係子を再利用する場合は、「自動」を指定します。 まだ親相関関係子が存在していない場合、親相関関係子は使用されません。

メッセージのロケーションに含まれている値を使用する場合は、メッセージ・ツリーに XPath を使用して相関関係子のロケーションを指定します。 指定されたロケーションが、その親相関関係子に適切な値を含んでいることを、確認してください。 抽出された値は、環境ツリーに親相関関係子として保存されます。

グローバル相関関係子

環境ツリーのグローバル相関関係子を再利用する場合は、「自動」を指定します。 まだグローバル相関関係子が存在していない場合、グローバル相関関係子は使用されません。

メッセージのロケーションに含まれている値を使用する場合は、メッセージ・ツリーに XPath を使用して相関関係子のロケーションを指定します。 指定されたロケーションが、そのグローバル相関関係子に適切な値を含んでいることを、確認してください。 抽出された値は、環境ツリーにグローバル相関関係子として保存されます。

相関関係子の値を設定すると、値は環境ツリーに保存されます。 保存された値を後のイベント・ソースが再使用できるようにするには、「自動」を指定します。メッセージ・フローのすべてのイベント・ソースで同じ XPath を使用する必要はありません。同じ XPath を使用すると、パフォーマンスが低下することがあります。

以後のイベントによって使用される相関関係子値を保存するために使用される環境ツリー内のロケーションは、以下のとおりです。

Environment.Monitoring.EventCorrelation.localTransactionId       
Environment.Monitoring.EventCorrelation.parentTransactionId       
Environment.Monitoring.EventCorrelation.globalTransactionId 

 

以下のメッセージ・ツリー・ロケーションには、相関関係子として使用できる値がしばしば含まれています。
$Root/MQMD/MsgId
$Root/MQMD/CorrelId
$Root/JMSTransport/Transport_Folders/Header_Values/JMSMessageID
$Root/JMSTransport/Transport_Folders/Header_Values/JMSCorrelationID
$LocalEnvironment/Destination/HTTP/RequestIdentifier
$LocalEnvironment/Wildcard/WildcardMatch
ヒント: 利用可能な 3 つの相関関係子では十分でない場合、イベントを構成して、メッセージから他の相関フィールドを抽出し、それらをイベントの wmb:applicationData/wmb:simpleContent セクションに置くようにします。
ヒント: Collector ノードおよび AggregateControl ノードは、メッセージ・フローの後のノードのために環境ツリーを保存することはしません。 フロー中で同じ相関関係子値を後で使用する場合は、その相関関係子値がメッセージ・ツリーで利用可能であることを確認し、メッセージ・ツリーに XPath を使用して、Collector ノードまたは AggregateControl ノードの後の最初のイベント・ソースで相関関係子のロケーションを指定します。

シナリオ

シナリオ 1: このシナリオでは、3 つの相関関係子すべてが、外部プロセスで開始されるデータのモニターに使用されます。 いくつかのメッセージ・フローが、その後データを変換します。
  • globalTransactionID フィールドには、メッセージ・ヘッダーまたはペイロードからの識別子が入ります。 この識別子は、外部プロセスと WebSphere® Message Broker からのイベントを相関させます。
  • parentTransactionID は、異なるメッセージ・フローからの WebSphere Message Broker 内のイベントを相関させます。
  • localTransactionID は、同じメッセージ・フローからのイベントを相関させます。
シナリオ 2: このシナリオでは、parentTransactionID フィールドを使用して、2 つのメッセージ・フロー間の要求メッセージと応答メッセージを相関させます。
  • 要求フローは purchaseOrder 要求を、処理のために外部アプリケーションに送信します。
  • 応答フローは、purchaseOrder が処理されたときに、外部アプリケーションから確認応答を受信します。

同じ購入オーダーに属する要求と応答を相関させる必要があります。 そのためには、parentTransactionIDpurchaseOrder 内のフィールドに設定します。 例えば purchaseOrderID で、これは要求と応答の両方で使用可能です。

特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        最終更新:
        
        最終更新: 2015-02-28 17:46:09


一般トピック一般トピック | バージョン 8.0.0.5 | ac60389_