ユーザーズ ガイド

     前  次    新しいウィンドウで目次を開く     
ここから内容

レポート

BEA AquaLogic Service Bus は、メッセージ データとアラートを 1 つまたは複数のレポート プロバイダに配信します。メッセージ データは、メッセージの本文およびメッセージに関連付けられた他の変数 (header 変数や inbound 変数など) から取り込むことができます。アラート データには、プロキシ サービスをモニタするためにコンフィグレーションできるサービス レベル アグリーメント (SLA) 違反に関する情報が含まれます。レポート プロバイダに配信されるメッセージまたはアラート データは、メッセージのトラッキングや規定の監査などの機能に使用できます。

AquaLogic Service Bus には、メッセージ レポート用の JMS レポート プロバイダが含まれます。AquaLogic Service Bus Console の [レポート] モジュールには、このレポート プロバイダから取り込まれた情報が表示されます。AquaLogic Service Bus のインストールで提供される JMS レポート プロバイダを使用しない場合は、そのレポート プロバイダを割り当て解除し、レポート サービス プロバイダ インタフェース (SPI) を使用して独自のレポート プロバイダを作成できます。メッセージ用の独自のレポート プロバイダをコンフィグレーションした場合、AquaLogic Service Bus Console に情報は表示されないので、独自のユーザ インタフェースを作成する必要があります。SLA データを取り込む場合は、アラート用のレポート プロバイダを作成する必要があります。

この章の内容は以下のとおりです。

 


レポートのシナリオ

以下のシナリオでは、AquaLogic Service Bus を使用してメッセージをトラッキングする方法を説明します。

メッセージ トラッキング

AquaLogic Service Bus Console では、メッセージをフィルタして取引後処理プロキシ サービスを表示します。一部のメッセージを詳細表示すると、パイプライン エラーの原因がメッセージ トランスフォーメーション エラーであり、その変形されたメッセージはプロキシ サービスに関連付けられているポータルから送信されていることがわかります。この問題を解決するには、そのポータル サイトから発生するすべてのメッセージのパイプラインに新しいトランスフォーメーションを追加します。

特定のメッセージの検索

顧客サービス部門から運用部門に、取引 1234 を送信した顧客が取引確認を受信しなかったという苦情について連絡が来ます。AquaLogic Service Bus Console にログインし、取引番号を検索します。要求パイプラインで 2 つのメッセージが処理されているが、応答メッセージがなかったことがわかります。顧客に連絡して取引が正常に処理されたことを保証するよう顧客サービス部門に依頼します。

規定の監査のロギング

月末に、融資処理チームは、処理した融資に関する情報をコンプライアンス部門に提供する必要があります。この要件を満たすために、アプリケーション開発チームは、関連メッセージ情報を取り込むよう該当するプロキシ サービス パイプラインを更新します。具体的には、顧客 ID と名前、融資 ID、融資額、不動産の住所、および融資の申し込み日に関するデータがメッセージから抽出されます。

アラート レポート プロバイダ

アラート用のレポート プロバイダをコンフィグレーションすることにより、AquaLogic Service Bus Console の外部でアラート通知を受信し、ビジネス ニーズに従ってアラートを処理できます。たとえば、アラートにレポート ストリームを利用するアラート レポート プロバイダを開発し、HP OpenView や Tivoli などのカスタム コンソールにアラートを表示できます。

 


レポート フレームワーク

AquaLogic Service Bus には、メッセージまたはアラート用に 1 つまたは複数のレポート プロバイダを作成できる拡張可能なフレームワークが用意されています。

メッセージ レポートを有効にするには、最初にプロキシ サービスのメッセージ フローにレポート アクションを作成する必要があります。レポート アクションでは、各メッセージから情報を抽出し、その情報を AquaLogic Service Bus のレポート データ ストリームに書き込むことができます。アラート レポートのレポート アクションをコンフィグレーションする必要はありません。アラート データは常にレポート データ ストリームで使用可能です。詳細については、「メッセージ レポートを有効にする方法」を参照してください。

独自のレポート プロバイダの作成に必要なすべての情報は、AquaLogic Service Bus の Javadoccom.bea.wli.reporting にあります。Javadoc には、レポート プロバイダをパッケージ化する方法、配置場所、デプロイの方法、デプロイメント順序など、レポート プロバイダの実装に必要なものに関する情報が記載されています。レポート スキーマ (MessageReporting.xsd) の場所は、<BEA_HOME>/weblogic92/servicebus/lib/sb-schemas.jar です。ここで、BEA_HOME は BEA 製品のインストール先のディレクトリです。

次の図はレポート フレームワークを示しています。

図 5-1 レポート フレームワーク

レポート フレームワーク

図 5-1 に示すように、レポート メッセージとアラートの両方がレポート データ ストリームにエクスポートされます。レポート ステージでは、レポート アクションによって情報が各メッセージから抽出され、MessageReporting.xsd に準拠するメタデータと共にレポート データ ストリームに書き込まれます。同様に、SLA マネージャは、レポート データ マネージャ API を使用して、AlertReporting.xsd に準拠するメタデータと共にアラート レポート ストリームに書き込みます。アラートのレポート プロバイダまたは独自のメッセージ レポート プロバイダを開発する場合は、ReportingDataHandler というインタフェースを実装し、ReportingDataManager クラスを使用する必要があります。

ReportingDataHandler インタフェースは、レポートまたはアラート データ ストリームを取得し、処理します。このストリームは、リレーショナル データベース、ファイル、JMS キューなどで処理したり格納したりすることができます。次のように、使用するストリームに応じて、データ ストリームを処理する適切な handle メソッドを実装する必要があります。

ReportingDataManager は、レポート プロバイダのレジストリを保持するサーバローカル オブジェクトです。レポート プロバイダは、ReportingDataHandler インタフェースを実装します。ReportingDataManager には、以下の機能を実行するための操作が用意されています。

 


JMS レポート プロバイダ

JMS レポート プロバイダは、レポート アクションによって各メッセージからレポート情報を取り込むプラグイン可能なアーキテクチャを備えています。クラスタ内のすべてのメッセージは集約され、データベース固有の形式で JMS レポート プロバイダ データ ストアに格納されます。AquaLogic Service Bus のインストールで提供される JMS レポート プロバイダを使用すると、AquaLogic Service Bus Console の [レポート] モジュールに JMS レポート プロバイダ データ ストアの情報が表示されます。

注意 : JMS レポート プロバイダは、AquaLogic Service Bus ドメインの作成時に自動的にコンフィグレーションされます。このレポート プロバイダを使用しない場合は、割り当て解除する必要があります。詳細については、「レポート プロバイダの削除、停止、割り当て解除」を参照してください。

この節の内容は以下のとおりです。

JMS レポート プロバイダについて

JMS レポート プロバイダは、プロデューサとコンシューマで構成されています。これらはスケーラビリティを向上させるために切り離されています。次の図に示すように、プロデューサは JMS プロデューサであり、MDB (メッセージ駆動型 Bean) が JMS コンシューマとして機能します。

図 5-2 JMS レポート プロバイダ

JMS レポート プロバイダ

レポート ステージには、レポート情報を収集し、ReportingDataManager の各種の handle 操作を通じてレポート ストリームを JMS レポート プロバイダにディスパッチするレポート アクションが含まれています。JMSReportingDataHandler は、レポート プロバイダの JMS プロデューサです。JMSReportingDataHandler はレポート ストリームを取得し、情報を JMS キューに記録します。MDB は、JMS レポート キューをリスンします。メッセージは非同期に処理され、データは JMS レポート プロバイダ データ ストアに格納されます。

メッセージ レポートを有効にする方法

AquaLogic Service Bus のインストールで提供される JMS レポート プロバイダ、またはユーザ独自のレポート プロバイダからレポート メッセージを受信するには、まずプロキシ サービスのメッセージ フローにレポート アクションを作成する必要があります。レポート アクションでは、各メッセージから情報を抽出し、その情報を AquaLogic Service Bus のレポート データ ストリームに書き込むことができます。レポート アクションには、メッセージから抽出し、AquaLogic Service Bus のレポート データ ストリームに追加する情報を指定する必要があります。

アラート レポートのレポート アクションをコンフィグレーションする必要はありません。アラート データは常にレポート データ ストリームで使用可能です。

レポート アクションをコンフィグレーションする場合は、キー値を使用してメッセージからキー識別子を抽出します。複数のキーをコンフィグレーションできます。情報は、メッセージの本体からのみでなく、header 変数や inbound 変数など、メッセージに関連付けられている他のあらゆる変数からも取り込むことができます。メッセージ変数の詳細については、『AquaLogic Service Bus Console の使い方』の「メッセージ コンテキスト」を参照してください

次のように、任意の XML 要素をキーとして使用できます。

   <?xml version="1.0" encoding="utf-8"?>
    <poIncoming>
<areacode>408</areacode>
<item-quantity>100</item-quantity>
<item-code>ABC</item-code>
<item-description>Medicine</item-description>
</poIncoming>

たとえば、次の図に示すように、キーを itemcode、値を .//item-code (XPath 式)、変数をメッセージ本文 (body) と指定できます。

図 5-3 キー名とキー値

キー名とキー値

AquaLogic Service Bus のインストールで提供される JMS レポート プロバイダを使用している場合は、キーおよび関連付けられている値が [メッセージの概要] テーブルの [レポート インデックス] カラムに表示されます。複数のキーをコンフィグレーションした場合は、図 5-4 に示すように、キーと値の各ペアがセミコロンで区切られて [レポート インデックス] カラムに表示されます。

図 5-4 キーおよびそれに関連付けられている値の表示

キーおよびそれに関連付けられている値の表示

レポート アクションの作成方法または [メッセージの概要] ページの表示方法については、『AquaLogic Service Bus Console の使い方』の次のトピックを参照してください

[レポート] モジュールの使用

AquaLogic Service Bus Console の [レポート] モジュールには、JMS レポート プロバイダ データ ストアによって収集された情報が表示されます。[レポート] モジュールの最初のページには、抽出された情報と、メッセージがデータベースに書き込まれた時刻やメッセージに関連付けられているサービスなどのその他の情報を含む [メッセージの概要] テーブルが表示されます。データをフィルタおよびソートすることで、このページに表示される情報をカスタマイズできます。また、エラー情報など、特定のメッセージに関する詳細情報を表示することもできます。

[レポート] モジュールには、メッセージ データの管理に役立つパージ機能が用意されています。レポート データストアからすべてのメッセージをパージしたり、時間範囲に基づいてパージしたりできます。

JMS レポート プロバイダ データ ストアにはデータベースが必要です。WebLogic Server と共に、PointBase データベースの評価版がインストールされます。PointBase は開発環境には使用できますが、プロダクション環境には使用できません。AquaLogic Service Bus では、他のベンダのデータベースもサポートされています。JMS レポート プロバイダ データ ストアのホストに使用しているデータベースに対して、標準的なデータベース管理手続きを行ってください。詳細については、「JMS レポート プロバイダ ストア用データベースのコンフィグレーション」を参照してください。

[レポート] モジュールの使用方法の詳細については、『AquaLogic Service Bus Console の使い方』に記載されています。

この節の内容は以下のとおりです。

メッセージの概要

ナビゲーション パネルで [レポート] をクリックすると、[メッセージの概要] ページが表示されます。このページには、データベース タイムスタンプでソートされたレポート メッセージのリストを示すテーブルがあります。

図 5-5 メッセージの概要

メッセージの概要

メッセージがフィルタされていない場合、[メッセージの概要] テーブルには、データベース タイムスタンプに基づいて最大 100 個の最新メッセージが表示されます。メッセージをフィルタした場合は、最大 1000 個のメッセージが表示されます。

注意 : メッセージをフィルタした後、フィルタは更新するまで有効になります。

上の図に示すテーブルには、次の情報が表示されます。

特定のメッセージを検索するには、[メッセージの概要] テーブルで [フィルタ] をクリックすることにより、メッセージの表示をフィルタできます。利用可能なフィルタを次の図に示します。

図 5-6 [メッセージの概要] での検索

[メッセージの概要] での検索

図 5-6 に示すように、指定した期間のレポート メッセージをサービス名、エラー コード、およびレポート インデックスでフィルタできます。メッセージをフィルタした後、ページのタイトルは [フィルタされたメッセージの概要] に変わります。[メッセージの概要] のフィルタの使用方法については、『AquaLogic Service Bus Console の使い方』の「レポート」にある「メッセージの表示と検索」を参照してください

レポート メッセージに関する詳細情報を表示するには、[レポート インデックス] カラムでメッセージの名前をクリックします。メッセージの詳細表示ページが表示されます。

メッセージの詳細の表示

メッセージの詳細表示ページには、次の図に示すように、レポート メッセージに関する詳細情報が表示されます。

図 5-7 レポート メッセージの詳細ページ

レポート メッセージの詳細ページ

このページには以下の情報が表示されます。

メッセージのパージ

レポート データストアからすべてのメッセージをパージしたり、時間範囲に基づいてパージすることができます。メッセージのパージは、AquaLogic Service Bus Console で行われる非同期プロセスです。この機能により、パージをバックグラウンドで行いながら、AquaLogic Service Bus Console の [メッセージの概要] ページを使用できます。

図 5-8 [メッセージのパージ] ページ

[メッセージのパージ] ページ

パージの完了に要する時間は、パージ キューにあるメッセージの数によって異なります。パージ プロセス中にレポート メッセージを検索すると、メッセージの削除の速度が低下します。また、一部のデータのパージがまだ完了していない場合、[メッセージの概要] ページに不正なデータが表示されることがあります。

パージ プロセスは非同期であり、バックグラウンドで行われるため、AquaLogic Service Bus Console には、パージを実行中であることを示すメッセージは表示されません。ただし、パージの実行中に別のユーザがパージを開始しようとすると、次のメッセージが表示されます。

すでにパージ作業を実行中です。後で実行してください

JMS レポート プロバイダ ストア用データベースのコンフィグレーション

AquaLogic Service Bus では、JMS レポート プロバイダ データ ストア用のデータベースが必要です。WebLogic Server と共にインストールされる PointBase データベースは評価を目的としており、プロダクション環境用ではありません。評価以外の開発または他の目的で PointBase サーバを使用する場合は、PointBase ライセンスを別途入手する必要があります。

プロダクション環境では、サポートされているデータベースの 1 つを使用する必要があります。サポートされているデータベースに関する最新情報については、AquaLogic Service Bus でサポート対象のコンフィグレーションの WebLogic Platform でサポート対象のコンフィグレーションにあるサポート対象のデータベースとドライバに関する説明を参照してください。

この節の内容は以下のとおりです。

開発環境でデータベースをコンフィグレーションする

AquaLogic Service Bus ドメインを作成する場合、Configuration Wizard ではデータベース テーブルが自動的に作成されません。開発環境では、AquaLogic Service Bus のインストールで提供される JMS レポート プロバイダは、指定されたデータベースのテーブルが存在するかどうかを実行時にチェックしません。テーブルが存在しない場合、レポート プロバイダによってテーブルが作成されます。テーブルが存在する場合は、そのテーブルが使用されます

注意 : PointBase を使用する場合は、Configuration Wizard でデータベースを指定する必要はありません。

JMS レポート プロバイダで使用するデータベースは、次のいずれかの方法で指定できます。

プロダクション用のデータベースをコンフィグレーションする

プロダクション用のデータベースのコンフィグレーションに関する詳細情報は、AquaLogic Service Bus のデプロイメント ガイドの以下の章に記載されています

 


レポート プロバイダの削除、停止、割り当て解除

すでに説明したように、AquaLogic Service Bus のインストールで提供される JMS レポート プロバイダは、AquaLogic Service Bus ドメインの作成時に自動的にコンフィグレーションされます。このレポート プロバイダまたは任意のレポート プロバイダを使用しない場合は、割り当て解除する必要があります。

注意 : レポート プロバイダがなくても、レポート アクションを定義できます。ただし、データの書き込みは行われません。

以下の節では、任意のレポート プロバイダの停止または割り当て解除の方法を説明します。

レポート プロバイダの停止 (サーバが実行中の場合)

AquaLogic Service Bus ドメインでサーバの実行中にレポート プロバイダを停止する場合は、以下の手順に従います。

  1. WebLogic Server Administration Console を起動します。詳細については、WebLogic Server および WebLogic Express の紹介の「Administration Console の概要」にある「Administration Console の起動」を参照してください
  2. WebLogic Server Administration Console にログインした後、[ドメイン構造] で [デプロイメント] をクリックします。[デプロイメントの概要] ページが表示されます。
  3. [デプロイメント] テーブルで、停止するレポート プロバイダの横にあるチェックボックスを選択します。
  4. 図 5-10 レポート プロバイダの停止


    レポート プロバイダの停止

  5. [停止] をクリックし、リストが表示されたら、適切なコマンドを選択します。
  6. [アプリケーション停止アシスタント] ページが表示されたら、[はい] をクリックします。[Deployments] テーブルに、レポート プロバイダの状態が [準備完了] になったことが示されます。

レポート プロバイダの割り当て解除 (サーバが実行中の場合)

AquaLogic Service Bus ドメインでサーバの実行中にレポート プロバイダを割り当て解除する場合は、以下の手順に従います。

  1. WebLogic Server Administration Console を起動します。詳細については、WebLogic Server および WebLogic Express の紹介の「Administration Console の概要」にある「Administration Console の起動」を参照してください
  2. WebLogic Server Administration Console にログインした後、[チェンジ センタ] で [ロックして編集] をクリックします。
  3. 左側のパネルの [ドメイン構造] で、[デプロイメント] をクリックします。[デプロイメントの概要] ページが表示されます。
  4. [Deployments] テーブルで、割り当て解除するレポート プロバイダをクリックします。レポート プロバイダの設定ページが表示されます。
  5. [対象] タブをクリックします。
  6. 適切なチェックボックスのチェックをはずします。
  7. 図 5-11 レポート プロバイダの割り当て解除


    レポート プロバイダの割り当て解除

  8. [保存] をクリックします。設定が正常に更新されたことを示すメッセージが表示されます。
  9. レポート プロバイダを割り当て解除した後で、レポート プロバイダで使用されているデータ ソースを次のように割り当て解除します。
  10. 注意 : この手順は、レポート プロバイダで独自のデータ ソースを使用している場合のみ必須です。AquaLogic Service Bus のインストールで提供される JMS レポート プロバイダを割り当て解除する場合は、以下の手順を実行する必要があります。
    1. 左側のパネルの [ドメイン構造] で、[サービスJDBCデータ ソース] を選択します。
    2. [JDBC データ ソースの概要] ページで、割り当て解除するデータ ソースの名前をクリックします。データ ソースの設定ページが表示されます。
    3. [対象] タブをクリックします。
    4. 適切なチェックボックスのチェックをはずします。
    5. [保存] をクリックします。設定が正常に更新されたことを示すメッセージが表示されます。
    6. チェンジ センタの [変更のアクティブ化] をクリックしてこれらの変更をアクティブ化します。

JMS レポート プロバイダの割り当て解除 (サーバが実行されていない場合)

サーバが AquaLogic Service Bus ドメインで実行されていない場合は、WebLogic Scripting Tool (WLST) を使用して、AquaLogic Service Bus ドメインから JMS レポート プロバイダを削除できます。WLST の詳細については、WebLogic Server ドキュメントの『WebLogic Scripting Tool ガイド』を参照してください

レポート プロバイダを割り当て解除するには、以下の手順に従います。

  1. WLST を使用するように環境をまだ設定していない場合は、『WebLogic Scripting Tool ガイド』の「WebLogic Scripting Tool の使用」にある「WLST の使用の主な手順」を参照してください
  2. UNIX シェルまたは端末ウィンドウを開きます。
  3. WLST Offline を起動します。
  4. C:>java com.bea.plateng.domain.script.jython.WLST_offline

  5. Configuration Wizard を使用して作成されたドメインを読み込みます。例を示します。
  6. wls:/offline>readDomain("C:/bea/user_projects/domains/base_domain")

  7. レポート プロバイダ データ ソースを割り当て解除します。例を示します。
  8. wls:/offline/base_domain>unassign("JdbcSystemResource", "wlsbjmsrpDataSource", "Target", "AdminServer")

  9. レポート プロバイダ アプリケーションを割り当て解除します。例を示します。
  10. wls:/offline/base_domain>unassign("AppDeployment", "JMS Reporting Provider", "Target", "AdminServer")

  11. ドメインを更新します。
  12. wls:/offline/base_domain>updateDomain()

  13. ドメインを閉じます。
  14. wls:/offline/base_domain>closeDomain()

  15. WLST コマンド プロンプトを終了します。
  16. wls:/offline>exit()

AquaLogic Service Bus の JMS レポート プロバイダを割り当て解除すると、図 5-12 に示すように、AquaLogic Service Bus Console の [レポート] モジュールにレポート プロバイダがデプロイされていないことが示されます。

図 5-12 レポート プロバイダがデプロイされていない

レポート プロバイダがデプロイされていない

注意 : クラスタでは、JMS レポート プロバイダはクラスタに割り当てられます。したがって、クラスタでメッセージを表示およびパージするには、少なくとも 1 つの管理対象サーバを管理サーバと共に実行するようコンフィグレーションする必要があります。管理対象サーバが実行されていない場合は、AquaLogic Service Bus Console に、前の図に示したメッセージが表示されます。

  ページの先頭       前  次