![]() ![]() ![]() ![]() |
Oracle Service Bus では、システム処理に必要な実行時情報をモニタおよび収集できます。Oracle Service Bus で集約された実行時統計はダッシュボードに表示できます。ダッシュボードでは、システムのヘルス状態をモニタし、サービスでアラートが生成された場合に通知を受けることができます。この情報を使用すると、時間をかけずに簡単に、発生した問題を特定し、診断できます。
実行時に Oracle Service Bus をモニタすると、特定のサービスで正常に処理されたメッセージと処理に失敗したメッセージの数を把握できます。
Oracle Service Bus のモニタ フレームワークは、正常に処理されたメッセージまたは処理に失敗したメッセージの数、サービスが属するプロジェクト、メッセージ処理の平均実行時間、およびサービスに関連するアラートの数に関する情報へのアクセスを提供します。Oracle Service Bus Console を使用することにより、現在の集約間隔のモニタ統計を表示できます。また、このサービスの統計を最後にリセットした時点、またはすべてのサービスの統計を最後にリセットした時点以降の期間のモニタ統計を表示できます。パブリック API を使用することにより、最後のリセット以降の統計だけにアクセスすることもできます。
Oracle Service Bus のモニタとは、操作リソース、サーバ、サービス レベル アグリーメント (SLA) などをモニタすることです。図 3-1 は、Oracle Service Bus のモニタ フレームワークのアーキテクチャを示します。
Oracle Service Bus のモニタ アーキテクチャは、以下のコンポーネントで構成されます。
注意 : | 操作リソースは、モニタ サブシステムにより統計情報を収集できる単位として定義されます。操作リソースには、プロキシ サービス、ビジネス サービス、Web Services Definition Language (WSDL) オペレーションなどのサービス レベル リソース、パイプラインのフロー コンポーネント、エンドポイント URI などがあります。 |
コレクタは、更新された統計を Oracle Service Bus ランタイムから収集して、集約機能に送信します。集約機能は、集約間隔の期間中、統計を集約します。集約統計は、Alert Manager にプッシュされます。Alert Manager は、この統計に基づいてアラートをトリガします。また、集約統計は格納され、取得機能によって取得できます。以下の手順は、Oracle Service Bus ランタイムでサービスをモニタする際に実行します。
クラスタでは、管理対象サーバで収集されたすべての統計が集約機能にプッシュされます。クラスタ全体の統計には、[サービス ヘルス] タブからアクセスできます。詳細については、「クラスタの統計にアクセスする方法」を参照してください。API を使用して統計にアクセスすることもできます。詳細については、「JMX モニタリング API を使用して統計情報にアクセスする方法」を参照してください。
アラートは、集約機能をホストしている管理対象サーバからプルされ、Oracle Service Bus Console に表示されます。
Oracle Service Bus では、モニタ サブシステムは、集約間隔中のメッセージ数などの統計を収集します。集約間隔とは、統計データが収集され、Oracle Service Bus Console に表示されるまでの時間です。集約間隔に基づいていない統計には意味がありません。適切に定義された集約間隔中に収集される統計以外に、累積統計を収集することもできます。
集約間隔とは、常に分、時間、または日単位の時間間隔を表す移動時間枠です。集約間隔は、無限レベル (精度) ではなく、サンプル間隔と呼ばれる一定の時間間隔で移動します。これにより、集約間隔の円滑な移動と正確な統計の生成が可能になります。
図 3-2 は、集約間隔の説明です。たとえば、集約間隔 A2
が 10 分に設定されているときに、集約間隔 A1
を 5 分に設定するとします。この場合、集約間隔 A1
を使用するサービスの統計が 1 分ごと (S1
) に収集されます。収集された統計は、集約間隔の最後に集約されます。
同様に、集約間隔 A2
の統計は 5 分ごと (S2
) に収集されます。間隔 S1 および S2 は、サンプル間隔と呼ばれます。サンプル間隔の詳細については、「集約間隔におけるサンプル間隔」を参照してください。
Oracle Service Bus ランタイムでは、統計は、各集約間隔において一定の間隔で計算されます。このような一定のサブ間隔は、サンプル間隔と呼ばれます。サンプル間隔の期間は、集約間隔によって異なります。表 3-1 は、さまざまな集約間隔に対するサンプル間隔の長さを示します。
Oracle Service Bus の集約間隔には、次の特性があります。
サービスの集約間隔を変更すると、現在の集約間隔におけるサービスの統計がリセットされます。ただし、集約間隔を変更しても、サービスのエンドポイント URI の状態に影響はありません。また、集約間隔を変更しても、サービスの集計カウントのメトリックはリセットされません。
Oracle Service Bus 内でサービスの名前変更や移動を行うと、Oracle Service Bus Console で収集したすべてのモニタ統計がリセットされます。現在の集約間隔と累積のメトリックはすべてリセットされ、サービスは最初からモニタされます。サービスのエンドポイント URI がオフラインとしてマークされている場合、そのサービスに対して名前変更または移動を行うと、URI は再びオンラインとしてマークされ、URI の状態はオンラインとして表示されます。
Oracle Service Bus のサービスをモニタして、すべてのサービスの統計を収集できます。Oracle Service Bus でのシステムのモニタでは、次の種類の統計がサポートされます。
さまざまな種類の統計の詳細については、「Oracle Service Bus における統計のモニタ」を参照してください。API を使用して統計にアクセスする方法の詳細については、「JMX モニタリング API を使用して統計情報にアクセスする方法」を参照してください。
サービスの統計情報には、Oracle Service Bus Console を使用してアクセスするか、JMX モニタリング API を使用して直接アクセスできます。この節では、Oracle Service Bus Console および JMX モニタリング API を使用して情報にアクセスする方法について説明します。JMX モニタリング API を使用して統計情報にアクセスする方法の詳細については、『JMX モニタリング API プログラミング ガイド』を参照してください。
スタンドアロン サーバまたはクラスタの Oracle Service Bus Console から、サービスの統計にアクセスできます。この節では、スタンドアロン サーバの統計にアクセスする方法について説明します。クラスタのサービスの統計にアクセスする方法については、「クラスタの統計にアクセスする方法」を参照してください。
Oracle Service Bus Console では、現在の集約間隔または最後のリセット以降の期間におけるサービスの統計情報にアクセスできます。現在の集約間隔および最後のリセット以降の統計情報は、ダッシュボードの [サービス ヘルス] タブに示されます。
詳細については、「現在の集約間隔に対するサービスの統計にアクセスする方法」および「サービスの集計カウント統計にアクセスする方法」を参照してください。
JMX (Java Management Extensions) モニタリング API を使用して、プログラムから直接統計情報にアクセスすることもできます。JMX モニタリング API を使用することにより、集計カウント統計だけにアクセスできます。JMX モニタリング API は、バルク操作のための効率的な下位サポートを提供します。JMX モニタリング API の使用方法の詳細については、『JMX モニタリング API プログラミング ガイド』を参照してください。
クラスタ環境では、個々の管理対象サーバ レベルおよびクラスタ レベルで統計を使用できます。クラスタまたは個々の管理対象サーバの統計を表示するには、[サービス ヘルス] タブで [クラスタ] を選択するか、[サーバ] ドロップダウン リストから管理対象サーバの名前を選択します。
クラスタ内の特定のサービスに関する詳細な統計を取得するには、[サービス ヘルス] タブから、そのサービスの [サービスのモニタの詳細] ページにアクセスします。[サービスのモニタの詳細] ページでは、[サーバ] ドロップダウン リストを [クラスタ] に設定することにより、クラスタ全体の統計にアクセスできます。このドロップダウン リストを個々の管理対象サーバの値に設定すると、その特定のサーバに関する統計を表示できます。
現在の集約間隔におけるクラスタ統計を表示するには、[統計の表示] を [現在の集約間隔] に設定します。クラスタの集計カウント統計を表示するには、[最後のリセット以降] を選択します。
ビジネス サービスとプロキシ サービスの統計は、ダッシュボードの [サービス ヘルス] タブまたはサービスの [サービスのモニタの詳細] ページからリセットできます。表 3-2 は、それぞれの場合の統計のリセット方法を示します。
|
|||
Oracle Service Bus Console でサービスの統計をリセットすると、最後のリセット以降にサービスに対して収集された統計がすべて失われます。このアクションは、元に戻せません。エンドポイント URI の状態は、統計をリセットしてもリセットされません。
SLA アラートは、Oracle Service Bus で発生し、サービス レベル アグリーメント (SLA) の違反の可能性を示します。アラートは以下の用途に使用できます。
パイプライン アラートは、プロキシ サービスのメッセージ フローで発生させることができます。メッセージ フローのアラートは、以下の用途に使用できます。
SLA アラートのアラート ルール、またはプロキシ サービスのメッセージ フローのアラート
アクションにアラートの重大度をコンフィグレーションできます。アラートの重大度レベルはユーザがコンフィグレーションでき、絶対的な意味を持ちません。以下のいずれかの重大度のレベルを使用して、アラートをコンフィグレーションできます。
アラートが発生すると、アラート送り先に通知されます。アラート ルールまたはアラート アクションにアラート送り先をコンフィグレーションしていない場合は、Oracle Service Bus Console に通知が送信されます。アラート送り先の詳細については、「アラート送り先とは」を参照してください。
SLA アラートは、サービス レベル アグリーメント (SLA) の違反に対する応答を自動化したものです。これらのアラートは Oracle Service Bus ダッシュボードに表示されます。サービスがサービス レベル アグリーメントまたは事前定義された条件に違反した場合に生成されます。
SLA アラートを発生させるには、サービス レベルとグローバル レベルの両方で SLA アラートを有効にする必要があります。サービスの操作設定のコンフィグレーション方法の詳細については、「サービスの操作設定のコンフィグレーション方法」を参照してください。[アラート履歴] パネルには、システムにおける違反またはイベントの発生に関する情報を表示する、カスタマイズ可能なテーブルがあります。
ビジネスおよびパフォーマンスの要件に従い、許容できないサービス パフォーマンスを指定するアラート ルールを定義する必要があります。アラート ルールをコンフィグレーションするときに、アラート ルールごとにそのルールの集約間隔を指定できます。この集約間隔は、サービスに設定された集約間隔の影響を受けません。
集約間隔の詳細については、「集約間隔」を参照してください。アラート ルールにより、コンフィグレーションされたアラート送り先に通知を送信できます。アラート ルールの定義については、『Oracle Service Bus Console の使い方』の「モニタ」にある「アラート ルールの作成と編集」を参照してください。
サービス レベル アグリーメントを検証するには、以下の使用例を考慮してください。
特定のプロキシ サービスで、応答時間の低下が原因で SLA アラートが生成されているとします。この問題を調査するには、Oracle Service Bus Console にログインし、このプロキシ サービスの詳しい統計を確認する必要があります。このレベルで、パイプラインにおけるサードパーティの Web サービス呼び出しステージに非常に時間がかかっており、これが実際のボトルネックになっていることを特定できます。
これらのアラートを SLA のネゴシエーションの基盤として使用できます。サードパーティの Web サービス プロバイダとの SLA の再ネゴシエーションに成功したら、この Web サービス プロバイダが新しいアグリーメント条件に準拠しているかどうかを追跡するアラート メトリックをコンフィグレーションする必要があります。
メッセージ フローのレポート カテゴリで使用できるアラート
アクションを定義するたびに、メッセージ フローでパイプライン アラートを生成できます。
XQuery エディタなどのパイプライン エディタで使用できる条件構文や if-then-else 構文を使用して、パイプライン アラートをトリガする条件も定義できます。Oracle Service Bus Console は、パイプライン アラートのデフォルトのアラート送り先です。アラート アクションにアラート送り先リソースをコンフィグレーションして、パイプライン アラートの追加の送り先を定義することもできます。
これにより、パイプラインを含むアラート本文とコンテキスト変数を完全に制御できるようになります。また、メッセージの一部を抽出することもできます。ステージでのアラート
アクションのコンフィグレーション方法の詳細については、『Oracle Service Bus Console の使い方』の「プロキシ サービス : アクション」にある「アラート アクションの追加」を参照してください。アラート アクションを実行すると、適切なアラート送り先にアラートが通知されます。
Oracle Service Bus Console の [ダッシュボード] ページに、サービスで生成されたすべてのパイプライン アラートをまとめて表示できます。
メッセージ フローに特殊なビジネス条件が見つかった場合に通知を受け取る必要があるとします。このような定義済み条件が見つかった場合にアラートを発生させるように、メッセージ フローのアラート アクションをコンフィグレーションできます。電子メール アラート送り先をコンフィグレーションして、電子メールによるアラート通知を受け取ることもできます。また、ペイロード形式の詳細情報を電子メール受信者に送信することもできます。
たとえば、注文を購入注文 Web サイトにルーティングするプロキシ サービスでは、金額が 1,000 万ドルを超える注文がルーティングされた場合に通知を受け取る必要があります。その場合は、この条件でパイプラインの適切な場所にアラート アクションをコンフィグレーションし、電子メール アラート送り先と電子メール情報をコンフィグレーションし、それをアラート アクションの送り先として使用します。注文の詳細情報をペイロード形式で含めることもできます。
また、パイプライン アラートを使用してメッセージ フローのエラーを検出することもできます。たとえば、入力ドキュメントを検証するプロキシ サービスでは、クライアントに連絡して問題を修正できるように、検証が失敗した場合に通知を受け取る必要があります。
その場合は、プロキシ サービスのメッセージ フローに対するエラー ハンドラ内にアラート アクションをコンフィグレーションします。このアクションでは、ペイロードとして送信するために、実際のエラー メッセージを fault 変数に、その他の詳細情報を SOAP ヘッダに含めることができます。アラート アクション内でアラート送り先リソースを使用することにより、追加のアラート送り先をコンフィグレーションすることもできます。
Oracle Service Bus Console の SLA アラートの [拡張アラート履歴] ページには、ドメインで生成されたすべての SLA アラートに関する情報が表示されます。トリガされたすべてのアラートを表示したり、テーブルから特定のアラートを検索できます。[拡張 SLA アラート履歴] ページに表示されるデータの詳細については、『Oracle Service Bus Console の使い方』の「モニタ」にある「アラートの検索」を参照してください。
[拡張アラート履歴] ページまたは [アラート詳細] ページからアラートを削除できます。[拡張 SLA アラート履歴フィルタ] ペインを使用すると、検索結果をフィルタできます。検索結果をフィルタする方法の詳細については、「SLA アラートの検索結果をフィルタする方法」を参照してください。
アラートの円グラフまたは棒グラフを表示するには、ページの [横棒グラフで表示] または [円グラフで表示] をクリックします。[パージ SLA のアラート履歴] をクリックして SLA アラートをすべて削除します。発生日時に基づいてアラートをパージすることもできます。
パイプライン アラートの [拡張アラート履歴] ページには、ドメインで生成されたすべてのパイプライン アラートに関する情報が表示されます。トリガされたすべてのアラートを表示したり、テーブルから特定のアラートを検索できます。[拡張パイプライン アラート履歴] ページに表示されるデータの詳細については、『Oracle Service Bus Console の使い方』の「モニタ」にある「アラートの検索」を参照してください。
[拡張パイプライン アラート履歴] ページまたは [アラート詳細] ページからアラートを削除できます。検索結果をフィルタする方法の詳細については、「パイプライン アラートの検索結果をフィルタする方法」を参照してください。アラートの円グラフまたは棒グラフを表示するには、ページの [横棒グラフで表示] または [円グラフで表示] リンクをクリックします。[パージ Pipeline のアラート履歴] をクリックしてパイプライン アラートをすべて削除します。発生日時に基づいてアラートをパージすることもできます。
特定のアラートの検索結果をフィルタするには、拡張アラート履歴を使用します。以下の節では、拡張アラート履歴フィルタを使用して SLA アラートとパイプライン アラートを検索する方法について説明します。
SLA アラートの検索結果をフィルタするには、[拡張 SLA アラート履歴フィルタ] ペインを使用します。表 3-3 は、SLA アラートのフィルタに使用できるさまざまな条件を示します。
パイプライン アラートの検索結果をフィルタするには、[拡張 SLA アラート履歴フィルタ] ペインを使用します。表 3-4 は、パイプライン アラートのフィルタに使用できるさまざまな条件を示します。
アラート送り先は、アラートが送信されるリソースです。Oracle Service Bus Console は、すべてのアラート通知のデフォルトのアラート送り先です。アラート送り先をコンフィグレーションしているかどうかに関わらず、アラートは Oracle Service Bus Console に通知されます。
Oracle Service Bus Console には、SLA 違反のために生成されたアラート、またはパイプラインにコンフィグレーションされているアラート アクションの結果としてのアラートが表示されます。[ダッシュボード] ページには、Oracle Service Bus 全体のヘルス情報が表示されます。サーバ ヘルス、サービス ヘルス、およびアラートで構成されるシステムの状態の概要が表示されます。
ダッシュボードの情報を解釈する方法については、「Oracle Service Bus ダッシュボード」を参照してください。
Oracle Service Bus では、アラート送り先として、電子メール、SNMP トラップ、レポート、および JMS をコンフィグレーションできます。
電子メールをアラート送り先として指定すると、Oracle Service Bus Console でアラートが発生したときにメッセージを受け取ることができます。このアラート送り先をコンフィグレーションするには、SMTP サーバ グローバル リソースを使用するか、WebLogic サーバの JavaMail セッションを使用する必要があります。デフォルト SMTP サーバ リソースのコンフィグレーションの詳細については、『Oracle Service Bus Console の使い方』の「グローバル リソース」にある「デフォルト SMTP サーバのコンフィグレーション」を参照してください。JavaMail セッションのコンフィグレーション方法の詳細については、WebLogic Server Administration Console オンライン ヘルプの「JavaMail へのアクセスのコンフィグレーション」を参照してください。
SMTP サーバ グローバル リソースは SMTP サーバのアドレス、ポート番号、および認証資格 (必要な場合) を取り込みます。この認証資格はサービス アカウントとして格納されるのではなく、インラインで格納されます。Alert Manager は、パイプライン アラートと SLA アラートの両方が発生すると、電子メール アラート送り先を使用して発信電子メール メッセージを送信します。アラートが電子メールで配信されるときに、アラートの詳細で構成されるメタデータが、コンフィグレーションされたペイロードの詳細にプレフィックスされます。
受信者の電子メール ID は、[電子メール受信者] フィールドで指定できます。電子メール アラート送り先の詳細については、『Oracle Service Bus Console の使い方』のアラート送り先」にある電子メールおよび JMS 受信者の追加の「電子メール受信者の追加」を参照してください。
簡易ネットワーク管理プロトコル (SNMP) トラップにより、サードパーティ製ソフトウェアを Oracle Service Bus でのサービス レベル アグリーメントのモニタに結びつけることができます。SNMP を使用してアラートの通知を有効にすることで、Web サービス管理 (WSM) ツールおよび ESM (Enterprise Service Management) ツールは、アラート通知をモニタして SLA 違反とパイプライン アラートをモニタできます。
SNMP は、リソースの管理に関する情報をネットワーク上で交換できるようにするアプリケーション層プロトコルです。SNMP により、リソースをモニタし、必要に応じて、リソースから取得したデータに基づいて処理を行うことができます。
Oracle Service Bus では、SNMP version 1 と SNMP version 2 の両方がサポートされています。SNMP は、以下のコンポーネントで構成されます。
詳細については、「SNMP コンポーネント」を参照してください。
レポート送り先を使用すると、Oracle Service Bus に付属するレポート API を使用して開発できるカスタム レポート プロバイダに対して、パイプライン アラートまたは SLA アラートの通知を送信できます。これにより、カスタム Java コードを使用して、サードパーティがアラートを受信および処理できます。
Java Messaging Service (JMS) は、パイプライン アラートおよび SLA アラートのもう 1 つの送り先です。アラートの JMS 送り先には JNDI URL をコンフィグレーションする必要があります。アラート ルールをコンフィグレーションして JMS 送り先にメッセージをポストする場合、JMS 接続ファクトリおよびキューまたはトピックを作成し、WebLogic Server Administration Console の該当する JMS サーバを対象に設定する必要があります。
この方法については、『Weblogic JMS のコンフィグレーションと管理』の「基本 JMS システム リソースのコンフィグレーション」にある JMS 接続ファクトリのコンフィグレーションおよびドメインの相互運用性を実現するための JMS リソースの命名規則を参照してください。JMS アラート送り先を定義するときは、送り先キューまたは送り先トピックを使用できます。メッセージのタイプは、バイトまたはテキストのいずれかです。JMS アラート送り先のコンフィグレーション方法の詳細については、『Oracle Service Bus Console の使い方』の「アラート送り先」にある電子メールおよび JMS 受信者の追加の「JMS 受信者の追加」を参照してください。
操作設定により、Oracle Service Bus Console でサービスの状態を制御できるようになります。表 3-5 は、Oracle Service Bus Console に用意されているサービスの操作設定を示します。
サービス レベルの操作設定は、グローバル設定によってオーバーライドされます。操作設定をグローバルにコンフィグレーションする方法の詳細については、「グローバル レベルの操作設定のコンフィグレーション方法」を参照してください。
個々のサービスの操作設定は、[プロキシ サービスの表示] ページ (図 3-3 を参照) または [ビジネス サービスの表示] ページ (図 3-4 を参照) で [操作設定] ビューから有効または無効にできます。詳細については、『Oracle Service Bus Console の使い方』の「ビジネス サービス : 作成と管理」にある「ビジネス サービスの作成とコンフィグレーション」、および「プロキシ サービス : 作成と管理」にある「プロキシ サービスの作成とコンフィグレーション」を参照してください。
サービス状態、モニタ、SLA アラート、パイプライン アラートなどの操作設定は、パブリック API を使用して有効または無効にできます。詳細については、Oracle Service Bus の Javadoc を参照してください。
以下の操作設定は、プロキシ サービスとビジネス サービスに使用できます。
ビジネス サービスの各操作設定の使用法の詳細については、『Oracle Service Bus Console の使い方』の「モニタ」にある「ビジネス サービスの操作設定のコンフィグレーション」を参照してください。プロキシ サービスの各操作設定の使用法の詳細については、『Oracle Service Bus Console の使い方』の「モニタ」にある「プロキシ サービスの操作設定のコンフィグレーション」を参照してください。
[グローバル設定] ページには [操作] モジュールからアクセスできます。[グローバル設定] ページ (図 3-5 を参照) を使用すると、サービスの操作設定をコンフィグレーションできます。表 3-6 は、グローバル レベルの操作設定の使用法を示します。
詳細については 『Oracle Service Bus Console の使い方』の「コンフィグレーション」にある「グローバル設定の有効化」を参照してください。
注意 : |
コンフィグレーション jar からコンフィグレーションをインポートすることによってサービスが上書きされると、このサービスの操作設定も上書きされる可能性があります。インポート時に操作設定を保持するには、サービスのインポート時の操作設定の保持フラグを true に設定する必要があります。詳細については、「Oracle Service Bus コンフィグレーションのインポート時のアラート ルールの処理」を参照してください。
Oracle Service Bus コンフィグレーションをインポートする場合、インポートするコンフィグレーション jar にインポート元ドメインのグローバル設定が含まれると、ドメイン レベルの設定が上書きされる可能性があります。これを防ぐには、サービスのインポート時の操作設定の保持フラグを true に設定します。
API を使用した Oracle Service Bus コンフィグレーションのインポート時に操作設定を保持できます。詳細については、「インタフェース Oracle Service BusConfigurationMBean」の新しい API を使用したコンフィグレーションのインポートおよびエクスポートを参照してください。インポート時に操作設定を保持するには、コード リスト 3-1 のように MBean を変更します。
/**
// コンフィグレーション jar ファイルのインポート、カスタマイズの適用とアクティブ化、およびリソースの再エクスポートを実行します
// @throws Exception
/
static private void simpleImportExport(String importFileName, String passphrase) throws Exception {
SessionManagementMBean sm = ... // セッションを作成するために mbean を取得します;
// コンフィグレーション jar ファイルを構成する未処理バイトを取得します
File importFile = new File(importFileName);
byte[] bytes = readBytes(importFile);
// セッションを作成します
String sessionName = "session." + System.currentTimeMillis();
sm.createSession(sessionName);
// 作成されたセッションで動作する ALSBConfigurationMBean
// を取得します
ALSBConfigurationMBean alsbSession = getConfigMBean(sessionName);
// コンフィグレーションをセッションにインポートします。まず、コンフィグレーションを一時的にステージングする
// jar ファイルをアップロードします
alsbSession.uploadJarFile(bytes);
// 次に、デフォルト インポート プランを取得し、必要に応じてプランを修正します
ALSBJarInfo jarInfo = getImportJarInf();
ALSBImportPlan importPlan = jarInfo.getDefaultImportPlan();
// 操作値を保持します
importPlan. setPreserveExistingOperationalValues(true);
// 必要に応じてプランを修正し、importUploaeded メソッドに渡します
ImportResult result = alsbSession.importUploaded(importPlan);
// デフォルト インポート プランを意味する null を importUploaded メソッドに渡します
//ImportResult result = alsbSession.importUploaded(null);
// 状態を出力します
if (result.getImported().size() > 0) {
System.out.println("The following resources have been successfully imported.");
for (Ref ref : result.getImported()) {
System.out.println("\t" + ref);
}
}
if (result.getFailed().size() > 0) {
System.out.println("The following resources have failed to be imported.");
for (Map.Entry e : result.getFailed().entrySet()) {
Ref ref = e.getKey();
// このリソースのインポートの失敗を発生させた検証エラー
// を含む診断オブジェクト
Diagnostics d = e.getValue();
System.out.println("\t" + ref + ". reason: " + d);
}
// セッションに対する変更を破棄して終了します
System.out.println("Discarding the session.");
sm.discardSession(sessionName);
System.exit(1);
}
// 環境値の割り当て/置換と
// 参照の変更を行うカスタマイズを実行します
...
// セッションをアクティブ化します
sm.activateSession(sessionName, "description");
// コア データから情報をエクスポートします
ALSBConfigurationMBean alsbcore = getConfigMBean(null);
// プロジェクト レベルの情報をエクスポートし、このメソッドへのプロジェクト参照のコレクションだけを渡します
byte[] contentsProj = alsbcore.exportProjects(Collections.singleton(Ref.DEFAULT_PROJECT_REF),null);
// バイトの内容は jar ファイルとして保存できます
}
Oracle Service Bus では、発生するアラートに基づいて条件を定義する必要があります。この条件は、SLA アラート ルール内でコンフィグレーションします。アラート ルールでは、アラートの重大度とアラート送り先もコンフィグレーションします。
SLA アラートは SLA 違反に対する応答を自動化したもので、ダッシュボードに表示されます。ビジネスおよびパフォーマンスの要件に従い、許容できないサービス パフォーマンスを指定するアラート ルールを定義する必要があります。アラート ルールをコンフィグレーションするときに、集約間隔を指定する必要があります。アラートの集約間隔は、サービスに設定された集約間隔の影響を受けません。集約間隔の詳細については、「集約間隔」を参照してください。
注意 : | サービスのモニタを有効にしていない場合でも、アラート ルールを作成できます。 |
アラート ルールの作成の詳細については、『Oracle Service Bus Console の使い方』の「モニタ」にある「アラート ルールの作成と編集」を参照してください。
モニタが有効になっているサービスでは、アラート ルールは個々の間隔で評価されます。作成したアラート ルールは、まず集約間隔の最後に評価され、その後は各サンプル間隔の最後に評価されます。たとえば、集約間隔が 5分である場合、そのアラート ルールは作成してから 5 分後に評価され、その後は 1 分ごとに評価されます (5 分に対するサンプル間隔は 1 分であるため)。
ルールが false と評価された場合は、アラートは生成されません。ルールが true と評価された場合は、アラートの生成は [アラート間隔] の頻度によって制御されます。頻度が [毎回] である場合は、アラート ルールが true と評価されるたびにアラートが生成されます。頻度が [1 回通知] である場合は、前回の評価でアラートが生成されなかったときのみアラートが生成されます
。つまり、アラートはアラート ルールが最初に true と評価されたときに生成され、条件がリセットされ、再び True と評価されるまで、通知は生成されません。
[アラート ルールの詳細の表示] ページには、図 3-6 に示すように、特定のアラート ルールに関する詳細情報が表示されます。このページにアラート ルールの詳細を表示できます。このページでアラート ルールのコンフィグレーションを編集できます。アラート ルールの編集方法の詳細については、『Oracle Service Bus Console の使い方』の「モニタ」にある「アラート ルールの作成と編集」を参照してください。
アラート ルールの名前は、ビジネス サービスの表示] ページまたは [プロキシ サービスの表示] ページの [SLA アラート ルール] タブから変更できます。アラート ルールの名前を変更するには、[アラート ルールの名前変更] アイコンをクリックします。[アラート ルールの名前変更] ウィンドウの [新しいアラート ルール名] フィールドにアラート ルールの新しい名前を入力します。[名前変更] をクリックします。[更新] をクリックし、セッションをアクティブ化して完了します。詳細については、『Oracle Service Bus Console の使い方』の「モニタ」にある「アラート ルールの表示」を参照してください。これで、名前を変更したアラートの [名前変更] アイコンが無効になりました。
トリガされたアラートは、[アラート履歴] ページに一覧表示されます。[アラート ルール詳細の表示] アクション アイコンをクリックすると、[アラート ルール] ページが表示されます。しかし、アラート ルールの名前を変更すると、名前を変更する前に発生したアラートについては、[アラート履歴] ページから [アラート ルール詳細の表示] アクションをクリックしてアラート ルールにアクセスできなくなります。
[アラート履歴] ページからは、アラート ルールの名前を変更する前と後に発生したアラートの [アラート詳細] ページにアクセスできます。[アラート詳細] ページでは、アラート ルールの名前を変更する前に発生したアラートのアラート名はグレー表示されます。名前を変更すると、名前が変更されたアラートの [アラート詳細] アイコンは無効になります。
同様の制限は、[アラート詳細] ページの [アラート名] リンクをクリックして [アラート ルール] ページへのアクセスを試行する場合にも存在します。後で名前変更したアラート ルールによって生成されたアラート名は、古い名前を参照します。古いアラート名は表示されますが、アラート ルールの名前が変更されたことを示すためにグレー表示されます。
アラート ルールの名前を変更する場合、ルールが基づいている条件は保持されます。アラート ルールの集約間隔も保持されます。アラートは、アラート ルールの名前変更後の最初の集約間隔の最後に発生します。たとえば、集約間隔が 5 分のアラート ルール a1 を考えてみます。2 分間の実行後にアラート ルールの名前を a2 に変更すると、名前 a2 での次のアラートは、名前変更の 3 分後に発生します。
Oracle Service Bus コンフィグレーションのインポート時に、アラート ルール コンフィグレーションを保持できます。Oracle Service Bus コンフィグレーションのインポート時には、操作設定が保持されます。アラート ルールを使用するサービスがインポートする jar には存在するが、インポート先のドメインには存在しない場合、そのサービスは、アラート ルールと共にそのままインポートされます。
ただし、同じサービスがインポート先のドメインにも存在する場合、インポート動作は、インポート操作時の操作設定の保持の状態によって制御されます。操作設定の保持方法の詳細については、「Oracle Service Bus コンフィグレーションのインポート時の操作設定の更新」を参照してください。
Oracle Service Bus ダッシュボードには、サービス ヘルス、サーバ ヘルス、および Oracle ServiceBus ランタイム内でトリガされたすべてのアラートの詳細が表示されます。この表示の動的な更新は、[ユーザ設定] ページの [ダッシュボード更新間隔] 設定で制御します。この設定のデフォルト オプションは、[更新なし] です。これらのアラートは、SLA 違反の結果またはパイプライン アラートです。
サービス レベル アグリーメント (SLA) は、Oracle Service Bus 内のビジネス サービスやプロキシ サービスで予期される正確なサービス レベルを定義します。パイプライン アラートは、メッセージ パイプラインを通過するメッセージの数を記録するなど、特定のビジネス イベントの発生の追跡や (システムのヘルスではなく) エラーの報告のために、ビジネス目的のメッセージ フローに定義されます。
テーブルの各行には、重大度、タイムスタンプ、関連サービスなど、コンフィグレーションした情報が表示されます。[アラート名] リンクをクリックすると、SLA アラートに関する詳細を表示する [アラート詳細] ページが表示されます。これは、SLA アラートの原因を分析する際に役立ちます。[アラート概要] リンクをクリックすると、パイプライン アラートに関する詳細を表示する [アラート詳細] ページが表示されます。これは、SLA アラートの原因を分析する際に役立ちます。
ダッシュボードから、サービスの平均実行時間、アラートの発生日時、サーバの実行時間など、システム固有の詳細な情報を容易に取得できます。
以下の節は、Oracle Service Bus ダッシュボードに表示される情報を理解するうえで役立ちます。
[サービス ヘルス] タブをクリックして、[サービス ヘルス] ページに移動します。図 3-8 に示すような [サービス ヘルス] ページが表示されます。
これは、各サービスで収集された統計データの動的ビューです。このビューは、[統計の表示] フィールドで [現在の集約間隔] を選択すると表示されます。このビューに表示される集約間隔によって、表示される統計が決まります。たとえば、特定のサービスの集約間隔が 20 分である場合、そのサービスの行には最後の 20 分間に収集されたデータが表示されます。
このページから、すべてのサービスを表示したり、特定の条件に基づいてサービスを検索できます。このページの [現在の集約間隔] ビューに表示される統計の詳細については、『Oracle Service Bus Console の使い方』の「モニタ」にある「サービスのメトリックの表示」を参照してください。
[サービスのモニタの詳細] ページには、特定のサービスに関する詳細情報の 2 つのビューが表示されます。図 3-9 は、現在の集約間隔に対するビジネス サービスの [サービスのモニタの詳細] ページを示します。図 3-10 は、プロキシ サービスの [サービスのモニタの詳細] ページを示します。
このページを表示するには、SLA アラートまたはパイプライン アラートの [最も多くのアラートを発生するサービス] セクション、[アラート履歴] テーブル、または [拡張アラート履歴] テーブルでサービスの名前をクリックします。[サービス ヘルス] タブに表示されたサービスの名前は、[サービスのモニタの詳細] ページへのリンクでもあります。
これは、各サービスで収集された統計データの動的ビューです。このビューは、[統計の表示] フィールドで [現在の集約間隔] を選択すると表示されます。このビューに表示される集約間隔によって、表示される統計が決まります。たとえば、特定のサービスの集約間隔が 20 分である場合、このページには、直前 20 分間に収集されたそのサービスのデータが表示されます。
ビジネス サービスで使用できるさまざまなタブの詳細については、「サービスのメトリック」、「操作」、および「エンドポイント URI」を参照してください。プロキシ サービスで使用できるさまざまなタブの詳細については、「サービスのメトリック」、「パイプラインのメトリック」、「アクションのメトリック」、および「操作」を参照してください。
このページの [現在の集約間隔] ビューに表示される統計の詳細については、『Oracle Service Bus Console の使い方』の「モニタ」にある「サービスのメトリックの表示」を参照してください。
サービスの集計カウント統計は、最後のリセット以降の統計です。
このビューは、サービス ヘルスのメトリックの集計カウントです。このビューは、[統計の表示] フィールドで [最後のリセット以降] を選択すると表示されます。各行に表示される統計は、個々のサービスの統計を最後にリセットした時点、またはすべてのサービスの統計を最後にリセットした時点以降の統計です。
選択したサービスまたはすべてのサービスについて統計をリセットすることもできます。このページの [最後のリセット以降] ビューに表示される統計の詳細については、『Oracle Service Bus Console の使い方』の「モニタ」にある「サービスのメトリックの表示」を参照してください。
このビューは、サービス モニタのメトリックの集計カウントです。このビューは、[統計の表示] フィールドで [最後のリセット以降] を選択すると表示されます。各行に表示される統計は、個々のサービスの統計を最後にリセットした時点、またはすべてのサービスの統計を最後にリセットした時点以降の統計です。
このページから、すべてのサービスを表示したり、特定の条件に基づいてサービスを検索できます。このサービスの統計をリセットすることもできます。このページの [最後のリセット以降] ビューに表示される統計の詳細については、『Oracle Service Bus Console の使い方』の「モニタ」にある「サービスのメトリックの表示」を参照してください。
[サービスのモニタの詳細] ページの各ビューには、次のタブがあります。
[サービスのメトリック] (図 3-14 を参照) ビューには、プロキシ サービスまたはビジネス サービスのメトリックが表示されます。
[サービスのメトリック] タブには、以下の種類のメトリックが表示されます。
操作のメトリックは、操作を定義している WSDL ベースのサービスについて表示されます。[操作] タブ (「図 3-15 を参照) には、WSDL ベースのサービスに定義した操作の統計が表示されます。このタブに表示される統計の詳細については、『Oracle Service Bus Console の使い方』の「モニタ」にある「WSDL ベースのサービスの操作のメトリックの表示」を参照してください。
このビュー (図 3-16 を参照) には、サービスのパイプラインのさまざまなコンポーネントに関する情報が表示されます。[パイプラインのメトリック] タブは、プロキシ サービスの場合にのみ表示されます。このタブに表示される統計の詳細については、『Oracle Service Bus Console の使い方』の「モニタ」にある「パイプラインのメトリックの表示」を参照してください。
このビュー (図 3-17 を参照) には、サービスのパイプラインのアクションに関する情報がノードやアクションの階層として表示されます。たとえば、図 3-17 は、ルート ノード (Route to Normal Loan Processing Service) にネストされたルーティング テーブル アクションを示します。
同様に、ルーティング テーブル アクションのさまざまなブランチにネストされたアクションも表示されます。表にはブランチを表すエントリ (この例では [ケース] や [デフォルト ケース] というラベルの付いた列) も含まれます。
[アクションのメトリック] タブは、プロキシ サービスの場合にのみ表示されます。このタブに表示される統計の詳細については、『Oracle Service Bus Console の使い方』の「モニタ」にある「アクションのメトリックの表示」を参照してください。
ビジネス サービスの [サービスのモニタ] ページにある [エンドポイント URI] タブには、ビジネス サービスおよびその状態用にコンフィグレーションされたさまざまなエンドポイント URI の統計が表示されます。このビューに表示される統計の詳細については、『Oracle Service Bus Console の使い方』の「モニタ」にある「ビジネス サービスのエンドポイント URI のメトリックの表示」を参照してください。
SLA アラートの詳細は、ダッシュボードの [SLA アラート] タブに表示されます。表 3-7 は、SLA アラートのダッシュボードの説明です。
[SLA アラート] テーブルの [アラート履歴] (図 3-7 を参照) には、[ユーザ設定] ページで設定したアラート履歴の期間に発生したすべての SLA アラートが表示されます。[アラート履歴] テーブルの詳細については、『Oracle Service Bus Console の使い方』の「モニタ」にある「SLA アラートの表示」を参照してください。
アラートのリストを表示するには、[拡張アラート履歴] をクリックします。[拡張アラート履歴] の詳細については、「SLA アラートを表示または削除する方法」を参照してください。
パイプライン アラートは、ダッシュボードの [パイプライン アラート] タブに表示されます (図 3-19 を参照)。表 3-8 は、パイプライン アラートのダッシュボードの説明です。
[パイプライン アラート] テーブルの [アラート履歴] (図 3-7 を参照) には、[ユーザ設定] ページで設定したアラート履歴の期間に発生したすべてのパイプライン アラートが表示されます。[アラート履歴] テーブルの詳細については、『Oracle Service Bus Console の使い方』の「モニタ」にある「パイプライン アラートの表示」を参照してください。
アラートのリストを表示するには、[拡張アラート履歴] をクリックします。[拡張アラート履歴] の詳細については、「パイプライン アラートを表示または削除する方法」を参照してください。
サーバ概要は、ダッシュボードの [サーバ ヘルス] タブに表示されます。
[サーバ ヘルス] タブの [ログ概要] セクションには、ドメインに関連付けられているサーバの概要ログが表示されます。ドメイン ログ ファイルは、ドメイン全体のステータスを確認するための中心となるファイルです。各サーバ インスタンスでは、メッセージのサブセットをドメイン全体のログ ファイルに転送します。
デフォルトでは、重大度が注意
以上のメッセージのみが転送されます。転送されるメッセージの集合を変更できます。詳細については、『ログ ファイルのコンフィグレーションとログ メッセージのフィルタ』の「WebLogic ロギング サービスについて」を参照してください。
パイプラインにロギング アクションをコンフィグレーションした場合、ログは管理サーバ ログに転送されます。ロギング メッセージは、Oracle Service Bus Console の [サーバ ヘルス] タブに表示されます。クラスタでは、管理対象サーバに転送されます。ロギング メッセージは、Oracle Service Bus Console には表示されません。
これらのメッセージをドメイン ログに転送するよう WebLogic Server をコンフィグレーションしていない限り、Oracle Service Bus Console からこのログは表示できません。この方法については、WebLogic Server Administration Console オンライン ヘルプの「ログ フィルタの作成」を参照してください。
システムで現在発生しているメッセージの数を調べるには、[サーバ概要] パネルの [ログ概要の表示] リンクをクリックします。図 3-20 に示すように、重大度別に分類されたメッセージ数を示すテーブルが表示されます。
ログ概要は、WebLogic Server Console で管理者権限を持っている場合にのみ表示できます。
表 3-9 は、ログ概要のステータス メッセージを示します。
これは、WebLogic 診断サービスでの定義に従い、実行中のサーバのヘルス状態に基づいて表示されます。WebLogic 診断サービスの詳細については、『WebLogic 診断フレームワークのコンフィグレーションと使い方』を参照してください。
アラート メッセージの特定のステータスのドメイン ログを表示するには、アラート メッセージのステータスに対応する数字をクリックします。図 3-21 に、Oracle Service Bus Console に表示されたドメイン ログ ファイルの一例を示します。
ドメイン ログ ファイルの詳細については、『Oracle Service Bus Console の使い方』の「モニタ」にある「ドメイン ログ ファイルの表示」を参照してください。詳細については、『ログ ファイルのコンフィグレーションとログ メッセージのフィルタ』の「WebLogic ロギング サービスについて」にある「メッセージの属性」参照してください。ページにある 1 つのログ ファイルの詳細を表示するには、該当するログを選択し、[表示] をクリックします。[ドメイン ログ ファイル エントリ] テーブルをカスタマイズして、次の情報を表示することもできます。
これらの情報の詳細については、『Oracle Service Bus Console の使い方』の「モニタ」にある「サーバ ログ ファイルの詳細の表示」を参照してください。[ドメイン ログ ファイル エントリ] テーブルのカスタマイズ方法の詳細については、『Oracle Service Bus Console の使い方』の「モニタ」にある「ドメイン ログ ファイル エントリの表示のカスタマイズ」を参照してください。
サーバ概要は、ダッシュボードの [サーバ ヘルス] タブに表示されます。単一ノードのドメインでは、[サーバ概要] に管理サーバの概要が表示されます。クラスタ ドメインでは、クラスタ内のすべてのサーバのヘルス情報が表示されます (クラスタ環境の場合)。サーバ概要の詳細については、『Oracle Service Bus Console の使い方』の「モニタ」にある「サーバ情報の表示」を参照してください。
このページにアクセスするには、[サーバ概要] の下のサーバ名をクリックするか、[サーバ概要] ページでサーバ名をクリックします。
このページを使用すると、図 3-22 に示すようなサーバ モニタの詳細を表示できます。
このページに表示される情報は、Oracle Service Bus Console のサーバの設定ページの [モニタ] タブのサブセットです。表 3-10 は、表示される情報を示します。
詳細については、「WebLogic Server Administration Console オンライン ヘルプ」を参照してください。
![]() ![]() ![]() |