ユーザー出口の活用

メッセージ・フローはユーザー出口からメリットを得られます。

始める前に:

変更の始まり以下の図は、ユーザー出口の働きを示しています。 番号が付けられているイベントについては、図の後で説明されています。 例として MQInput ノードを使用していますが、関数は、ユーザー定義入力ノードも含め、すべての入力ノードに適用されます。同様に、Compute および MQOutput ノードを任意の同等のノードに置き換えることができます。変更の終わり

基本的なメッセージ・フロー・イベント
変更の始まり
  1. メッセージが入力ソースからデキューされる (フローへの読み取り)。

    組み込みノードとユーザー定義ノードは、ユーザー出口の呼び出し方法が少し異なります。組み込み入力ノードの場合、データを外部ソースから読み取った後、できるだけ早期にユーザー出口が呼び出されます。ユーザー定義の入力ノードの場合、 ノードがメッセージを伝搬する前にユーザー出口が呼び出されます。

  2. メッセージが処理用にノードに伝搬される。
  3. ノード処理が完了する。
  4. トランザクションが完了した後にユーザー出口が呼び出される (したがってユーザー出口の処理はそのトランザクションの一部ではありません)。 トランザクション処理がフローによって完了されない場合でも、ユーザー出口は呼び出されます。

    メッセージ・フロー・プロパティー「コミット・カウント」が 1 より大きい場合は、イベント 1 と 4 の間に存在する比率は多対 1 です。この比率は、特定の入力ノードに固有のシナリオにも当てはまることがあります。例えば、MQInput ノードが「メッセージ・グループによるコミット」プロパティーを選択して構成されている場合が該当します。

変更の終わり
任意の数のこれらのイベントを追跡するためのユーザー出口を作成できます。これらのイベントごとに、 以下のデータがユーザー出口で使用可能です。特記されていない限り、 アクセスはすべて読み取り専用です。
  • メッセージがデキューされる場合:
    • ビット・ストリーム
    • 入力ノード
    • 環境ツリー (読み取りおよび書き込み)
  • メッセージがノードに伝搬される場合:
    • メッセージ・ツリー
    • LocalEnvironment ツリー (読み取りおよび書き込み)
    • 例外リスト
    • 環境ツリー (読み取りおよび書き込み)
    • ソース・ノード
    • ターゲット・ノード
  • ノード処理が完了する場合:
    • メッセージ・ツリー
    • LocalEnvironment ツリー (読み取りおよび書き込み)
    • 例外リスト
    • 環境ツリー (読み取りおよび書き込み)
    • ノード
    • アップストリーム・ノード
    • 例外 (ある場合)
  • トランザクションの終了の場合:
    • 入力ノード
    • 例外 (ある場合)
    • 環境ツリー (読み取りおよび書き込み)

複数のユーザー出口を登録できます。登録済みの場合は、定義された順序で呼び出されます (mqsichangeflowuserexits コマンドを参照してください)。 ユーザー出口によってメッセージ・アセンブリー (Message および Environment) に行われたすべての変更は、以降のユーザー出口からも可視です。

ユーザー出口が呼び出されるときに、以下の情報を照会できます。
  • メッセージ・フロー情報:
    • メッセージ・フロー名
    • ブローカー名
    • ブローカーのキュー・マネージャー名
    • 実行グループ名
    • メッセージ・フローの「コミット・カウント」プロパティー
    • メッセージ・フローの「コミット・インターバル」プロパティー
    • メッセージ・フローの「整合トランザクション」プロパティー。
  • ノード情報:
    • ノード名
    • ノード・タイプ
    • ターミナル名
    • ノード・プロパティー
ユーザー出口は、以下の作業を実行することもできます。
  • メッセージ・アセンブリーのナビゲートおよび読み取り (Message、LocalEnvironment、ExceptionList)
  • Environment ツリーのナビゲートおよび読み取りまたは書き込み。

ユーザー出口は動的に登録でき、構成を再デプロイする必要はありません。

関連概念
ユーザー出口
関連タスク
ユーザー出口のデプロイ
ユーザー出口の開発
関連資料
mqsichangeflowuserexits コマンド
ユーザー定義拡張機能
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック

Copyright IBM Corporation 1999, 2009Copyright IBM Corporation 1999, 2009.
最終更新 : 2009-02-20 12:42:39

ac02145_