WebSphere Business Monitor サンプルについて

このサンプルは、WebSphere Message Broker からイベントを発信し、WebSphere Business Monitor でイベントを処理する方法を示しています。サンプルは、以下のタスクを説明します。

サンプルは、以下を例示することにより、WebSphere Business Monitor を構成して WebSphere Message Broker からイベントを受け取る方法を示します。

このサンプルは、以下のシナリオに基づいています。

ある園芸用品会社は、3 つのタイプの顧客から購買オーダー要求を受けます。

受け取る購買オーダー要求にはオーダーする品目が含まれますが、オーダー品目の合計コストは含まれていません。 メッセージ・フローはこの合計を計算して、さらにゴールド顧客には 15% の値引きを適用します。 また、ゴールド顧客オーダーは異なるサービス・アプリケーションによって処理されるので、メッセージ・フローは顧客タイプに応じてオーダーを経路指定します。

TotalPurchaseOrderFlow メッセージ・フロー

TotalPurchaseOrderFlow

WebSphere MQ 入力キュー INPUT_ORDER_PRICE は、購買オーダー要求を受け取ります。 Compute ノード ComputeOrderTotal が使用されて、以下が行われます。

顧客タイプに応じて、出力要求は以下の WebSphere MQ 出力キューの 1 つに送信されます。

メッセージ・セット・プロジェクト WBMonitorEventsMessageSet には、入力および出力メッセージのメッセージ定義が含まれます。

入力メッセージは、以下の形式となります。

<?xml version="1.0" encoding="UTF-8"?>
<PO:purchaseOrder xmlns:PO="http://www.ibm.com/ProcessOrder" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.ibm.com/ProcessOrder totalPOInstance.xsd ">
  <PO:purchaseOrderID>11112222</PO:purchaseOrderID>
  <PO:customerID>111111</PO:customerID>
  <PO:customerType>GOLD</PO:customerType>
  <PO:items>
    <PO:item>
      <PO:partNum>0239232</PO:partNum>
      <PO:productName>compost</PO:productName>
      <PO:quantity>14</PO:quantity>
      <PO:price>4.99</PO:price>
    </PO:item>
    <PO:item>
      <PO:partNum>0451481</PO:partNum>
      <PO:productName>lawnmower</PO:productName>
      <PO:quantity>10</PO:quantity>
      <PO:price>79.99</PO:price>
    </PO:item>
    <PO:item>
      <PO:partNum>0481257</PO:partNum>
      <PO:productName>spade</PO:productName>
      <PO:quantity>10</PO:quantity>
      <PO:price>19.99</PO:price>
    </PO:item>
  </PO:items>
</PO:purchaseOrder>

出力メッセージは、以下の形式となります。

<?xml version="1.0" encoding="UTF-8"?>
<PO:purchaseOrderPriced xmlns:PO="http://www.ibm.com/ProcessOrder" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.ibm.com/ProcessOrder totalPOInstance.xsd ">
  <PO:purchaseOrderID>11112222</PO:purchaseOrderID>
  <PO:customerID>111111</PO:customerID>
  <PO:customerType>GOLD</PO:customerType>
  <PO:items>
    <PO:item>
      <PO:partNum>0239232</PO:partNum>
      <PO:productName>compost</PO:productName>
      <PO:quantity>14</PO:quantity>
      <PO:price>4.99</PO:price>
    </PO:item>
    <PO:item>
      <PO:partNum>0451481</PO:partNum>
      <PO:productName>lawnmower</PO:productName>
      <PO:quantity>10</PO:quantity>
      <PO:price>79.99</PO:price>
    </PO:item>
    <PO:item>
      <PO:partNum>0481257</PO:partNum>
      <PO:productName>spade</PO:productName>
      <PO:quantity>10</PO:quantity>
      <PO:price>19.99</PO:price>
    </PO:item>
  </PO:items>
  <PO:priceSummary>
    <PO:itemTotal>1069.66</PO:itemTotal>
    <PO:deliveryCharges>19.99</PO:deliveryCharges>
    <PO:discount>163.44</PO:discount>
    <PO:invoice>926.21</PO:invoice>
  </PO:priceSummary>
</PO:purchaseOrderPriced>
  

出力メッセージのルート・エレメント名が Compute ノードによって purchaseOrderPriced に変更されたことに注目してください。

モニターは、フロー内の以下のノードで構成されます。

いずれかのノードの詳細を表示するには、メッセージ・フロー・エディターを開き、「モニター」タブを選択します。ゲストのオーダーは WebSphere Business Monitor でモニターしないため、 イベント・フィルターはゲスト顧客からのイベントを発信しないように構成されています。

モニター・モデル

モニター情報のエクスポート・オプションを使用して作成されたサンプル・モニター・モデル WBMonitorEventsV7_Model.mm が、 MonitorModels_V7.zip ファイルに含まれています。

以下の 3 つのサンプル・モニター・モデルが MonitorModels.zip ファイルに収められています。

FlowGeneric モニター・モデル

このモデルは、任意の実行グループに対して実行される任意のフローの、メッセージ・フローの開始、終了、およびロールバックのイベントを表示するのに使用できる汎用モデルです。 このモデルには、イベントの情報を保持するメトリックが入っています。 重要業績評価指標 (KPI) は、フローの処理時間と、状態がアクティブ、完了 (成功および失敗したトランザクションを含む)、失敗、および正常完了のトランザクションの数を示します。

FlowSpecific モニター・モデル

このモデルを使って、特定のブローカーの特定の実行グループ内で実行される、特定のフローのイベントを表示することができます。 それは、モニター・モデル内でフィルターを作成することにより行われます。 そのフィルターは、モニター・モデル内でのインバウンド・イベント詳細の定義時に、XPath 式を使って設定します。 FlowGeneric モデルと同様に、イベントに関する情報を収めたいくつかのメトリックがすでに定義されています。 このサンプルで使用するブローカー、実行グループ、およびメッセージ・フローに関するイベントをフィルターするためのフィルター条件がセットアップされています。 WebSphere Business Monitor 開発ツールキット内の Monitoring Model Editor (MME) を使用して、 インバウンド・イベント・フィルターを、他の任意のブローカー、実行グループ、メッセージ・フローに変更するか、または別のメトリックでフィルターすることもできます。

ComplexContent モニター・モデル

このモデルは、サンプルの残りで使用します。 FlowSpecific モデルと同様に、このモデルもブローカー、実行グループ、およびメッセージ・フロー名でフィルターを行いますが、 このサンプル・モデルはまた、メッセージ・ペイロードからの次のようなエレメントを使って、 WebSphere Business Monitor アウトバウンド・イベントにデータを取り込むためのトリガー式を使用するメトリックを作成します。

MME を使用して、WebSphere Business Monitor インバウンド・イベント FlowStarted および FlowPriceSummary のイベント・パーツを変更し、 他のペイロード・フィールドを取り出すことができます。

KPI コンテキストを収めた KPI モデルが作成されます。 KPI コンテキストには、モデルに対して定義されている KPI とそれに関連したトリガーおよびイベントが入っています。 そのようなトリガーおよびイベントは、MME 内の「KPI モデル」ページから表示することができます。 作成される KPI のいくつかを以下に示します。


WBMonitorEventsV7_Model モニター・モデル

このモデルは、サンプル・メッセージ・フローに関するモニター情報をエクスポートする Workbench のオプションを使用して作成した、 ComplexContent モニター・モデルの 1 つのバージョンです。

モデルからのモニター・モデル・アプリケーションの作成方法と、モデルをベースにした Dashboard の作成方法の詳細は、WebSphere Business Monitor サンプルの実行を参照してください。

WebSphere Business Monitor でモニター・モデルを作成する方法についての詳細は、このリンクは新しいウィンドウで開きます IBM WebSphere Business Process Management Information Center を参照してください。

サンプルのホームに戻る